Details
-
Bug
-
Status: Reopened
-
Minor
-
Resolution: Unresolved
-
2.9
-
None
-
None
-
New
Description
i'm finding the Geohash support in the spatial package to be rather unreliable.
Here is the outcome of a test that encodes/decodes the same lat/lon and geohash a few times.
the format:
action geohash=(latitude, longitude)
the result:
encode u173zq37x014=(52.3738007,4.8909347)
decode u173zq37x014=(52.373799999999996,4.890934)
encode u173zq37rpbw=(52.373799999999996,4.890934)
decode u173zq37rpbw=(52.373799999999996,4.8909329999999995)
encode u173zq37qzzy=(52.373799999999996,4.8909329999999995)
if I now change to the google code implementation:
encode u173zq37x014=(52.3738007,4.8909347)
decode u173zq37x014=(52.37380061298609,4.890934377908707)
encode u173zq37x014=(52.37380061298609,4.890934377908707)
decode u173zq37x014=(52.37380061298609,4.890934377908707)
encode u173zq37x014=(52.37380061298609,4.890934377908707)
Note the differences between the geohashes in both situations and the lat/lon's!
Now things get worse if you work on low-precision geohashes:
decode u173=(52.0,4.0)
encode u14zg429yy84=(52.0,4.0)
decode u14zg429yy84=(52.0,3.999999)
encode u14zg429ywx6=(52.0,3.999999)
and google:
decode u173=(52.20703125,4.5703125)
encode u17300000000=(52.20703125,4.5703125)
decode u17300000000=(52.20703125,4.5703125)
encode u17300000000=(52.20703125,4.5703125)
We are using geohashes extensively and will now use the google code version unfortunately.