名前

ST_LineMerge — MULTILINESTRINGをまとめ合わせて形成されるラインストリング (またはその集合)を返します。

概要

geometry ST_LineMerge(geometry amultilinestring);

説明

MULTILINESTRINGをまとめ合わせて形成されるラインストリング (またはその集合)を返します。

[注記]

MULTILINESTRING/LINESTRINGに対してのみ使用して下さい。ポリゴンやジオメトリコレクションに対してこの関数を使うと、空のGEOMETRYCOLLECTIONが返ります。

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

Availability: 1.1.0

[警告]

M値は除かれます。

SELECT ST_AsText(ST_LineMerge(
ST_GeomFromText('MULTILINESTRING((-29 -27,-30 -29.7,-36 -31,-45 -33),(-45 -33,-46 -32))')
                )
);
st_astext
--------------------------------------------------------------------------------------------------
LINESTRING(-29 -27,-30 -29.7,-36 -31,-45 -33,-46 -32)
(1 row)

-- まとめられない場合 - 元のマルチラインストリングが返されます
SELECT ST_AsText(ST_LineMerge(
ST_GeomFromText('MULTILINESTRING((-29 -27,-30 -29.7,-36 -31,-45 -33),(-45.2 -33.2,-46 -32))')
)
);
st_astext
----------------
MULTILINESTRING((-45.2 -33.2,-46 -32),(-29 -27,-30 -29.7,-36 -31,-45 -33))

-- Z値を持つ例
SELECT ST_AsText(ST_LineMerge(
ST_GeomFromText('MULTILINESTRING((-29 -27 11,-30 -29.7 10,-36 -31 5,-45 -33 6), (-29 -27 12,-30 -29.7 5), (-45 -33 1,-46 -32 11))')
                )
);
st_astext
--------------------------------------------------------------------------------------------------
LINESTRING Z (-30 -29.7 5,-29 -27 11,-30 -29.7 10,-36 -31 5,-45 -33 1,-46 -32 11)
(1 row)
                        

関連情報

ST_Segmentize, ST_LineSubstring