ST_MAKEPOLYGONORIENTED
从 LineString 输入创建 Polygon,并保留给定的顶点顺序。与 ST_MAKEPOLYGON 不同,此函数不会重新排序顶点以强制特定的环绕方向。
语法
ST_MAKEPOLYGONORIENTED(<geometry>)
参数
返回类型
Geometry。
示例
SELECT ST_ASWKT(
ST_MAKEPOLYGONORIENTED(TO_GEOMETRY('LINESTRING(0 0, 1 0, 1 2, 0 2, 0 0)'))
);
┌──────────────────────────────────┐
│ result │
├──────────────────────────────────┤
│ POLYGON((0 0,1 0,1 2,0 2,0 0)) │
└──────────────────────────────────┘
-- Reversed winding order is preserved
SELECT ST_ASWKT(
ST_MAKEPOLYGONORIENTED(TO_GEOMETRY('LINESTRING(0 0, 0 2, 1 2, 1 0, 0 0)'))
);
┌──────────────────────────────────┐
│ result │
├──────────────────────────────────┤
│ POLYGON((0 0,0 2,1 2,1 0,0 0)) │
└──────────────────────────────────┘