ST_MakePolygon

从给定的边界构造一个Polygon对象。

语法

geometry ST_MakePolygon(geometry linestring);
geometry ST_MakePolygon(geometry outerlinestring , geometry[] interiorlinestrings);

参数

参数名称

描述

linestring

作为边界的LineString对象。

outerlinestring

作为外边界的LineString对象。

interiorlinestrings

作为内部环的LineString对象。

描述

输入值必须是一个封闭的LineString。

示例

  • 默认调用:

    SELECT ST_AsText(ST_MakePolygon(ST_GeomFromText('LINESTRING(1 2,3 4,5 6,1 2)')));
             st_astext
    ----------------------------
     POLYGON((1 2,3 4,5 6,1 2))
    (1 row)
    
  • 带有内部环的对象:

    SELECT ST_AsText(ST_MakePolygon(ST_GeomFromText('LINESTRING(0 0,0 1,1 1,0 0)'),ARRAY[ST_GeomFromText('LINESTRING(-1 -1,-1 2,2 2,-1 -1)')]));
                         st_astext
    ---------------------------------------------------
     POLYGON((0 0,0 1,1 1,0 0),(-1 -1,-1 2,2 2,-1 -1))
    (1 row)