STCurveToLine(geometry 데이터 형식)
적용 대상: Microsoft Fabric의 Microsoft Fabric Warehouse에 있는 SQL Server Azure SQL Database Azure SQL Managed Instance SQL 분석 엔드포인트
원호 세그먼트를 포함하는 기하 도형 인스턴스의 다각형 근사치를 반환합니다.
Syntax
.STCurveToLine ( )
참고 항목
SQL Server 2014(12.x) 이전 버전의 Transact-SQL 구문을 보려면 이전 버전 설명서를 참조하세요.
반환 형식
SQL Server 반환 형식: geometry
CLR 반환 형식: SqlGeometry
설명
빈 geometry 인스턴스 변수에 대한 빈 GeometryCollection인스턴스를 반환하고 초기화되지 않은 기하 도형 변수에 대해 NULL을 반환합니다.
메서드가 반환하는 다각형 근사값은 메서드를 호출하는 데 사용하는 기하 도형 인스턴스에 따라 달라집니다.
CircularString 또는 CompoundCurve 인스턴스에 대한 LineString 인스턴스를 반환합니다.
CurvePolygon 인스턴스에 대한 Polygon 인스턴스를 반환합니다.
해당 인스턴스가 CircularString, CompoundCurve 또는 CurvePolygon 인스턴스가 아닌 경우 기하 도형 인스턴스의 복사본을 반환합니다. 예를 들어 이 메서드는
STCurveToLine
Point 인스턴스인 기하 도형 인스턴스에 대한 Point 인스턴스를 반환합니다.
SQL/MM 사양 STCurveToLine
과 달리 이 메서드는 z 좌표 값을 사용하여 다각형 근사치를 계산하지 않습니다. 메서드는 호출 기하 도형 인스턴스에 있는 모든 z 좌표 값을 무시합니다 .
예제
A. 초기화되지 않은 기하 도형 변수 및 빈 인스턴스 사용
다음 예제에서 첫 번째 SELECT 문은 초기화 되지 않은 기하 도형 인스턴스를 사용하여 메서드를 호출 STCurveToLine
하고 두 번째 SELECT 문은 빈 기하 도형 인스턴스를 사용합니다. 따라서 메서드는 첫 번째 문에 NULL을 반환하고 두 번째 문에 GeometryCollection 컬렉션을 반환합니다.
DECLARE @g geometry;
SET @g = @g.STCurveToLine();
SELECT @g.STGeometryType();
SET @g = geometry::Parse('LINESTRING EMPTY');
SELECT @g.STGeometryType();
B. LineString 인스턴스 사용
다음 예제의 SELECT 문은 LineString 인스턴스를 사용하여 STCurveToLine 메서드를 호출합니다. 따라서 이 메서드는 LineString 인스턴스를 반환합니다 .
DECLARE @g geometry;
SET @g = geometry::Parse('LINESTRING(1 3, 5 5, 4 3, 1 3)');
SET @g = @g.STCurveToLine();
SELECT @g.STGeometryType();
C. CircularString 인스턴스 사용
다음 예의 SELECT 문은 CircularString 인스턴스를 사용하여 STCurveToLine 메서드를 호출합니다. 따라서 이 메서드는 LineString 인스턴스를 반환합니다 . 또한 이 SELECT 문은 거의 같은 두 인스턴스의 길이를 비교합니다. 마지막으로 두 번째 SELECT 문은 각 인스턴스에 대한 포인트 수를 반환합니다. CircularString 인스턴스의 경우 5포인트만 반환하지만 LineString 인스턴스의 경우 65포인트를 반환합니다.
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. CurvePolygon 인스턴스 사용
다음 예제의 SELECT 문은 CurvePolygon 인스턴스를 사용하여 STCurveToLine 메서드를 호출합니다. 따라서 메서드는 Polygon 인스턴스를 반환합니다.
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];
참고 항목
공간 데이터 형식 개요
STLength(geometry 데이터 형식)
STNumPoints(geometry 데이터 형식)
STGeometryType(geometry 데이터 형식)
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기