[postgis-devel] [PostGIS] #652: ST_IsValid and adjacent polygons

PostGIS trac at osgeo.org
Wed Oct 27 08:53:58 PDT 2010


#652: ST_IsValid and adjacent polygons
--------------------------------------------+-------------------------------
 Reporter:  gaosgeo                         |       Owner:  pramsey      
     Type:  defect                          |      Status:  new          
 Priority:  medium                          |   Milestone:  PostGIS 1.5.3
Component:  postgis                         |     Version:  1.5.X        
 Keywords:  ST_IsValid, Self-Intersections  |  
--------------------------------------------+-------------------------------

Comment(by kneufeld):

 What you are seeing is actually expected results.

 According to the OGC specifications, a multipolygon is considered valid if
 all its elements are valid and the interiors of no two elements intersect.
 Additionally, the boundaries of any two elements *may* touch, but only at
 a finite number of points (ie. a line).  Granted, the ST_IsValidReason
 could have been more clear by indicating a self-intersection along the
 LINESTRING(0 1, 1 1), instead of only presenting a point along that line.

 http://postgis.refractions.net/docs/ch04.html#OGC_Validity
 or refer to the actual SFSS.
 (I should probably add a new diagram (p) showing a valid mpg that touches
 at a point)

 As for your second example, ST_Valid does not take the 3rd (or 4th)
 dimension into account.  For the most part, calculations in PostGIS are
 done in 2D.  Some functions will recognize the 3rd dimension, like
 ST_Length3D, others may extrapolate the value, but most will not use it,
 including indexes.  PostGIS should really be thought of as 2.5D where the
 3rd/4th dimensions are really place holders for extra values.  See the
 support matrix:
 http://postgis.refractions.net/docs/ch08.html#PostGIS_TypeFunctionMatrix

-- 
Ticket URL: <http://trac.osgeo.org/postgis/ticket/652#comment:2>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-devel mailing list