CG_YMonotonePartition — 计算多边形几何体的 y 单调划分
geometry CG_YMonotonePartition(
geometry geom)
;
计算多边形几何体的 y 单调划分。
多边形 P 的划分是一组多边形,这些多边形的内部不相交,并且这些多边形的并集等于原始多边形 P 的内部。一个 y 单调多边形是一个其顶点 v1,…,vn 可以分为两个链 v1,…,vk 和 vk,…,vn,v1 的多边形,使得任何水平线最多与每个链相交一次。此算法不保证生成的多个多边形数量相对于最佳数量的界限。 |
可用性:3.5.0 - 需要 SFCGAL >= 1.5.0。
需要 SFCGAL >= 1.5.0
此方法需要 SFCGAL 后端。
SELECT ST_AsText(CG_YMonotonePartition('POLYGON((156 150,83 181,89 131,148 120,107 61,32 159,0 45,41 86,45 1,177 2,67 24,109 31,170 60,180 110,156 150))'::geometry));
GEOMETRYCOLLECTION(POLYGON((32 159,0 45,41 86,32 159)),POLYGON((107 61,32 159,41 86,45 1,177 2,67 24,109 31,170 60,107 61)),POLYGON((156 150,83 181,89 131,148 120,107 61,170 60,180 110,156 150)))