STCurveN(geography 데이터 형식)

LineString, CircularString 또는 CompoundCurve인 geography 인스턴스에서 지정한 곡선을 반환합니다.

구문

.STCurveN( n )

인수

  • n
    1과 geography 인스턴스에 있는 곡선 개수 사이의 int 식입니다.

반환 형식

SQL Server 반환 형식: geography

CLR 반환 형식: SqlGeography

예외

n < 1일 경우 ArgumentOutOfRangeException이 발생합니다.

주의

다음 조건에서는 NULL이 반환됩니다.

1.CircularString에 STCurveN() 사용

다음 예에서는 CircularString 인스턴스에 두 번째 곡선을 반환합니다.

DECLARE @g geography = 'CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)';

SELECT @g.STCurveN(2).ToString();

이 예에서는 다음을 반환합니다.

CIRCULARSTRING (-122.348 47.658, -122.358 47.658, -122.358 47.653)

2.CompoundCurve에 STCurveN() 사용

다음 예에서는 CompoundCurve 인스턴스에 두 번째 곡선을 반환합니다.

DECLARE @g geography = 'COMPOUNDCURVE(CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';

SELECT @g.STCurveN(2).ToString();

이 예에서는 다음을 반환합니다.

CIRCULARSTRING (-122.348 47.658, -122.358 47.658, -122.358 47.653)

3.세 개의 CircularString이 포함된 CompoundCurve에 STCurveN() 사용

다음 예에서는 별도의 CircularString 인스턴스 세 개를 이전 예와 동일한 곡선 시퀀스에 조합하는 CompoundCurve 인스턴스를 사용합니다.

DECLARE @g geography = 'COMPOUNDCURVE (CIRCULARSTRING (-122.358 47.653, -122.348 47.649, -122.348 47.658), CIRCULARSTRING(-122.348 47.658, -122.358 47.658, -122.358 47.653))';

SELECT @g.STCurveN(2).ToString();

이 예에서는 다음을 반환합니다.

CIRCULARSTRING (-122.348 47.658, -122.358 47.658, -122.358 47.653)

STCurveN()은 사용되는 WKT(Well-Known Text) 형식과 관계없이 같은 결과를 반환합니다.

4.STCurve()를 호출하기 전에 유효성 테스트

다음 예에서는 STCurveN() 메서드를 호출하기 전에 n이 올바른지 확인하는 방법을 보여 줍니다.

DECLARE @g geography;

DECLARE @n int;

SET @n = 2;

SET @g = geography::Parse('LINESTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)');

IF @n >= 1 AND @n <= @g.STNumCurves()

BEGIN

SELECT @g.STCurveN(@n).ToString();

END

참고 항목

관련 자료

geography 인스턴스의 OGC 메서드