STCurveToLine (geometri veri türü)
Çokgen bir yaklaşım döndüren bir geometrycircular arc parçalarını içeren örneği.
Sözdizimi
.STCurveToLine ( )
Dönüş Türleri
SQL Server dönüş türü: geometry
clr döndürme türü:SqlGeometry
Açıklamalar
Boş döndürür GeometryCollectionörneği için boş geometryörnek değişkenleri ve döner NULLBaşlatılmamış için geometrydeğişkenleri.
Yöntem döndürür poligonal yaklaşım bağlıdır geometryyöntemini çağırmak için kullanılan örnek:
Döner bir LineStringörnek bir CircularStringya CompoundCurveörneği.
Döner bir Polygonörnek bir CurvePolygonörneği.
Döner geometryBu örnek ise örnek bir CircularString, CompoundCurve, ya CurvePolygonörneği. Örneğin, STCurveToLineyöntemi döner bir Pointörnek bir geometryyani örnek bir Pointörneği.
Aksine sql/mm belirtimi STCurveToLineyöntemi kullanma z-coordinatepoligonal yaklaşım hesaplamak için değer. Herhangi bir yöntemi yok sayar z-coordinatearama değerlerini günümüze geometryörneği.
Örnekler
A.Başlatılmamış geometri değişkenini kullanarak boş örneği
Aşağıdaki örnekte, ilk SELECTdeyimini kullanan bir başlatılmamış geometryaramak için örnek STCurveToLineyöntemi ve ikinci SELECT boş bir deyim kullanır geometryörneği. Böylece, yöntem döndürür NULLbirinci ve bir GeometryCollectionikinci ifadesine koleksiyonu.
DECLARE @g geometry;
SET @g = @g.STCurveToLine();
SELECT @g.STGeometryType();
SET @g = geometry::Parse('LINESTRING EMPTY');
SELECT @g.STGeometryType();
B.Bir LineStringÖrnek kullanma
SELECTDeyimi aşağıdaki örnekte bir LineStringaramak için örnek STCurveToLineyöntemi. Böylece, yöntem döndürür bir LineStringörneği.
DECLARE @g geometry;
SET @g = geometry::Parse('LINESTRING(1 3, 5 5, 4 3, 1 3)');
SET @g = @g.STCurveToLine();
SELECT @g.STGeometryType();
C.Bir CircularString örneği kullanarak
İlk SELECTdeyimi aşağıdaki örnekte bir CircularStringaramak için örnek STCurveToLineyöntemi. Böylece, yöntem döndürür bir LineStringörneği. Bu SELECTdeyimi, uzunlukları yaklaşık aynı olan iki örnekleri de karşılaştırır. Son olarak, ikinci SELECTdeyimi döndürür puanlar her örneği için. Sadece 5 puan verir CircularStringörneği, ancak 65 Puan LineStringörneği.
DECLARE @g1 geometry, @g2 geometry;
SET @g1 = geometry::Parse('CIRCULARSTRING(10 0, 0 10, -10 0, 0 -10, 10 0)');
SET @g2 = @g1.STCurveToLine();
SELECT @g1.STGeometryType() AS [G1 Type], @g2.STGeometryType() AS [G2 Type], @g1.STLength() AS [G1 Perimeter], @g2.STLength() AS [G2 Perimeter], @g2.ToString() AS [G2 Def];
SELECT @g1.STNumPoints(), @g2.STNumPoints();
D.Bir CurvePolygon örneği kullanarak
SELECTDeyimi aşağıdaki örnekte bir CurvePolygonaramak için örnek STCurveToLineyöntemi. Böylece, yöntem döndürür bir Polygonörneği.
DECLARE @g1 geometry, @g2 geometry;
SET @g1 = geometry::Parse('CURVEPOLYGON(CIRCULARSTRING(10 0, 0 10, -10 0, 0 -10, 10 0))');
SET @g2 = @g1.STCurveToLine();
SELECT @g1.STGeometryType() AS [G1 Type], @g2.STGeometryType() AS [G2 Type];
Ayrıca bkz.
Başvuru
STNumPoints (geometri veri türü)
STGeometryType (geometri veri türü)