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