Riquadro di delimitazione geohash
Il geohash 9q8yy corrisponde a una cella da 37,749023438 a 37,79296875 di latitudine e da -122,431640625 a -122,387695312 di longitudine, con centro in 37,770996094; -122,4096679685. Incolli un geohash da 1 a 12 caratteri per ottenere riquadro, angoli e centro. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Stringa geohash
- 9q8yy
- Precisione
- 5
Un geohash compatta un punto geografico in una breve stringa in base 32 intrecciando i bit di longitudine e latitudine e suddividendo la mappa del mondo in rettangoli annidati. Ogni carattere aggiuntivo affina la cella finché la stringa rappresenta un riquadro di delimitazione preciso anziché una singola coordinata. Questa capacità decodifica qualsiasi geohash valido di Gustavo Niemeyer in quel rettangolo: latitudine e longitudine minime e massime, punti d'angolo denominati e un centro adatto a marcatori di mappa e interrogazioni spaziali. I caratteri non validi esterni all'alfabeto geohash falliscono con un chiaro errore di input non valido e non vengono addebitati.
Che cos'è il riquadro di delimitazione di un geohash e come fornire la stringa
Un geohash è un indice spaziale gerarchico inventato per la ricerca per prossimità e il tiling delle mappe. L'alfabeto usa dieci cifre e ventidue lettere, saltando a, i, l e o affinché le stringhe restino leggibili ed evitino confusione con le cifre. La decodifica parte dal rettangolo mondiale WGS84 completo, da longitudine meno centoottanta a più centoottanta e da latitudine meno novanta a più novanta.
Ogni carattere contribuisce con cinque bit; i bit alternano longitudine e latitudine, e ogni bit sceglie la metà inferiore o superiore dell'intervallo corrente. Consumati tutti i caratteri, l'intervallo rimanente è la cella che il geohash identifica in modo univoco. Le maiuscole vengono ignorate e la risposta restituisce un valore normalizzato in minuscolo.
La lunghezza può variare da uno a dodici caratteri: gli hash corti coprono grandi regioni utili per filtri grossolani, mentre quelli lunghi restringono il riquadro fino a celle a livello stradale.
Lettura dei campi bbox, degli angoli, del centro e della precisione
Gli angoli di comodo sw, ne, nw e se ridicono le stesse estensioni come coppie di latitudine e longitudine per le librerie cartografiche che si aspettano marcatori sud-ovest e nord-est o vertici di poligono. Il campo center è il punto medio aritmetico degli intervalli di latitudine e longitudine, la posizione abituale del segnaposto quando Le serve un solo punto dentro la cella.
Usi bbox da solo quando costruisce filtri SQL BETWEEN o interrogazioni R-tree; usi gli angoli quando disegna un rettangolo sovrapposto; usi center quando posiziona un unico marcatore per una località con hash proveniente da una colonna di database. La precisione indica quanto è grossolana la cella: un carattere copre un'enorme fetta continentale, mentre otto o più caratteri spesso si collocano a scala di quartiere a seconda della latitudine. I fallimenti di validazione non inventano mai coordinate; falliscono in chiusura affinché i join spaziali non si allarghino silenziosamente.
Casi d'uso
Filtri spaziali nei database
Trasformi le chiavi geohash memorizzate in intervalli minimi e massimi di latitudine e longitudine per clausole BETWEEN, caricamenti di tile e insiemi grezzi di candidati prima di un controllo preciso della distanza.
Debug cartografico e didattica
Incolla un geohash dai log o dai compiti e veda subito il rettangolo della cella, gli angoli e il centro senza installare una suite GIS desktop.
Domande frequenti
Come ottengo un riquadro di delimitazione da un geohash?
La risposta include bbox con latitudine e longitudine minime e massime, più i punti d'angolo e il centro.
Quali caratteri sono ammessi in un geohash?
Le cifre 0-9 e le lettere bcdfghjkmnpqrstuvwxyz (senza distinzione di maiuscole). Le lettere a, i, l e o non sono usate.
Questa capacità codifica coordinate in un geohash?
No. Questa capacità si limita a decodificare un geohash esistente nel suo riquadro di delimitazione WGS84. Codificare lat/lon è un prodotto distinto.
Il calcolatore di riquadro di delimitazione geohash è gratuito?
Lo strumento del browser funziona gratis sul Suo dispositivo.
Quali lunghezze di precisione sono supportate?
Stringhe geohash da 1 a 12 caratteri. Le stringhe più lunghe affinano la cella; la precision della risposta è pari al numero di caratteri dopo la normalizzazione.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/geo/geohash-bbox \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"geohash":"9q8yy"}'const res = await fetch("https://api.kit.forhosting.com/geo/geohash-bbox", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"geohash": "9q8yy"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/geohash-bbox",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"geohash": "9q8yy"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/geohash-bbox", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"geohash":"9q8yy"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"geohash":"9q8yy"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/geohash-bbox", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"geohash": "9q8yy"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.geohash_bbox",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
L'algoritmo è una bisezione puramente deterministica, senza chiamate di rete, quindi backend cartografici, strumenti logistici e pipeline GIS possono fissare il JSON nei test.
Che cos'è il riquadro di delimitazione di un geohash e come fornire la stringa
Invii il campo obbligatorio geohash come stringa JSON; gli alias hash e gh sono accettati quando il Suo client usa già quei nomi. Stringhe vuote, campi mancanti, lunghezze fuori intervallo e qualsiasi carattere estraneo all'alfabeto in base trentadue sollevano invalid_input con un messaggio che indica il carattere errato e la sua posizione quando possibile. Poiché il percorso è pura aritmetica, geohash identici producono sempre JSON identici, senza orologio, seme casuale o geocodificatore esterno.
Lettura dei campi bbox, degli angoli, del centro e della precisione
In caso di successo la risposta include geohash, precision pari alla lunghezza in caratteri e un oggetto bbox con min_lat, min_lon, max_lat e max_lon in gradi decimali. Questi quattro numeri sono l'estensione chiusa WGS84 della cella dopo la bisezione dei bit, arrotondati a un numero stabile di cifre che cresce dolcemente con la precisione, così che i valori restino compatibili con JSON senza rumore di falsa precisione. L'etichetta method è sempre geohash_base32_bisection, così il codice a valle può verificare l'algoritmo senza annusare le strutture.
Uso dell'API, prezzi, flussi cartografici e limiti pratici
Invii un corpo JSON con la stringa geohash obbligatoria e usi lo strumento gratuito nel browser per il riquadro di delimitazione geohash per insegnare, fare debug di hash memorizzati ed eseguire controlli visivi rapidi senza installare librerie geospaziali. Usi l'API prepagata quando una piattaforma logistica, un router di consegne, una cache di tile o una pipeline analitica necessita di un contratto stabile con saldo KIT a $0.002 per elemento riuscito; i fallimenti di validazione non consumano mai saldo dopo che il motore rifiuta la richiesta. Abbini questo endpoint a passaggi di geocodifica inversa o recupero di tile nel Suo stack quando Le servono nomi di luoghi o immagini: questo prodotto espande soltanto la geometria dell'hash. La lunghezza è limitata a dodici caratteri per coprire le precisioni cartografiche pratiche mantenendo contenuto il lavoro dell'isolate del Worker. Gli autori che distribuiscono SDK possono mappare min_lat e max_lon direttamente nei costruttori LatLngBounds di Leaflet, MapLibre o Google Maps: lo stesso rettangolo che qualsiasi libreria geohash standard calcola quando espone un'API di riquadro di delimitazione.
Casi di integrazione
Pipeline logistiche e IoT
Dispositivi o sistemi di magazzino emettono geohash; i backend li espandono in riquadri di delimitazione per controlli di zona, mappe di calore e inviluppi di instradamento tramite un'API prepagata stabile.