Cuadro delimitador de geohash: esquinas lat/lon desde geohash, gratis
El geohash 9q8yy corresponde a una celda de 37,749023438 a 37,79296875 de latitud y de -122,431640625 a -122,387695312 de longitud, con centro en 37,770996094; -122,4096679685. Pegue cualquier geohash de 1 a 12 caracteres y obtenga el cuadro, las esquinas y el centro. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Cadena geohash
- 9q8yy
- Precisión
- 5
Un geohash empaqueta un punto geográfico en una cadena corta en base 32 intercalando bits de longitud y latitud y dividiendo el mapa del mundo en rectángulos anidados. Cada carácter adicional refina la celda hasta que la cadena representa un cuadro delimitador preciso en lugar de una única coordenada. Esta capacidad decodifica cualquier geohash válido de Gustavo Niemeyer en ese rectángulo: latitud y longitud mínimas y máximas, puntos de esquina con nombre y un centro apto para marcadores de mapa y consultas espaciales. Los caracteres no válidos ajenos al alfabeto geohash fallan con un error claro de entrada no válida y no se cobran.
Qué es el cuadro delimitador de un geohash y cómo enviar la cadena
Un geohash es un índice espacial jerárquico inventado para la búsqueda por proximidad y el teselado de mapas. El alfabeto usa diez dígitos y veintidós letras, omitiendo a, i, l y o para que las cadenas sigan siendo legibles y no se confundan con dígitos. La decodificación parte del rectángulo mundial completo WGS84, de longitud menos ciento ochenta a más ciento ochenta y de latitud menos noventa a más noventa.
Cada carácter aporta cinco bits; los bits alternan longitud y latitud, y cada bit elige la mitad inferior o superior del intervalo actual. Cuando se han consumido todos los caracteres, el intervalo restante es la celda que el geohash identifica de forma única. Se ignoran las mayúsculas y la respuesta devuelve un valor normalizado en minúsculas.
La longitud puede ir de uno a doce caracteres: los hashes cortos cubren regiones grandes, útiles para filtros gruesos, mientras que los largos estrechan el cuadro hasta celdas de nivel calle.
Cómo leer los campos bbox, las esquinas, el centro y la precisión
Las esquinas de conveniencia sw, ne, nw y se repiten las mismas extensiones como pares de latitud y longitud para las bibliotecas de mapas que esperan marcadores de suroeste y noreste o vértices de polígono. El campo center es el punto medio aritmético de los intervalos de latitud y longitud, la ubicación habitual del marcador cuando solo necesita un punto dentro de la celda.
Use bbox solo cuando construya filtros SQL BETWEEN o consultas R-tree; use las esquinas al dibujar un rectángulo superpuesto; use center al colocar un único marcador para una ubicación con hash procedente de una columna de base de datos. La precisión indica lo gruesa que es la celda: un carácter abarca una enorme franja continental, mientras que ocho o más caracteres suelen situarse a escala de barrio, según la latitud. Los fallos de validación nunca inventan coordenadas; fallan en cerrado para que las uniones espaciales no se amplíen silenciosamente.
Qué puede hacer con ella
Filtros espaciales en bases de datos
Convierta las claves geohash almacenadas en rangos mínimos y máximos de latitud y longitud para cláusulas BETWEEN, cargas de teselas y conjuntos de candidatos gruesos antes de una comprobación precisa de distancia.
Depuración de mapas y enseñanza
Pegue un geohash de los registros o de los deberes y vea al instante el rectángulo de la celda, las esquinas y el centro sin instalar una suite SIG de escritorio.
Preguntas frecuentes
¿Cómo obtengo un cuadro delimitador a partir de un geohash?
La respuesta incluye bbox con latitud y longitud mínimas y máximas, además de los puntos de esquina y el centro.
¿Qué caracteres están permitidos en un geohash?
Los dígitos 0-9 y las letras bcdfghjkmnpqrstuvwxyz (sin distinguir mayúsculas). Las letras a, i, l y o no se usan.
¿Esta capacidad codifica coordenadas en un geohash?
No. Esta capacidad solo decodifica un geohash existente en su cuadro delimitador WGS84. Codificar lat/lon es un producto distinto.
¿Es gratuita la calculadora de cuadro delimitador de geohash?
La herramienta del navegador funciona gratis en su dispositivo.
¿Qué longitudes de precisión se admiten?
Cadenas geohash de 1 a 12 caracteres. Las cadenas más largas refinan la celda; la precision de la respuesta es igual al número de caracteres tras la normalización.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su 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)Ejemplo de solicitud
{
"geohash": "9q8yy"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.geohash_bbox",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
El algoritmo es bisección puramente determinista, sin llamadas de red, de modo que los backends de mapas, las herramientas de logística y las canalizaciones SIG pueden fijar el JSON en las pruebas.
Qué es el cuadro delimitador de un geohash y cómo enviar la cadena
Envíe el campo obligatorio geohash como una cadena JSON; se aceptan los alias hash y gh cuando su cliente ya usa esos nombres. Las cadenas vacías, los campos ausentes, las longitudes fuera de rango y cualquier carácter fuera del alfabeto de base treinta y dos generan invalid_input con un mensaje que nombra el carácter incorrecto y su posición cuando es posible. Como el proceso es aritmética pura, geohashes idénticos siempre producen JSON idénticos, sin reloj, semilla aleatoria ni geocodificador externo.
Cómo leer los campos bbox, las esquinas, el centro y la precisión
En caso de éxito, la respuesta incluye geohash, precision igual a la longitud en caracteres y un objeto bbox con min_lat, min_lon, max_lat y max_lon en grados decimales. Esos cuatro números son la extensión cerrada WGS84 de la celda tras la bisección de bits, redondeados a un número de dígitos estable que crece suavemente con la precisión, de modo que los valores sigan siendo aptos para JSON sin ruido de falsa precisión. La etiqueta method es siempre geohash_base32_bisection, para que el código posterior pueda comprobar el algoritmo sin inspeccionar estructuras.
Uso de la API, precios, flujos de trabajo con mapas y límites prácticos
Envíe un cuerpo JSON con la cadena geohash obligatoria y use la herramienta gratuita en el navegador de cuadro delimitador de geohash para enseñar, depurar hashes almacenados y hacer comprobaciones visuales rápidas sin instalar bibliotecas geoespaciales. Use la API de prepago cuando una plataforma logística, un enrutador de reparto, una caché de teselas o una canalización de análisis necesite un contrato estable con saldo KIT a $0.002 por elemento correcto; los fallos de validación nunca consumen saldo después de que el motor rechace la solicitud. Combine este endpoint con pasos de geocodificación inversa o descarga de teselas en su propia pila cuando necesite nombres de lugares o imágenes: este producto solo expande la geometría del hash. La longitud está limitada a doce caracteres para cubrir las precisiones prácticas de mapa manteniendo acotado el trabajo del isolate del Worker. Los autores que distribuyen SDK pueden mapear min_lat y max_lon directamente a los constructores LatLngBounds de Leaflet, MapLibre o Google Maps: el mismo rectángulo que calcula cualquier biblioteca estándar de geohash cuando expone una API de cuadro delimitador.
Casos de integración
Canalizaciones de logística e IoT
Los dispositivos o sistemas de almacén emiten geohashes; los backends los expanden a cuadros delimitadores para comprobaciones de zona, mapas de calor y envolventes de rutas mediante una API de prepago estable.