名前

ST_VoronoiLines — ジオメトリの頂点からボロノイ図のセルを返します。

概要

geometry ST_VoronoiLines( g1 geometry , tolerance float8 , extend_to geometry );

説明

ST_VoronoiLinesは、与えられたジオメトリの頂点から、2次元ボロノイ図を計算します。図の細胞間の境界をMULTILINESTRINGで返します。入力ジオメトリがNULLの場合には、NULLを返します。入力ジオメトリに頂点が一つだけしか無い場合には、空ジオメトリコレクションを返します。extend_toのエンベロープの面積が0の場合には、空ジオメトリコレクションを返します。

任意パラメータ:

  • 'tolerance' : この距離以内の点は等価とします。0でない許容距離を指定することで、アルゴリズムのロバスト性が改善します。デフォルトは0.0です。

  • 'extend_to': ジオメトリが"extend_to"パラメータとして渡された場合には、エンベロープがデフォルトエンベロープより小さい場合を除いて、ボロノイ図は"extend_to"ジオメトリのエンベロープを覆う範囲になります (デフォルトはNULLで、デフォルトのエンベロープは入力ジオメトリのバウンディングボックスから各方向に50%ずつ拡張したものです)。

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

Availability: 2.3.0

許容範囲を30単位としたボロノイ図

SELECT ST_VoronoiLines(geom, 30) As geom
FROM (SELECT 'MULTIPOINT (50 30, 60 30, 100 100,10 150, 110 120)'::geometry As geom ) As g

-- ST_AsText 出力
MULTILINESTRING((135.555555555556 270,36.8181818181818 92.2727272727273),(36.8181818181818 92.2727272727273,-110 43.3333333333333),(230 -45.7142857142858,36.8181818181818 92.2727272727273))

関連情報

ST_DelaunayTriangles, ST_VoronoiPolygons, ST_Collect