ST_3DDFullyWithin — Prüft, ob zwei 3D-Geometrien vollständig innerhalb eines bestimmten 3D-Abstands liegen
boolean ST_3DDFullyWithin(geometry g1, geometry g2, double precision distance);
Gibt true zurück, wenn die 3D-Geometrien vollständig innerhalb des angegebenen Abstands zueinander liegen. Der Abstand wird in Einheiten angegeben, die durch das räumliche Bezugssystem der Geometrien definiert sind. Damit diese Funktion sinnvoll ist, müssen die Ausgangsgeometrien beide der gleichen Koordinatenprojektion angehören und den gleichen SRID haben.
|
|
|
Diese Funktion beinhaltet automatisch einen Bounding-Box-Vergleich, der alle räumlichen Indizes verwendet, die für die Geometrien verfügbar sind. |
Verfügbarkeit: 2.0.0
Diese Funktion unterstützt 3d und lässt den Z-Index nicht fallen.
Diese Funktion unterstützt polyedrische Flächen.
This example compares distance-within predicates in 2D and 3D. The point is distance-within the line in 3D, but the full 3D line is not within the same distance of the point.
WITH data AS (
SELECT
'POINT(1 1 2)'::geometry AS geom_a,
'LINESTRING(1 5 2,2 7 20,1 9 100,14 12 3)'::geometry AS geom_b
)
SELECT
ST_3DDFullyWithin(geom_a, geom_b, 10) AS d3dfullywithin10,
ST_3DDWithin(geom_a, geom_b, 10) AS d3dwithin10,
ST_DFullyWithin(geom_a, geom_b, 20) AS d2dfullywithin20,
ST_3DDFullyWithin(geom_a, geom_b, 20) AS d3dfullywithin20
FROM data;
d3dfullywithin10 | d3dwithin10 | d2dfullywithin20 | d3dfullywithin20 ------------------+-------------+------------------+------------------ f | t | t | f