ST_LocateBetweenElevations — 返回位于高程 (Z) 范围内的几何图形部分。
geometry ST_LocateBetweenElevations(geometry geom, float8 elevation_start, float8 elevation_end);
返回一个几何图形(集合),其中包含位于高程 (Z) 范围内的几何图形部分。
裁剪非凸多边形可能会产生无效的几何图形。
可用性:1.4.0
增强:3.0.0 - 添加了对多边形、TIN、三角形的支持。
该函数支持 3d 并且不会丢失 z-index。
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))