Name

ST_LocateAlong — 指定したM値に一致する要素からなる、派生ジオメトリコレクション値を返します。ポリゴン要素には対応していません。

Synopsis

geometry ST_LocateAlong(geometry ageom_with_measure, float8 a_measure, float8 offset);

説明

指定したM値に一致する要素からなる、派生ジオメトリコレクション値を返します。ポリゴン要素には対応していません。

offsetを与えた場合には、結果は入力ラインの右または左に、指定した数字分ずれます。正のオフセットでは左に、負のオフセットでは右にずれます。

意味は ISO/IEC CD 13249-3:200x(E) - Text for Continuation CD Editing Meeting で決められています。

Availability: 1.1.0 それまではST_Locale_Along_Measureでした。

Changed: 2.0.0 以前の版ではST_Locate_Along_Measureと呼ばれていましたが、古い名前は非推奨となり、将来的には削除しますが現時点では有効です。

[Note]

この関数は、M要素を持つジオメトリでのみ使います。

This function supports M coordinates.

SELECT ST_AsText(the_geom)
                FROM
                (SELECT ST_LocateAlong(
                        ST_GeomFromText('MULTILINESTRINGM((1 2 3, 3 4 2, 9 4 3),
                (1 2 3, 5 4 5))'),3) As the_geom) As foo;

                                                 st_asewkt
-----------------------------------------------------------
 MULTIPOINT M (1 2 3)

-- ジオメトリコレクションは難しいものですので、
-- 簡略化するためにダンプしています。
SELECT ST_AsText((ST_Dump(the_geom)).geom)
        FROM
        (SELECT ST_LocateAlong(
                        ST_GeomFromText('MULTILINESTRINGM((1 2 3, 3 4 2, 9 4 3),
        (1 2 3, 5 4 5))'),3) As the_geom) As foo;

   st_asewkt
---------------
 POINTM(1 2 3)
 POINTM(9 4 3)
 POINTM(1 2 3)
        

関連情報

ST_Dump, ST_LocateBetween