BufferWithTolerance(geography 데이터 형식)

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

지리 인스턴스와의 거리가 지정된 값보다 작거나 같은 모든 점 값의 합합을 나타내는 기하학적 개체를 반환하여 지정된 허용 오차를 허용합니다.

이 지리 데이터 형식 메서드는 반구보다 큰 FullGlobe 인스턴스 또는 공간 인스턴스를 지원합니다.

Syntax

  
.BufferWithTolerance ( distance, tolerance, relative )  

참고 항목

SQL Server 2014(12.x) 및 이전 버전에 대한 Transact-SQL 구문을 보려면 이전 버전 설명서를 참조 하세요.

인수

distance
버퍼를 계산할 지리 인스턴스와의 거리를 지정하는 float 식입니다.

버퍼의 최대 거리는 0.999 * π * minorAxis * minorAxis / majorAxis(~0.999 * 지구 둘레의 1/2) 또는 전체 구형을 초과할 수 없습니다.

공차
버퍼 거리에 대한 허용 오차를 지정하는 float 식입니다.

반환된 선형 근사값에 이상적인 버퍼 거리의 최대 변형은 허용 오차 값입니다.

예를 들어 점의 이상적인 버퍼 거리는 원이지만 이 거리는 다각형으로 근사값이어야 합니다. 허용 오차가 작을수록 다각형에 더 많은 포인트가 있습니다. 이 결과는 결과의 복잡성을 증가하지만 오류를 최소화합니다.

최소 제한은 거리의 0.1%이며, 그보다 작은 허용 오차는 최소 한도로 반올림됩니다.

상대
허용 오차 값이 상대 값인지 절대 값인지 여부를 지정하는 비트입니다. 값이 'TRUE' 또는 1이면 허용 오차가 상대적입니다. tolerance 매개 변수와 각 범위 * 타원면의 종반지름으로 계산됩니다. 값이 'FALSE' 또는 0인 경우 허용 오차는 절대입니다. 이 허용 오차 값은 반환된 선형 근사값에 이상적인 버퍼 거리의 절대 최대 변형입니다.

반환 형식

SQL Server 반환 형식: geography

CLR 반환 형식: SqlGeography

설명

이 메서드는 거리가 숫자(NAN)가 아니거나 거리가 양수 또는 음의 무한대인 경우ArgumentException을 throw합니다. 또한 이 메서드는 허용 오차가 0(0), 숫자(NaN), 음수 또는 양수 또는 음수 무한대인 경우에도 ArgumentException을 throw합니다.

STBuffer()는 경우에 따라 FullGlobe 인스턴스를 반환합니다. 예를 들어 STBuffer()는 버퍼 거리가 적도에서 극지방까지의 거리보다 큰 경우 두 극지방에서 FullGlobe 인스턴스를 반환합니다.

이 메서드는 버퍼 거리가 다음 제한을 초과하는 경우 FullGlobe 인스턴스에서 ArgumentException을 생성합니다.

0.999 * π * minorAxis * minorAxis / majorAxis (~0.999 * 지구 둘레의 1/2)

이론 버퍼와 계산된 버퍼 간의 오류는 최대입니다(허용 오차, 익스텐트 * 1.E-7). 여기서 허용 오차는 tolerance 매개 변수의 값입니다. 익스텐션 에 대한 자세한 내용은 geography 데이터 형식 메서드 참조를 참조하세요.

이 메서드는 정확하지 않습니다.

예제

다음 예에서는 Point 인스턴스를 만들고 BufferWithTolerance()를 사용하여 인스턴스 주위의 대략적인 버퍼를 구합니다.

DECLARE @g geography;  
SET @g = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);  
SELECT @g.BufferWithTolerance(1, .5, 0).ToString();  

참고 항목

STBuffer(geography 데이터 형식)
지리 인스턴스의 확장 메서드