ST_EndPoint — 返回 LineString 或 CircularLineString 的最后一个点。
geometry ST_EndPoint(
geometry g)
;
返回 LINESTRING
或 CIRCULARLINESTRING
几何对象的最后一个点,类型为 POINT
。如果输入不是 LINESTRING
或 CIRCULARLINESTRING
,则返回 NULL
。
此方法实现了 SQL/MM 规范。SQL-MM 3: 7.1.4
此函数支持 3D,不会丢弃 z 索引。
此方法支持圆形字符串和曲线。
变更:2.0.0 版本不再适用于单个几何 MultiLineStrings。在旧版本的 PostGIS 中,单线的 MultiLineString 可以使用此函数并返回终点。在 2.0.0 版本中,它像任何其他 MultiLineString 一样返回 NULL。旧的行为是一个未文档化的特性,但那些假设他们的数据存储为 LINESTRING 的用户可能会在 2.0.0 版本中遇到这些返回 NULL 的情况。 |
LineString 的终点
postgis=# SELECT ST_AsText(ST_EndPoint('LINESTRING(1 1, 2 2, 3 3)'::geometry)); st_astext ------------ POINT(3 3)
非 LineString 的终点为 NULL
SELECT ST_EndPoint('POINT(1 1)'::geometry) IS NULL AS is_null; is_null ---------- t
3D LineString 的终点
--3d endpoint SELECT ST_AsEWKT(ST_EndPoint('LINESTRING(1 1 2, 1 2 3, 0 0 5)')); st_asewkt -------------- POINT(0 0 5)
CircularString 的终点
SELECT ST_AsText(ST_EndPoint('CIRCULARSTRING(5 2,-3 1.999999, -2 1, -4 2, 6 3)'::geometry)); st_astext ------------ POINT(6 3)