ST_ ConvexHull - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

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

傳回 POINT 子類型。

2

傳回 LINESTRING 子類型。傳回 linestring 的兩個點按字典順序排序。

3 或以上

傳回沒有內環的 POLYGON 子類型。多邊形是順時針方向的,外環的第一個點是環的字典順序最小的點。

範例

以下 SQL 會傳回 linestring 的擴充已知文字 (EWKT) 表示法。在此情況下,傳回的凸包為多邊形。

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 會傳回 linestring 的 EWKT 表示法。在此情況下,傳回的凸包為 linestring。

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)