[postgis-users] GeomUnion problem

Martin Davis mbdavis at refractions.net
Thu May 3 17:16:24 PDT 2007


Let me guess - the two polygons causing this problem had a collinear 
edge which crosses the cell boundary?

If so, this is the *toughest* situation for the union code to handle 
robustly, since it is trying to union along two edges which are almost 
collinear, but not quite. 

Tough to suggest a fix... One possible way is to do the union of the 
orginal polygons first, and then clip - but this may or may not be 
possible in your situation.

If all you want is an area result, you could buffer the polys by a very 
small amount, union, and then negative-buffer the result.

If you can post examples of the failure case, more ideas might come to 
mind...

Brent Wood wrote:
> Hi,
>
> I'm not sure what the problem is here, hopefully someone can help.
>
> I have some polygons cropped to cell boundaries. (select intersection...)
> I want to generate the geomunion of these for each cell, which seems
> straightforward, but GEOS is throwing an error...
>
>    select astext(geomunion(track_cell_geom)) from effort_cells3 where cell_id =
> 73721;
> NOTICE:  TopologyException: no outgoing dirEdge found
> (168.077,-40.1961,-40.1961)
> ERROR:  GEOS union() threw an error!
>
>
>
> Can anyone say what this means & what I need to do to work around it?
>
> Thanks,
>
>   Brent Wood
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
>   

-- 
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022




More information about the postgis-users mailing list