ST_DFullyWithin — Teste si une géométrie se trouve entièrement à une distance d'une autre géométrie
boolean ST_DFullyWithin(geometry g1, geometry g2, double precision distance);
Retourne vrai si g2 se trouve entièrement à une distance distance de g1. Visuellement, la condition est vraie si g2 est contenu dans un tampon de distance de g1. La distance est spécifiée en unités définies par le système de référence spatial des géométries.
|
|
|
Cette fonction inclut une comparaison de la boîte englobante qui utilise tous les index disponibles sur les géométries. |
Disponibilité : 1.5.0
Modifié : 3.5.0 : la logique implémentée utilise désormais un test de confinement dans un tampon, plutôt que l'algorithme ST_MaxDistance. Les résultats seront différents de ceux des versions précédentes, mais devraient être plus proches des attentes de l'utilisateur.
SELECT
ST_DFullyWithin(geom_a, geom_b, 10) AS DFullyWithin10,
ST_DWithin(geom_a, geom_b, 10) AS DWithin10,
ST_DFullyWithin(geom_a, geom_b, 20) AS DFullyWithin20
FROM (VALUES
('POINT(1 1)', 'LINESTRING(1 5, 2 7, 1 9, 14 12)')
) AS v(geom_a, geom_b)
dfullywithin10 | dwithin10 | dfullywithin20
----------------+-----------+----------------
f | t | t