ST_IsClosed
Name
ST_IsClosed — Tests if a LineStrings's start and end points are coincident. For a PolyhedralSurface tests if it is closed (volumetric).
Synopsis
    
     boolean
     
      ST_IsClosed
     
     (
    
    geometry
    
     g
    
    
     )
    
    ;
   
Description
   Returns
   
    TRUE
   
   if the
   
    LINESTRING
   
   's
		start and end points are coincident.
		For Polyhedral Surfaces, reports if the surface is areal (open) or volumetric (closed).
  
   
    
   
   This method implements the
   
    OGC Simple Features
 Implementation Specification for SQL 1.1.
   
  
   
    
   
   This method implements the SQL/MM specification. SQL-MM 3: 7.1.5, 9.3.3
  
       
      | 
     |
| 
       
       SQL-MM defines the result of
         | 
    
   
    
   
   This function supports 3d and will not drop the z-index.
  
   
    
   
   This method supports Circular Strings and Curves
  
Enhanced: 2.0.0 support for Polyhedral surfaces was introduced.
   
    
   
   This function supports Polyhedral surfaces.
  
Line String and Point Examples
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)
 Polyhedral Surface Examples
		-- 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