Udostępnij za pomocą


STIntersection (geometry — typ danych)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

Zwraca obiekt reprezentujący punkty, w których wystąpienie geometrii przecina inne wystąpienie geometrii .

Syntax

  
.STIntersection ( other_geometry )  

Arguments

other_geometry
Jest innym wystąpieniem geometrii do porównania z wystąpieniem, na którym STIntersection() jest wywoływany, w celu określenia, gdzie się przecinają.

Typy zwracane

Zwracany typ programu SQL Server: geometria

Typ zwracania CLR: SqlGeometry

Remarks

STIntersection() zawsze zwraca wartość null, jeśli identyfikatory odwołań przestrzennych (SRID) wystąpień geometrii nie są zgodne. Wynik może zawierać segmenty łuku cyklicznego tylko wtedy, gdy wystąpienia wejściowe je zawierają.

Examples

A. Używanie metody STIntersection() w wystąpieniach wielokąta

W poniższym przykładzie użyto STIntersection() metody do obliczenia przecięcia dwóch wielokątów.

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. Używanie klasy STIntersection() z wystąpieniem CurvePolygon

Poniższy przykład zwraca wystąpienie, które zawiera segment łuku cyklicznego.

 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();

Zobacz też

metody OGC w wystąpieniach geometrycznych