ST_IsClosed — 测试 LineString 的起始点和终止点是否重合。对于多面体表面,测试其是否闭合(体积)。
boolean ST_IsClosed(geometry g);
如果 LINESTRING 的起始点和终止点重合,则返回 TRUE。对于多面体表面,报告表面是面积(开放)还是体积(闭合)。
             此方法实现了 OGC 简单要素 SQL 实现规范 1.1。
 此方法实现了 OGC 简单要素 SQL 实现规范 1.1。
             此方法实现了 SQL/MM 规范。SQL-MM 3: 7.1.5, 9.3.3
 此方法实现了 SQL/MM 规范。SQL-MM 3: 7.1.5, 9.3.3
| ![[Note]](../images/note.png)  | |
| SQL-MM 定义  | 
             此函数支持 3D 并且不会删除 z 索引。
 此函数支持 3D 并且不会删除 z 索引。
             此方法支持圆形字符串和曲线。
 此方法支持圆形字符串和曲线。
增强:引入了 2.0.0 对多面体表面的支持。
             此函数支持多面体表面。
 此函数支持多面体表面。
postgis=# SELECT ST_IsClosed('LINESTRING(0 0, 1 1)'::geometry);
 st_isclosed
-------------
 f
(1 row)
postgis=# SELECT ST_IsClosed('LINESTRING(0 0, 0 1, 1 1, 0 0)'::geometry);
 st_isclosed
-------------
 t
(1 row)
postgis=# SELECT ST_IsClosed('MULTILINESTRING((0 0, 0 1, 1 1, 0 0),(0 0, 1 1))'::geometry);
 st_isclosed
-------------
 f
(1 row)
postgis=# SELECT ST_IsClosed('POINT(0 0)'::geometry);
 st_isclosed
-------------
 t
(1 row)
postgis=# SELECT ST_IsClosed('MULTIPOINT((0 0), (1 1))'::geometry);
 st_isclosed
-------------
 t
(1 row)
      		-- A cube --
		SELECT ST_IsClosed(ST_GeomFromEWKT('POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)),
		((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),
		((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)),
		((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)), ((0 0 1, 1 0 1, 1 1 1, 0 1 1, 0 0 1)) )'));
 st_isclosed
-------------
 t
 -- Same as cube but missing a side --
 SELECT ST_IsClosed(ST_GeomFromEWKT('POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)),
		((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),
		((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)),
		((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)) )'));
 st_isclosed
-------------
 f