名前

ST_ConvexHull — 凸包は与えられた集合の全てのジオメトリを含む最小の閉じた凸ジオメトリです。

概要

geometry ST_ConvexHull(geometry geomA);

説明

凸包は与えられた集合の全てのジオメトリを含む最小の閉じた凸ジオメトリです。

凸包は、ジオメトリの集合に輪ゴムをかけて得られるジオメトリと見ることができます。これは縮小包装に似ている凹包と異なります。

通常はMULTI系まはたジオメトリカラムを使いますが、集計関数ではありません - ST_Collectと併用してST_ConvexHull(ST_Collect(somepointfield))とすると、ポイントの集合の凸包を得ることができます。

ポイント観察の集合を基にして、影響を受ける範囲を決定するのに使用します。

GEOSモジュールで実現しています。

このメソッドはOpenGIS Simple Features Implementation Specification for SQL 1.1.に準拠しています。 s2.1.1.3

このメソッドはSQL/MM仕様に準拠しています。 SQL-MM 3: 5.1.16

この関数は3次元に対応し、Z値を削除しません。

-- ポイント観察に基づいて、感染域の推定を得る
SELECT d.disease_type,
        ST_ConvexHull(ST_Collect(d.the_geom)) As the_geom
        FROM disease_obs As d
        GROUP BY d.disease_type;

マルチラインストリングとマルチポイントとその凸包

SELECT ST_AsText(ST_ConvexHull(
        ST_Collect(
                ST_GeomFromText('MULTILINESTRING((100 190,10 8),(150 10, 20 30))'),
                        ST_GeomFromText('MULTIPOINT(50 5, 150 30, 50 10, 10 10)')
                        )) );
---st_astext--
POLYGON((50 5,10 8,10 10,100 190,150 30,150 10,50 5))
        

関連情報

ST_Collect, ST_ConcaveHull, ST_MinimumBoundingCircle