This is expected behaviour. The difference is due to the effects of
finite precision and rounding. Basically your only choice for avoiding
this kind of behaviour is to control your precision model, by using
SnapToGrid or some other equivalent approach.
Or, you can change the process that consume this result to be more
tolerant of very small discrepancies.
Mike Leahy wrote:
Hello list,
I'm having a problem with st_difference, where two overlapping
geometries will return an empty geometrycollection, as if the do not
overlap. However, if I use st_difference on the same geometries, but
converted to EWKT, then back, then using st_difference yields the
expected output. Basically, this is what I'm getting (minus the
output coords):
# select st_astext(st_difference(g1,g2)),
st_astext(st_difference(st_asewkt(g1),st_asewkt(g2))) from temp;
st_astext | st_astext
--------------------------+-------------------------------
GEOMETRYCOLLECTION EMPTY | POLYGON(( .... ))
(1 row)
The resulting (correct) polygon is very small (a total area of
0.00048828125, using UTM coordinates), so maybe there's a problem with
that? The result of st_overlaps(g1,g2) is true for the same data that
cause this problem.
I could email someone the geometries if that would help.
Regards,
Mike
_______________________________________________
postgis-users mailing list
[email protected]
http://postgis.refractions.net/mailman/listinfo/postgis-users
--
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022
_______________________________________________
postgis-users mailing list
[email protected]
http://postgis.refractions.net/mailman/listinfo/postgis-users