Name

ST_3DDFullyWithin — Prüft, ob zwei 3D-Geometrien vollständig innerhalb eines bestimmten 3D-Abstands liegen

Übersicht

boolean ST_3DDFullyWithin(geometry g1, geometry g2, double precision distance);

Beschreibung

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.

[Anmerkung]

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.

Beispiele

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.

Code
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;
Ausgabe von Rastern
d3dfullywithin10 | d3dwithin10 | d2dfullywithin20 | d3dfullywithin20
------------------+-------------+------------------+------------------
 f                | t           | t                | f 
Figure
Geometry figure for visual-st-3ddfullywithin-01