[geos-devel] Small gaps between results of GEOSDifference?

Sandro Santilli strk at keybit.net
Fri Feb 15 04:38:30 PST 2013


On Fri, Feb 15, 2013 at 01:02:11PM +0100, Marco Hugentobler wrote:

> I have two geometries (A, B). Now I'm doing GEOSDifference(B, A) and
> then a union of A and the result of the difference operation. The
> result is different compared to GEOSUnion(A, B).
> Shouldn't GEOSUnion(A,B) be equal to GEOSUnion( A, GEOSDifference(B,
> A) ) ? 

Overlay operations can throw exceptions due to robustness issues
during noding. In turn when this happens, a number of heuristics are
attempted to try at working around the problem. If you want to further
debug your case you may try to build geos yourself with uncommenting
the GEOS_DEBUG_BINARYOP define in include/geos/geom/BinaryOp.h and
see what happens to each operation. 

--strk;


More information about the geos-devel mailing list