5 releases
0.1.4 | Oct 18, 2024 |
---|---|
0.1.3 | Oct 15, 2024 |
0.1.2 | Oct 15, 2024 |
0.1.1 | Oct 15, 2024 |
0.1.0 | Oct 15, 2024 |
#87 in Geospatial
11KB
149 lines
Geohasher
Simple geohash encode/decode functions without any dependencies.
Installation
cargo install geohasher
Encoding
To encode a latitude and longitude into a geohash:
use geohasher::encode;
let geohash = encode(57.64911, 10.40744, 8);
assert_eq!(geohash, "u4pruydq");
Decoding
To decode a geohash back into latitude and longitude:
use geohasher::decode;
let (lat, lng) = decode("u4pruydq");
assert!((lat - 57.64911).abs() < 0.001);
assert!((lng - 10.40744).abs() < 0.001);
References:
According to Wikipedia:
"Geohash is a public domain geocode system invented in 2008 by Gustavo Niemeyer[1] which encodes a geographic location into a short string of letters and digits. Similar ideas were introduced by G.M. Morton in 1966[2]."