ST_ConvexHull
ST_ConvexHull은 입력 지오메트리에 포함된 비어 있지 않은 점의 볼록 껍질을 나타내는 지오메트리를 반환합니다.
빈 입력의 경우 결과 지오메트리는 입력 지오메트리와 동일합니다. 비어 있지 않은 모든 입력에 대해 이 함수는 입력 지오메트리의 2D 프로젝션에서 작동합니다. 그러나 출력 지오메트리의 차원은 입력 지오메트리의 차원에 따라 달라집니다. 보다 구체적으로 입력 지오메트리가 비어 있지 않은 3DM 또는 3D 지오메트리인 경우 m
좌표가 삭제됩니다. 즉, 반환된 지오메트리의 차원은 각각 2D 또는 3DZ입니다. 입력이 비어 있지 않은 2D 또는 3DZ 지오메트리인 경우 결과 지오메트리는 동일한 차원을 갖습니다.
구문
ST_ConvexHull(geom)
인수
- geom
-
GEOMETRY
데이터 형식의 값 또는GEOMETRY
형식으로 계산되는 표현식입니다.
반환 타입
GEOMETRY
반환된 지오메트리의 공간 참조 시스템 식별자(SRID) 값은 입력 지오메트리의 SRID 값입니다.
geom이 null이면 null이 반환됩니다.
값은 다음과 같이 반환됩니다.
볼록 껍질의 점 수 | 지오메트리 하위 유형 |
---|---|
0 |
geom의 복사본이 반환됩니다. |
1 |
|
2 |
|
3 이상 |
내부 링이 없는 |
예제
다음 SQL은 라인스트링의 EWKT(Extended Well-Known Text) 표현을 반환합니다. 이 경우 반환된 블록 껍질이 다각형입니다.
SELECT ST_AsEWKT(ST_ConvexHull(ST_GeomFromText('LINESTRING(0 0,1 0,0 1,1 1,0.5 0.5)'))) as output;
output
-------------
POLYGON((0 0,0 1,1 1,1 0,0 0))
다음 SQL은 라인스트링의 EWKT 표현을 반환합니다. 이 경우 반환된 블록 껍질이 라인스트링입니다.
SELECT ST_AsEWKT(ST_ConvexHull(ST_GeomFromText('LINESTRING(0 0,1 1,0.2 0.2,0.6 0.6,0.5 0.5)'))) as output;
output
-------------
LINESTRING(0 0,1 1)
다음 SQL은 다중 점의 EWKT 표현을 반환합니다. 이 경우 반환된 블록 껍질이 점입니다.
SELECT ST_AsEWKT(ST_ConvexHull(ST_GeomFromText('MULTIPOINT(0 0,0 0,0 0)'))) as output;
output
-------------
POINT(0 0)