聚合函数,返回从一组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)