Guide d'utilisation et de référence

ST_Crosses

ST_Crosses utilise deux objets de type géométrie en entrée et renvoie la valeur 1 (TRUE) si leur intersection génère une géométrie dont la dimension est inférieure d'une unité à la dimension maximale des objets source. L'objet intersection contient des points qui figurent à l'intérieur des deux géométries source et il n'est égal à aucun de ces deux objets. Dans le cas contraire, il renvoie la valeur 0 (FALSE).

Syntaxe

db2gse.ST_Crosses(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)

Type de retour

Integer

Exemples

Le gouvernement du comté étudie une nouvelle loi stipulant qu'aucune installation de stockage de produits dangereux du comté ne doit se trouver à moins de 8 km de tout cours d'eau. Le gestionnaire SIG du comté dispose d'une représentation précise des cours d'eau (rivières et ruisseaux) qui sont enregistrés sous forme de multilignes dans la table WATERWAYS. Toutefois, la position de chaque installation de stockage des produits dangereux n'est indiquée que par un seul point.

CREATE TABLE WATERWAYS (id        integer,
                        name      varchar(128),
                        water      db2gse.ST_MultiLineString);
 
CREATE TABLE HAZARDOUS_SITES (site_id   integer,
                               name      varchar(128),
                               location  db2gse.ST_Point);

Pour déterminer s'il convient de signaler les installations contrevenant au projet de loi à l'administrateur du comté, le gestionnaire SIG devrait entourer les emplacements des sites à risque par une zone tampon et constater si des rivières et des ruisseaux traversent le polygone tampon. Le prédicat ST_Crosses compare les sites à risque contenus dans la table HAZARDOUS_SITES et entourés par une zone tampon avec la table WATERWAYS. Ainsi, le prédicat ne renvoie que les enregistrements dans lesquels le cours d'eau coupe le rayon indiqué par le projet de loi.

SELECT ww.name "River or stream", hs.name "Hazardous site"
FROM WATERWAYS ww, HAZARDOUS_SITES hs
WHERE db2gse.ST_Crosses(db2gse.ST_Buffer(hs.location,(5 *
5280)),ww.water) = 1;

Sur la Figure 31, le tampon d'un rayon de 8 km créé autour des sites de déchets dangereux coupe le réseau de ruisseaux parcourant la division administrative du comté. Ce réseau de ruisseaux a été défini en tant que multiligne. Par conséquent, l'ensemble de résultats comprend tous les segments de ligne appartenant aux segments qui coupent le rayon.

Figure 31. Utilisation du prédicat ST_Crosses pour identifier les cours d'eau qui traversent un zone de déchets dangereux

top


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]