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 サブタイプが返されます。返されるライン文字列の 2 つのポイントは、辞書式の順序になっています。

3 以上

内部リングのない POLYGON サブタイプが返されます。ポリゴンは時計回りに向けられており、外部リングの最初のポイントは、辞書式順序でリングの最小のポイントです。

次の SQL は、LINESTRING の拡張された well-known text (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 表現を返します。この場合、返される凸包はライン文字列です。

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)