ST_Intersects — Prüft, ob sich zwei Geometrien schneiden (sie haben mindestens einen Punkt gemeinsam)
boolean ST_Intersects(
geometry geomA , geometry geomB )
;
boolean ST_Intersects(
geography geogA , geography geogB )
;
Gibt true
zurück, wenn sich zwei Geometrien überschneiden. Geometrien überschneiden sich, wenn sie einen Punkt gemeinsam haben.
Für die Geografie wird eine Entfernungstoleranz von 0,00001 Metern verwendet (d. h. Punkte, die sehr nahe beieinander liegen, werden als sich überschneidend betrachtet).
Mathematisch ausgedrückt: ST_Intersects(A, B) ⇔ A ⋂ B ≠ ∅
Geometrien überschneiden sich, wenn ihre DE-9IM Schnittpunktmatrix mit einer der folgenden übereinstimmt:
T********
*T*******
***T*****
****T****
Eine räumliche Überschneidung wird von allen anderen Tests für räumliche Beziehungen impliziert, mit Ausnahme von ST_Disjoint, das prüft, dass sich Geometrien NICHT überschneiden.
Diese Funktion beinhaltet automatisch einen Bounding-Box-Vergleich, der alle räumlichen Indizes verwendet, die für die Geometrien verfügbar sind. |
Geändert: 3.0.0 SFCGAL Version entfernt und native Unterstützung für 2D TINS hinzugefügt.
Verbessert: 2.5.0 Unterstützt GEOMETRYCOLLECTION.
Verbessert: 2.3.0 Verbesserung des PIP-Kurzschlusses erweitert um die Unterstützung von MultiPoints mit wenigen Punkten. Frühere Versionen unterstützten nur Punkte in Polygonen.
Wird vom GEOS-Modul (für Geometrie) durchgeführt, Geographie ist nativ
Verfügbarkeit: Mit Version 1.5 wurde die Unterstützung für Geografie eingeführt.
Für die Geografie hat diese Funktion eine Entfernungstoleranz von etwa 0,00001 Metern und verwendet die Kugel- statt der Sphäroidberechnung. |
HINWEIS: Dies ist die "zulässige" Version, die einen booleschen Wert und keine ganze Zahl zurückgibt. |
Diese Methode implementiert die OGC Simple Features Implementation Specification for SQL 1.1. s2.1.1.2 //s2.1.13.3 - ST_Intersects(g1, g2 ) --> Not (ST_Disjoint(g1, g2 ))
Diese Methode setzt die SQL/MM-Spezifikation um. SQL-MM 3: 5.1.27
Diese Methode unterstützt kreisförmige Strings und Kurven.
Diese Funktion unterstützt Dreiecke und dreieckige unregelmäßige Netzoberflächen (TIN).
SELECT ST_Intersects('POINT(0 0)'::geometry, 'LINESTRING ( 2 0, 0 2 )'::geometry); st_intersects --------------- f (1 row) SELECT ST_Intersects('POINT(0 0)'::geometry, 'LINESTRING ( 0 0, 0 2 )'::geometry); st_intersects --------------- t (1 row) -- Look up in table. Make sure table has a GiST index on geometry column for faster lookup. SELECT id, name FROM cities WHERE ST_Intersects(geom, 'SRID=4326;POLYGON((28 53,27.707 52.293,27 52,26.293 52.293,26 53,26.293 53.707,27 54,27.707 53.707,28 53))'); id | name ----+------- 2 | Minsk (1 row)
SELECT ST_Intersects( 'SRID=4326;LINESTRING(-43.23456 72.4567,-43.23456 72.4568)'::geography, 'SRID=4326;POINT(-43.23456 72.4567772)'::geography ); st_intersects --------------- t