Punto medio de una loxodrómica
Una loxodrómica cruza todos los meridianos con el mismo ángulo de rumbo. Esta calculadora obtiene la coordenada situada a mitad de ese trayecto de rumbo constante entre dos puntos de latitud y longitud.
Ejecutar — gratis
Aplica geometría loxodrómica esférica en vez de promediar las coordenadas, por lo que el resultado sigue siendo útil en rutas largas y cruces del antimeridiano. Introduzca coordenadas en grados decimales, elija la precisión y recibirá un punto medio normalizado para navegación, cartografía, rotulación de rutas o comprobaciones independientes.
Qué representa el punto medio de una loxodrómica
El resultado es la posición situada a mitad de una loxodrómica esférica; no es el punto medio de un arco de círculo máximo ni el simple promedio aritmético de dos pares de latitud y longitud. Una loxodrómica mantiene un rumbo de brújula constante al cruzar meridianos sucesivos. Esta propiedad fue especialmente valiosa en la navegación marítima tradicional y sigue siendo pertinente cuando una ruta se define mediante un rumbo fijo. En el modelo esférico la latitud cambia de manera uniforme, pero la longitud debe calcularse mediante la latitud isométrica, una transformación logarítmica propia de la geometría de Mercator. La diferencia importa porque una misma separación longitudinal representa distintas distancias sobre la superficie según la latitud. En un tramo local corto, varios métodos pueden parecer iguales; en recorridos extensos de norte a sur o cerca de latitudes altas, la divergencia resulta visible. Use este resultado cuando la ruta sea expresamente de rumbo constante. Si necesita el arco superficial más corto, debe emplear un calculador de punto medio de círculo máximo.
Cómo introducir las coordenadas e interpretar el resultado
Indique la latitud y la longitud iniciales en lat1 y lon1, seguidas de los valores finales en lat2 y lon2. Las coordenadas se expresan en grados decimales: la latitud es negativa al sur del ecuador y positiva al norte; la longitud es negativa al oeste de Greenwich y positiva al este. La longitud puede incluir cualquiera de los extremos del intervalo convencional de −180 a 180 grados. Se rechazan las latitudes exactas de los polos porque la expresión de latitud isométrica se vuelve singular, aunque sí se admiten valores cercanos. La respuesta contiene lat y lon para el punto situado a mitad de la loxodrómica. La longitud se normaliza al intervalo estándar, algo esencial cuando la ruta más corta de rumbo constante cruza el antimeridiano. Por ejemplo, un trayecto de 170 grados este a 170 grados oeste debe pasar cerca de 180 grados y no por Greenwich. El campo opcional de precisión admite de cero a doce decimales; solo modifica el redondeo, no el modelo geométrico ni la exactitud física.
Método, supuestos y límites prácticos
El cálculo considera la Tierra como una esfera y aplica la relación estándar del punto medio loxodrómico. Primero convierte ambas latitudes a radianes y obtiene la latitud intermedia; después determina la longitud correspondiente comparando logaritmos de factores de la proyección de Mercator. Cuando los extremos tienen prácticamente la misma latitud, el denominador logarítmico se aproxima a cero y el algoritmo usa el punto medio de las longitudes previamente desplegadas. Antes del cálculo, cualquier cruce del antimeridiano se ajusta al intervalo longitudinal más corto; al final, la longitud vuelve a normalizarse. El proceso es determinista y no utiliza servicios de red, datos de rutas almacenados, valores aleatorios ni la hora actual. La respuesta esférica sirve para estimaciones de navegación, anotaciones cartográficas, enseñanza y verificaciones de coherencia. No sustituye un levantamiento catastral o geodésico, donde un elipsoide representa mejor la Tierra. Recuerde además que una loxodrómica suele ser más larga que un círculo máximo, salvo en trayectorias especiales como el ecuador o un meridiano. Cada solicitud a la API cuesta $0.002.
Qué puede hacer con ella
Rotular una ruta de rumbo constante
Coloque una etiqueta o anotación en la coordenada realmente intermedia de un tramo loxodrómico.
Comprobar cálculos de navegación marítima
Compare el punto medio de un sistema cartográfico o náutico con un resultado esférico determinista e independiente.
Dividir un tramo loxodrómico
Use la coordenada devuelta como punto de separación antes de procesar dos secciones de rumbo constante.
Preguntas frecuentes
¿Equivale a promediar ambas coordenadas?
No. La latitud queda a mitad en la formulación esférica, pero la longitud se obtiene mediante la latitud isométrica para que el punto esté a mitad del trayecto de rumbo constante.
¿Es igual al punto medio de un círculo máximo?
Por lo general, no. La loxodrómica conserva un rumbo de brújula constante, mientras que el círculo máximo sigue el arco esférico más corto.
¿Qué ocurre si la ruta cruza el antimeridiano?
El cálculo despliega el intervalo longitudinal más corto antes de hallar el punto medio y normaliza después el resultado entre −180 y 180 grados.
¿Puedo introducir cualquiera de los polos?
No. Se rechazan las latitudes exactas de −90 y 90 grados porque la latitud isométrica loxodrómica es singular en los polos.
¿Cuánto cuesta una solicitud a la API?
Cada solicitud cuesta $0.002. El cálculo del navegador utiliza la misma lógica determinista.
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/rhumb-midpoint \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lat1":51.5074,"lon1":-0.1278,"lat2":40.7128,"lon2":-74.006}'const res = await fetch("https://api.kit.forhosting.com/geo/rhumb-midpoint", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lat1": 51.5074,
"lon1": -0.1278,
"lat2": 40.7128,
"lon2": -74.006
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/rhumb-midpoint",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lat1": 51.5074,
"lon1": -0.1278,
"lat2": 40.7128,
"lon2": -74.006
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/rhumb-midpoint", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lat1":51.5074,"lon1":-0.1278,"lat2":40.7128,"lon2":-74.006}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lat1":51.5074,"lon1":-0.1278,"lat2":40.7128,"lon2":-74.006}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/rhumb-midpoint", 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
{
"lat1": 51.5074,
"lon1": -0.1278,
"lat2": 40.7128,
"lon2": -74.006
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.rhumb_midpoint",
"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. |