Freigeben über


STIntersection (geometry-Datentyp)

Gibt ein Objekt zurück, das die Punkte darstellt, an denen eine geometry-Instanz eine andere geometry-Instanz überschneidet.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version), Windows Azure SQL-Datenbank (Ursprüngliche Version bis aktuelle Version).

Syntax

.STIntersection ( other_geometry )

Argumente

  • other_geometry
    Eine andere geometry-Instanz für den Vergleich mit der Instanz, in der STIntersection() aufgerufen wird, um zu bestimmen, wo sich die beiden Instanzen überschneiden.

Rückgabetypen

SQL Server Rückgabetyp: geometry

CLR-Rückgabetyp: SqlGeometry

Hinweise

STIntersection() gibt immer NULL zurück, wenn die SRIDs (Spatial Reference IDs) der geometry-Instanzen nicht übereinstimmen. Im Ergebnis können nur dann Kreisbogensegmente enthalten sein, wenn die Eingabeinstanzen auch Kreisbogensegmente enthalten.

Beispiele

A.Verwenden von STIntersection() auf Polygoninstanzen

Im folgenden Beispiel wird STIntersection() zum Berechnen der Schnittmenge zweier Polygone verwendet.

DECLARE @g geometry;
DECLARE @h geometry;
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 2, 2 2, 2 0, 0 0))', 0);
SET @h = geometry::STGeomFromText('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))', 0);
SELECT @g.STIntersection(@h).ToString();

B.Verwenden von STIntersection() mit CurvePolygon-Instanzen

Im folgenden Beispiel wird eine Instanz zurückgegeben, die ein Kreisbogensegment enthält.

DECLARE @g geometry = 'CURVEPOLYGON (CIRCULARSTRING (0 -4, 4 0, 0 4, -4 0, 0 -4))';

DECLARE @h geometry = 'POLYGON ((1 -1, 5 -1, 5 3, 1 3, 1 -1))';

SELECT @h.STIntersection(@g).ToString();

Siehe auch

Andere Ressourcen

OGC-Methoden für geomety-Instanzen