ST_MakeLine

从Point、MultiPoint或者Line等Geometry对象,构造一个LineString对象。

语法

geometry ST_MakeLine(geometry set geoms);
geometry ST_MakeLine(geometry geom1 , geometry geom2);
geometry ST_MakeLine(geometry[] geomsArray);

参数

参数名称

描述

geoms

Geometry对象集合。

geom1

第一个Geometry对象。

geom2

第二个Geometry对象。

geomsArray

Geometry对象数组。

描述

  • Point、MultiPoint或Line以外的输入类型将被忽略。

  • 当添加Line组件时,将删除公共的节点。Point和MultiPoint则不会删除公共节点。

  • 该函数支持3D对象,并且不会丢弃Geometry对象的z-index。

示例

  • 默认调用:

    SELECT ST_AsText(ST_MakeLine(ST_MakePoint(1,2), ST_MakePoint(3,4)));
          st_astext
    ---------------------
     LINESTRING(1 2,3 4)
    (1 row)
                        
  • 构建3D对象:

    SELECT ST_AsText(ST_MakeLine(ST_MakePoint(1,2,3), ST_MakePoint(4,5,6)));
             st_astext
    ----------------------------
     LINESTRING Z (1 2 3,4 5 6)
    (1 row)
                        
  • 通过数组构建:

    SELECT ST_AsText(ST_MakeLine(ARRAY[ST_MakePoint(1,2),ST_MakePoint(3,4), ST_MakePoint(5,6)]));
            st_astext
    -------------------------
     LINESTRING(1 2,3 4,5 6)
    (1 row)