카테고리:

지리 공간 함수

ST_SIMPLIFY

선 또는 다각형을 나타내는 입력 GEOGRAPHY 오브젝트가 주어지면 이 오브젝트의 더 단순한 근삿값을 반환합니다. 이 함수는 선택한 꼭짓점을 식별하고 제거하여 꼭짓점이 더 적은 유사한 오브젝트를 만듭니다.

예를 들어, 입력 오브젝트가 꼭짓점이 50개인 다각형인 경우, ST_SIMPLIFY 는 꼭짓점이 20개인 더 단순한 다각형을 반환할 수 있습니다.

오브젝트를 단순화할 때 이 함수는 꼭짓점 제거 결과에 따라 해당 꼭짓점과 가장자리 사이의 거리가 지정 허용 범위 내에 있는 경우에만 꼭짓점을 제거합니다.

구문

ST_SIMPLIFY( <geography_expression>, <tolerance> [ , <preserve_collapsed> ] )

인자

필수:

geography_expression

단순화할 GEOGRAPHY 오브젝트입니다.

GEOGRAPHY 오브젝트 유형에 따라 ST_SIMPLIFY는 다음과 같은 효과가 있습니다.

오브젝트 유형

ST_SIMPLIFY의 효과

LineString, MultiLineString, 다각형 또는 MultiPolygon

ST_SIMPLIFY가 단순화 알고리즘을 적용합니다

점 또는 MultiPoint

ST_SIMPLIFY가 효과가 없습니다.

GeometryCollection 또는 FeatureCollection

ST_SIMPLIFY가 컬렉션의 각 오브젝트에 단순화 알고리즘을 적용합니다.

tolerance

꼭짓점 제거로 인한 꼭짓점과 가장자리 사이의 최대 거리(미터)입니다. 거리가 꼭짓점에 대한 이 허용 범위를 초과하는 경우, ST_SIMPLIFY는 해당 꼭짓점을 단순화된 오브젝트에 유지합니다.

선택 사항:

preserve_collapsed

TRUE 인 경우, 오브젝트를 유지하지 않을 경우에는 허용 범위 감안 시 너무 작을 때 해당 오브젝트를 그대로 유지합니다.

예를 들어, preserve_collapsedFALSE 이고 tolerance10 (미터)인 경우, 1m 길이의 선은 단순화된 오브젝트의 한 점으로 축소됩니다. preserve_collapsedTRUE 인 경우, 이 선은 단순화된 오브젝트에서 유지됩니다.

기본값: FALSE.

반환

함수는 GEOGRAPHY 형식의 값을 반환합니다.

이 섹션의 예는 WKT 형식으로 출력을 표시합니다.

alter session set GEOGRAPHY_OUTPUT_FORMAT='WKT';

다음 예는 원래 LineString보다 꼭짓점이 적은 단순화된 LineString을 반환합니다. 단순화된 오브젝트에서, 꼭짓점과 꼭짓점을 대체하는 가장자리 사이의 거리가 1000미터 미만이면 꼭짓점이 생략됩니다.

SELECT ST_SIMPLIFY(
    TO_GEOGRAPHY('LINESTRING(-122.306067 37.55412, -122.32328 37.561801, -122.325879 37.586852)'),
    1000);
+----------------------------------------------------------------------------------------------------+
| ST_SIMPLIFY(                                                                                       |
|     TO_GEOGRAPHY('LINESTRING(-122.306067 37.55412, -122.32328 37.561801, -122.325879 37.586852)'), |
|     1000)                                                                                          |
|----------------------------------------------------------------------------------------------------|
| LINESTRING(-122.306067 37.55412,-122.325879 37.586852)                                             |
+----------------------------------------------------------------------------------------------------+
맨 위로 이동