返回指定LineString的子串。
文法
geometry ST_LineSubstring(geometry aLinestring , float8 startfraction , float8 endfraction);
geography ST_LineSubstring(geography aLinestring , float8 startfraction , float8 endfraction);
參數
參數名稱 | 描述 |
aLinestring | 目標LineString對象。 |
startfraction | 起始的位置。 |
endfraction | 結束的位置。 |
描述
當startfraction和endfraction取值相同時,等同於ST_LineInterpolatePoint。
如果想作用於MultiLineString對象,需要先使用ST_LineMerge合并。
該函數支援3D對象,並且不會刪除Z座標。
該函數支援M座標。
樣本
SELECT ST_AsText(ST_LineSubstring('LINESTRING(0 0,10 10)'::geometry,0.3,0.6));
st_astext
---------------------
LINESTRING(3 3,6 6)
(1 row)
--geography
SELECT ST_AsText(ST_LineSubstring('LINESTRING(0 0,10 10)'::geography,0.3,0.6));
st_astext
--------------------------------------------------------------------------------
LINESTRING(2.97227762767668 3.01417970957332,5.96094221033023 6.0199989936211)