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.