Paul Ramsey wrote:

More to the point, it's a float32 box, not a double64 box. Your two
points are in fact different, waaaaaay down deep into the precision of
their 64-bit double coordinates. So deep in fact that the human
readable decimal representations don't show it (look at the hexewkb
output, and you'll see the differences, you should be able to do that,
points are small enough to eyeball in hex).

So when the 32-bit box is extracted from the 64-bit doubles, the
points are identical at that level of precision and = returns true,
while st_equals working against the doubles does not.

P

Again, another demonstration as to why BOX2DFLOAT4s should never be used for calculations and only for internal "within" checks :(


ATB,

Mark.

--
Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
http://www.siriusit.co.uk
t: +44 870 608 0063

Sirius Labs: http://www.siriusit.co.uk/labs
_______________________________________________
postgis-users mailing list
[email protected]
http://postgis.refractions.net/mailman/listinfo/postgis-users

Reply via email to