ST_Polygonize

聚合函数,返回从一组Geometry对象的组成线中形成的可能的Polygon对象组成的GeometryCollection。

语法

geometry ST_Polygonize(geometry set geomField);
geometry ST_Polygonize(geometry[] geomArray);

参数

参数名称

描述

geomfield

数据集中Geometry对象所在字段。

geomArray

Geometry对象数组。

描述

  • 第三方工具通常不支持GeometryCollection类型对象,因此可以使用函数ST_Polygonize和函数ST_Dump把Collection类型的Polygon展开成单例的Polygon对象。

  • 输入的线形式的Geometry对象必须被正确的添加节点分隔才能使用该函数。

示例

默认调用:

select ST_AsText(ST_Polygonize(array['LINESTRING(0 0,0 1)'::geometry,
                                     'LINESTRING(0 1,1 1)'::geometry,
                                     'LINESTRING(1 1,1 0)'::geometry,
                                     'LINESTRING(0 0,1 0)'::geometry]));
                     st_astext
----------------------------------------------------
 GEOMETRYCOLLECTION(POLYGON((0 0,0 1,1 1,1 0,0 0)))
(1 row)