[postgis-devel] [PostGIS] #2007: topogeo_addlinestring: behaviour depends on query order (error - geometry intersects edge)

PostGIS trac at osgeo.org
Tue Sep 18 09:15:13 PDT 2012


#2007: topogeo_addlinestring: behaviour depends on query order (error - geometry
intersects edge)
-------------------------------+--------------------------------------------
 Reporter:  amartin            |       Owner:  strk         
     Type:  defect             |      Status:  new          
 Priority:  medium             |   Milestone:  PostGIS 2.0.2
Component:  topology           |     Version:  2.0.x        
 Keywords:  linestring, order  |  
-------------------------------+--------------------------------------------
 Just found a scenario where the order of calling topogeo_addlinestring
 affects the final result.

 The queries
 {{{
 SELECT
 topogeo_addlinestring('alberca_topo',ST_GeomFromText('LINESTRING(493339.655027555
 4364376.38759966, 493340.351099381 4364380.30551897, 493349.447316675
 4364380.22546209, 493357.127624414 4364380.58832002, 493363.534047898
 4364383.70829175, 493369.531348115 4364387.81043901, 493375.776788431
 4364392.72706278, 493383.13466486 4364395.75384862)', 25830), 0.01);

 SELECT
 topogeo_addlinestring('alberca_topo',ST_GeomFromText('LINESTRING(493340.350449389
 4364380.30185901, 493340.351099381 4364380.30551897, 493349.447316675
 4364380.22546209, 493357.127624414 4364380.58832002, 493363.534047898
 4364383.70829175, 493369.531348115 4364387.81043901, 493375.776788431
 4364392.72706278)', 25830), 0.01);
 }}}

 will create 2 topogeom objects.

 The same queries in different order will result on an error (ERROR:
 Spatial exception - geometry intersects edge)
 {{{
 SELECT
 topogeo_addlinestring('alberca_topo',ST_GeomFromText('LINESTRING(493340.350449389
 4364380.30185901, 493340.351099381 4364380.30551897, 493349.447316675
 4364380.22546209, 493357.127624414 4364380.58832002, 493363.534047898
 4364383.70829175, 493369.531348115 4364387.81043901, 493375.776788431
 4364392.72706278)', 25830), 0.01);

 SELECT
 topogeo_addlinestring('alberca_topo',ST_GeomFromText('LINESTRING(493339.655027555
 4364376.38759966, 493340.351099381 4364380.30551897, 493349.447316675
 4364380.22546209, 493357.127624414 4364380.58832002, 493363.534047898
 4364383.70829175, 493369.531348115 4364387.81043901, 493375.776788431
 4364392.72706278, 493383.13466486 4364395.75384862)', 25830), 0.01);
 }}}

-- 
Ticket URL: <http://trac.osgeo.org/postgis/ticket/2007>
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