Caja delimitadora por radio para latitud y longitud
Un área de 1000 m alrededor de 51,5074, −0,1278 se convierte en los cuatro límites del menor rectángulo de latitud y longitud que la encierra, con avisos para el antimeridiano y los polos. Sirve de filtro rápido antes de medir la distancia exacta. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Latitud
- 51,5074
- Longitud
- -0,1278
- Radio (m)
- 1 000
- Latitud mínima
- 51,4984067964
- Longitud mínima
- -0,1422489201
- Latitud máxima
- 51,5163932036
- Longitud máxima
- -0,1133510799
Esta calculadora convierte una latitud central, una longitud central y un radio en metros en el rectángulo geográfico más pequeño que encierra el búfer circular correspondiente sobre una Tierra esférica. El resultado ofrece coordenadas mínimas y máximas, además de indicadores para cruces del antimeridiano y cobertura de todas las longitudes. Resulta útil cuando una base de datos, un mapa o un índice espacial necesita un filtro rectangular rápido antes de aplicar una prueba de distancia más precisa.
Introduzca un centro y un radio con unidades claras
La latitud debe estar entre -90 y 90, la longitud entre -180 y 180 y el radio no puede ser negativo. Un radio cero es válido y genera una caja degenerada cuyos límites coinciden con el punto original. El cálculo emplea el radio terrestre medio IUGG de 6,371,008.8 metros, un modelo esférico práctico para búsquedas, vistas de mapas y filtros de bases de datos.
No debe tratar este rectángulo como un límite topográfico de precisión, pues su finalidad es encerrar de forma fiable un área circular según el modelo indicado. Mantenga las mismas referencias de coordenadas en todo el flujo y no pase kilómetros, millas o grados donde se esperan metros.
Interprete resultados normales y cruces del antimeridiano
En un resultado normal, cada mínimo es menor que su máximo y el rectángulo puede utilizarse directamente en una consulta por rangos. Cerca de 180 grados, la longitud requiere un tratamiento especial. No invierta los bordes, porque seleccionaría la gran región complementaria.
La latitud sigue siendo un único intervalo. Para una búsqueda robusta, filtre primero con la caja y calcule después la distancia ortodrómica real; estar dentro del rectángulo no garantiza estar dentro del círculo.
Gestione búferes polares y radios globales
Un búfer que alcanza cualquiera de los polos no puede expresarse mediante un intervalo estrecho de longitudes, porque todos los meridianos se encuentran allí. La misma cobertura completa se aplica si el radio alcanza media circunferencia de la esfera. Esta decisión evita divisiones inestables cerca de los polos y cajas demasiado estrechas que excluirían puntos válidos.
El algoritmo es determinista y no utiliza red, datos guardados ni tiempo. Es apropiado para lotes reproducibles, claves de caché, pruebas y cálculos en navegador. Recuerde que la caja es una envolvente eficiente, no el contorno exacto del círculo.
Qué puede hacer con ella
Prefiltrar una búsqueda de lugares cercanos
Cree rangos de latitud y longitud aptos para índices antes de calcular distancias exactas sobre menos candidatos.
Definir la vista inicial de un mapa
Obtenga límites que contengan un radio alrededor de una ubicación, incluso junto a polos y antimeridiano.
Dividir trabajo geoespacial
Convierta tareas de punto y radio en extensiones rectangulares reproducibles para cachés, teselas, colas u operaciones espaciales.
Preguntas frecuentes
¿Cuánto cuesta una solicitud?
El cálculo también puede ejecutarse en el navegador cuando la web lo admite.
¿Qué modelo terrestre se utiliza?
El cálculo usa una esfera con el radio terrestre medio IUGG de 6,371,008.8 metros.
¿Todo punto de la caja está dentro del radio?
No. La caja encierra el búfer circular y sus esquinas pueden quedar más lejos. Aplique una prueba de distancia cuando necesite exactitud.
¿Cómo consulto una caja que cruza el antimeridiano?
Divida la longitud en dos rangos: desde la longitud mínima hasta 180 y desde −180 hasta la máxima. Cuando el aviso de cruce está activo, la mínima es mayor que la máxima a propósito, así que no las intercambie.
¿Qué ocurre cuando el área alcanza un polo?
Las longitudes pasan a −180 y 180 y se activa el aviso de cobertura total, porque todos los meridianos se juntan en el polo. En ese caso, filtre solo por los límites de latitud y omita el filtro de longitud.
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/buffer-bbox \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lat":51.5074,"lon":-0.1278,"radius_m":1000}'const res = await fetch("https://api.kit.forhosting.com/geo/buffer-bbox", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lat": 51.5074,
"lon": -0.1278,
"radius_m": 1000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/buffer-bbox",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lat": 51.5074,
"lon": -0.1278,
"radius_m": 1000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/buffer-bbox", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lat":51.5074,"lon":-0.1278,"radius_m":1000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lat":51.5074,"lon":-0.1278,"radius_m":1000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/buffer-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
{
"lat": 51.5074,
"lon": -0.1278,
"radius_m": 1000
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.buffer_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
Introduzca un centro y un radio con unidades claras
Indique el centro mediante los valores decimales lat y lon, y escriba el radio en metros en radius_m. Las coordenadas se redondean a diez decimales para producir JSON estable sin perder precisión útil.
Interprete resultados normales y cruces del antimeridiano
Los cuatro valores principales son min_lat, min_lon, max_lat y max_lon. Si el búfer cruza el antimeridiano, las longitudes pasan de valores positivos a negativos y crosses_antimeridian vale true. Entonces min_lon es mayor que max_lon de forma intencionada. Consulte dos rangos: desde min_lon hasta 180 y desde -180 hasta max_lon.
Gestione búferes polares y radios globales
Por eso la calculadora devuelve min_lon igual a -180, max_lon igual a 180 y covers_all_longitudes como true cuando el intervalo de latitud llega a un polo. En esos casos, crosses_antimeridian es false, ya que dividir el intervalo no aportaría información. Use los límites de latitud y omita el filtro longitudinal cuando covers_all_longitudes sea true.
Preguntas técnicas
¿Por qué min_lon puede ser mayor que max_lon?
Ese orden indica un cruce del antimeridiano. Trate el resultado como dos rangos longitudinales y no intercambie los bordes.
¿Qué ocurre cuando el búfer alcanza un polo?
La longitud pasa de -180 a 180 y covers_all_longitudes vale true porque todos los meridianos convergen en el polo.