ST_ExteriorRing — 返回一个表示多边形外环的 LineString。
geometry ST_ExteriorRing(geometry a_polygon);
返回一个表示多边形外环(外壳)的 LINESTRING。如果几何图形不是多边形,则返回 NULL。
|
|
|
此函数不支持 MULTIPOLYGON。对于 MULTIPOLYGON,请结合 ST_GeometryN 或 ST_Dump 使用。 |
此方法实现了 OGC 简单要素 SQL 实现规范 1.1。 2.1.5.1
此方法实现了 SQL/MM 规范。SQL-MM 3: 8.2.3, 8.3.3
此函数支持 3D,并且不会删除 z 索引。
--If you have a table of polygons
SELECT gid, ST_ExteriorRing(geom) AS ering
FROM sometable;
--If you have a table of MULTIPOLYGONs
--and want to return a MULTILINESTRING composed of the exterior rings of each polygon
SELECT gid, ST_Collect(ST_ExteriorRing(geom)) AS erings
FROM (SELECT gid, (ST_Dump(geom)).geom As geom
FROM sometable) As foo
GROUP BY gid;
--3d Example
SELECT ST_AsEWKT(
ST_ExteriorRing(
ST_GeomFromEWKT('POLYGON((0 0 1, 1 1 1, 1 2 1, 1 1 1, 0 0 1))')
)
);
st_asewkt
---------
LINESTRING(0 0 1,1 1 1,1 2 1,1 1 1,0 0 1)