Geohash'tan Enlem/Boylam Dönüştürücü

Enlem ve boylamını çözmek için bir geohash girin.

Sonuç

42,604980°
-5,603027°
± 0,021973° enlem, ± 0,021973° boylam

Nasıl hesaplanır?

Geohash, base-32 bir alfabeyle yazılmış dizedir (0-9 rakamları ve a, i, l, o hariç b-z harfleri). Her karakter 5 bit taşır. Bitler boylam ve enlem arasında dönüşümlü gider, boylamla başlar ve her bit mevcut aralığı ikiye böler: 1 üst yarıyı, 0 alt yarıyı korur. Araç enlem −90 ile 90, boylam −180 ile 180 aralığıyla başlar ve tüm bitleri uygular. Çözülen nokta son hücrenin merkezidir, hata ise hücrenin yüksekliğinin ve genişliğinin yarısıdır: hata = (maks − min) ÷ 2; derece olarak altı ondalıkla gösterilir. Girdi büyük/küçük harf duyarsızdır ve baştaki/sondaki boşluklar silinir, ancak alfabe dışındaki her karakter (metnin içindeki boşluk veya eğik çizgi dahil) aracın sonuç vermemesine yol açar. Geohash uzadıkça hücre küçülür; sonuç bir dikdörtgenin merkezidir, özgün noktanın kendisi değildir.

Örnek hesaplama

ezs42 geohash'ini çözelim: beş karakter, yani 25 bit; 13'ü boylamı, 12'si enlemi inceltir. Tüm bitler uygulanınca hücre merkezi enlem 42,604980° ve boylam -5,603027° olur (kuzey İspanya). Hücre iki yönde de ± 0,021973°'dir; araç bunu hata olarak yazar. Bir enlem derecesi yaklaşık 111 km olduğundan bu, kuzey-güney yönünde kabaca ±2,4 km eder. Bir karakter eklenince, ezs42e, ± 0,002747° enlem ve ± 0,005493° boylam çıkar; hücre çok daha küçüktür.

Bu örneği dene →

Sık yapılan hatalar

  • Sonucu tam nokta sanmak. Bu bir hücrenin merkezidir ve 5 karakterlik bir geohash, hata satırının gösterdiği gibi yalnızca birkaç kilometre hassasiyetindedir.
  • a, i, l ya da o içeren bir geohash yazmak; bunlar alfabede yoktur. Araç sonuç vermez; böyle bir harf genellikle yazım hatasıdır (0 ile o, 1 ile l karışır).
  • Hatanın iki yönde de aynı olduğunu sanmak. 5 karakterde ikisi de ± 0,021973°'dir, ama 6 karakterde ± 0,002747° enlem ve ± 0,005493° boylam çıkar; çünkü çift uzunluklarda hücre yüksekliğinin iki katı genişliktedir.
  • İki yakın yeri yalnızca ortak önekine bakarak kıyaslamak. Hücre sınırının hemen karşısındaki noktalar, birbirinden metrelerce uzakta olsalar bile tamamen farklı geohash'lere sahip olabilir.
  • Geohash'i bir URL'den fazladan karakterlerle (sondaki eğik çizgi veya tırnak) kopyalamak. Yalnızca geohash'in kendi karakterlerine izin verilir, aksi halde sonuç çıkmaz.

Bu hesaplama hakkında

Bir geohash, bir enlem/boylam konumunu dünya haritasını özyinelemeli olarak ikiye bölerek kısa bir base-32 dizesine kodlar: her karakter, boylam ve enlem bitlerini iç içe geçirerek olası alanı daraltır, bu yüzden daha uzun diziler daha küçük ve daha hassas hücreler anlamına gelir. Bu araç bu süreci tersine çevirir — geohash'ı, hücresinin merkez enlem ve boylamına, ayrıca geohash uzadıkça küçülen hata payına geri çözer.

Backend ve coğrafi veri geliştiricileri, hızlı yakınlık sorguları için geohash'a göre indeksleyen Elasticsearch veya MongoDB gibi sistemlerde saklanan konum verisini hata ayıklamak için geohash çözmeyi kullanır, CBS (GIS) analistleri geohash etiketli veri setlerini tekrar çizilebilir koordinatlara çevirmek için, API entegrasyon uzmanları ise üçüncü parti bir servis ham enlem/boylam yerine geohash döndürdüğünde bu aracı kullanır.

Bu faydalı oldu mu?

En fazla 3 tepki seçebilirsiniz.

Yorumlar

  • İlk yorumu siz yazın.

Popüler hesaplayıcılar

Tüm Hesaplayıcılar