ST_TOUCHES |
Touches |
| BigQuery |
Syntaxe
|
ST_TOUCHES(geography_1, geography_2)
|
Paramètres
| Nom |
Description |
| geography_1 |
Ce paramètre permet de spécifier la première expression de type GEOGRAPHY à comparer. |
| geography_2 |
Ce paramètre permet de spécifier la deuxième expression de type GEOGRAPHY à comparer. La fonction renvoie TRUE si les deux géométries se touchent à leurs limites, mais n'ont pas d'intérieurs qui se chevauchent. En d'autres termes, leurs frontières s'intersectent, mais l'intérieur de l'une ne contient aucun point de l'intérieur de l'autre. Elle renvoie FALSE sinon (par exemple, si elles se chevauchent ou sont disjointes). |
Description
Cette fonction permet de vérifier si 2 coordonnées géographique s'entrecroisent ou que l'intérieur des 2 coordonnées géographiques sont disjoints.
Remarques
- Détecte le contact des géométries uniquement sur leurs frontières : La fonction ST_TOUCHES permet de vérifier si deux objets géographiques se touchent
strictement par leurs limites, sans que leurs surfaces intérieures ne se chevauchent. Cela signifie qu'ils ont au moins un point en commun sur leur bordure, mais pas
à l'intérieur.
- Différence essentielle avec ST_INTERSECTS ou ST_OVERLAPS : Contrairement à ST_INTERSECTS qui détecte tout type d'intersection, y compris à l'intérieur, ou
à ST_OVERLAPS qui détecte un chevauchement, ST_TOUCHES est plus restrictive car elle exclut tout chevauchement intérieur et ne valide que le contact au bord.
- Utile pour analyser les relations spatiales topologiques : Cette fonction est particulièrement employée pour analyser des relations spatiales précises
comme les frontières communes entre zones administratives, les segments adjacents sur une carte routière, ou les limites de parcelles agricoles.
- Fonction sensible à la précision des données : La qualité des résultats dépend fortement de la précision des coordonnées. De légères erreurs ou
imprécisions dans les sommets peuvent empêcher la détection correcte d'un contact en bordure, donnant ainsi un résultat FALSE même si les zones devraient toucher.
- Ne détecte pas les géométries complètement disjointes : Si deux géométries ne se touchent pas du tout - ni par les frontières ni par les intérieurs - la
fonction renverra FALSE. Elle ne distingue donc pas entre absence totale de contact et chevauchement.
- Peut s'appliquer à divers types géométriques : Elle fonctionne avec des points, lignes, polygones, ou collections, dès lors que leurs frontières sont
définies. Par exemple, deux polygones adjacents qui partagent une frontière commune retourneront TRUE.
- Utilisable pour valider des données géographiques : On peut employer ST_TOUCHES pour vérifier la cohérence topologique dans un ensemble de données,
s'assurer que des zones censées être contiguës se touchent bien sans chevauchement ou pour détecter les espaces vides entre entités.
- Complément naturel aux fonctions d'inclusion spatiale : ST_TOUCHES complète des fonctions comme ST_CONTAINS ou ST_COVERS en permettant d'étudier non
pas l'inclusion ou le chevauchement, mais simplement le contact ponctuel ou linéaire entre objets spatiaux.
Dernière mise à jour : Jeudi, le 18 Juin 2020