返回输入LineString对象或者环形LineString中的第n个点。

语法

geometry  ST_PointN(geometry  aLinestring , integer  n);

参数

参数名称 描述
aLinestring 目标LineString对象。
n 索引编号。

描述

  • 如果对象不是LineString,则返回NULL。
  • 如果n是负数,那么将从末尾向前计数。负值从LineString的末尾开始算起,因此-1是最后一个点。
  • 如果要获得MultiLineStirng中每个LineString的第n个点,请与ST_Dump结合使用。
  • 该函数支持Circular Strings和Curves类型几何对象。
  • 该函数支持3D对象,并且不会删除Z坐标。

示例

  • 默认调用:
    SELECT ST_AsText(ST_PointN('LINESTRING(0 0,2 2)'::geometry,1));
     st_astext
    ------------
     POINT(0 0)
    (1 row)
                        
  • 逆序计数:
    SELECT ST_AsText(ST_PointN('LINESTRING(0 0,2 2)'::geometry,-1));
     st_astext
    ------------
     POINT(2 2)
    (1 row)