Name

CG_ApproximateMedialAxis — 面ジオメトリの近似的な中心軸を計算します。

Synopsis

geometry CG_ApproximateMedialAxis(geometry geom);

geometry CG_ApproximateMedialAxis(geometry geom, boolean projected);

説明

ストレートスケルトンを基に、実際の入力の近似的な中心軸を返します。可能な版(1.2.0以上)でビルドするとSFCGAL独自APIを使います。そうでない場合には、CG_StraightSkeleton (遅い)関数をラッピングした関数となります。

projectedtrueの場合には、中心軸の自由端点がポリゴン境界に届くよう延長されます (投影中心軸)。SFCGAL 2.3.0以上が必要です。古いバージョンのSFCGALでビルドされている場合には、通知が出され、非投影の結果が返されます。

Availability: 3.5.0

Availability: 3.7.0 - projectedパラメーター。投影された結果を得るには SFCGAL >= 2.3.0 が必要。古いバージョンでは通知が出力され、非投影の結果になります。

[Note]

この関数はZ値を無視します。この関数を3次元ジオメトリ上で使用したとしても、常に2次元の結果となります。

このメソッドにはSFCGALバックエンドが必要です。

この関数は多面体サーフェスに対応しています。

この関数は三角形と不規則三角網 (TIN)に対応しています。

SELECT CG_ApproximateMedialAxis(ST_GeomFromText('POLYGON (( 190 190, 10 190, 10 10, 190 10, 190 20, 160 30, 60 30, 60 130, 190 140, 190 190 ))'));

ポリゴンと近似的な中心軸

This example computes the projected medial axis with free endpoints extended to the polygon boundary.

SELECT ST_AsText(CG_ApproximateMedialAxis('POLYGON((0 0,2 0,2 1,0 1,0 0))', true));
MULTILINESTRING((0 0.5,0.5 0.5,1.5 0.5,2 0.5))