名前

ST_GeneratePoints — ポリゴン内やマルチポリゴン内にランダムなポイントを生成します。

概要

geometry ST_GeneratePoints( g geometry , npoints integer );

geometry ST_GeneratePoints( geometry g , integer npoints , integer seed );

説明

ST_GeneratePointsは、入力の面内に指定した個数のポイントが出現するまで疑似乱数によるポイントを生成します。任意引数のseedは、ポイント列の再生成が決定的にするために使い、0より大きい数でなければなりません。

Availability: 2.3.0

Enhanced: 3.0.0 seedパラメータの追加

元のポリゴン

乱数シード値に1996を使った元のポリゴンの上に重なった12個のポイント生成

SELECT ST_GeneratePoints(geom, 12, 1996)
FROM (
    SELECT ST_Buffer(
        ST_GeomFromText(
        'LINESTRING(50 50,150 150,150 50)'),
        10, 'endcap=round join=round') AS geom
) AS s;