ST_LocateBetweenElevations — 標高 (Z値)範囲にある部分ジオメトリを返します。
geometry ST_LocateBetweenElevations(geometry geom, float8 elevation_start, float8 elevation_end);
標高 (Z値)範囲にある部分ジオメトリとなるジオメトリ (コレクション)を返します。
凸でないPOLYGONを抜き出すと不正なジオメトリを返すことがあります。
Availability: 1.4.0
Enhanced: 3.0.0 - POLYGON, TIN, TRIANGLEへの対応が追加されました。
この関数は3次元に対応し、Z値を削除しません。
SELECT ST_AsText(
ST_LocateBetweenElevations(
'LINESTRING(1 2 3, 4 5 6)'::geometry,
2, 4 ));
st_astext
-----------------------------------
MULTILINESTRING Z ((1 2 3,2 3 4))
SELECT ST_AsText(
ST_LocateBetweenElevations(
'LINESTRING(1 2 6, 4 5 -1, 7 8 9)',
6, 9)) As ewelev;
ewelev
-----------------------------------------------------------------------
GEOMETRYCOLLECTION Z (POINT Z (1 2 6),LINESTRING Z (6.1 7.1 6,7 8 9))