Punto medio lossodromico
Una lossodromia interseca ogni meridiano con lo stesso angolo di rotta. Questo calcolatore trova la coordinata a metà del percorso a direzione costante fra due punti di latitudine e longitudine.
Esegui gratis nel browser
Usa la geometria lossodromica sferica anziché la semplice media delle coordinate, mantenendo valido il risultato sulle rotte lunghe e negli attraversamenti dell’antimeridiano. Inserisca coordinate in gradi decimali, scelga la precisione e otterrà un punto normalizzato utile per navigazione, cartografia, etichette di rotta o verifiche indipendenti.
Che cosa rappresenta il punto medio lossodromico
Il risultato è la posizione a metà di una lossodromia sferica, non il punto medio di un arco di cerchio massimo né la media aritmetica di due coppie di latitudine e longitudine. Una lossodromia mantiene una direzione di bussola costante mentre attraversa meridiani successivi. Tale proprietà l’ha resa importante nella navigazione marittima tradizionale e resta utile quando una rotta è definita intenzionalmente da una direzione fissa. Nella formulazione sferica la latitudine varia uniformemente, mentre la longitudine va calcolata attraverso la latitudine isometrica, trasformazione logaritmica propria della geometria di Mercatore. La distinzione conta perché la stessa separazione longitudinale rappresenta distanze diverse alle varie latitudini. Su un breve tratto locale più metodi possono sembrare quasi uguali; su grandi spostamenti nord-sud o ad alte latitudini la differenza diventa evidente. Usi questo risultato per un percorso realmente a direzione costante. Se serve l’arco superficiale più breve, scelga invece un calcolatore del punto medio di cerchio massimo.
Come inserire le coordinate e leggere il risultato
Indichi latitudine e longitudine iniziali in lat1 e lon1, quindi i valori finali in lat2 e lon2. Le coordinate sono in gradi decimali: la latitudine è negativa a sud dell’equatore e positiva a nord, mentre la longitudine è negativa a ovest di Greenwich e positiva a est. La longitudine può includere entrambi gli estremi dell’intervallo convenzionale da −180 a 180 gradi. Le latitudini esatte dei poli vengono rifiutate perché l’espressione della latitudine isometrica diventa singolare; i valori vicini restano validi. La risposta contiene lat e lon del punto a metà della lossodromia. La longitudine è normalizzata nell’intervallo standard, caratteristica essenziale quando la rotta più breve a direzione costante attraversa l’antimeridiano. Per esempio, da 170 gradi est a 170 gradi ovest il percorso deve passare vicino a 180 gradi, non da Greenwich. Il campo facoltativo di precisione ammette da zero a dodici decimali e modifica solo visualizzazione e arrotondamento, non il modello geometrico o l’accuratezza topografica.
Metodo, ipotesi e limiti pratici
Il calcolo considera la Terra una sfera e applica la relazione standard del punto medio lossodromico. Converte prima le due latitudini in radianti e ne prende il valore intermedio, poi ricava la longitudine corrispondente confrontando i logaritmi dei fattori della proiezione di Mercatore. Quando gli estremi hanno quasi la stessa latitudine, il denominatore logaritmico tende a zero e l’algoritmo usa il punto medio delle longitudini precedentemente svolte. Prima del calcolo, un attraversamento dell’antimeridiano viene disposto sull’intervallo longitudinale più corto; alla fine la longitudine viene nuovamente normalizzata. Il metodo è deterministico e non usa rete, dati di rotta memorizzati, casualità o ora corrente. La risposta sferica è adatta a stime nautiche, annotazioni cartografiche, didattica e controlli di coerenza. Non sostituisce un rilievo catastale o geodetico, per il quale un ellissoide rappresenta meglio la Terra. Una lossodromia è inoltre generalmente più lunga di un cerchio massimo, salvo percorsi speciali come equatore o meridiano. Ogni richiesta API costa $0.002.
Casi d'uso
Etichettare una rotta a direzione costante
Collochi un’etichetta o un’annotazione sulla vera coordinata intermedia di un tratto lossodromico.
Verificare calcoli di navigazione marittima
Confronti il punto medio di un sistema cartografico o nautico con un risultato sferico deterministico indipendente.
Dividere un tratto lossodromico
Usi la coordinata restituita come separazione prima di elaborare due sezioni a direzione costante.
Domande frequenti
Equivale alla media delle due coordinate?
No. La latitudine è intermedia nella formulazione sferica, ma la longitudine deriva dalla latitudine isometrica per collocare il punto a metà della rotta costante.
È uguale al punto medio di un cerchio massimo?
Di solito no. La lossodromia conserva una direzione di bussola costante, mentre il cerchio massimo segue l’arco sferico più breve.
Che cosa accade attraversando l’antimeridiano?
Il calcolo svolge l’intervallo longitudinale più corto, trova il punto medio e normalizza il risultato fra −180 e 180 gradi.
Posso inserire uno dei poli?
No. Le latitudini esatte di −90 e 90 gradi sono rifiutate perché la latitudine isometrica lossodromica è singolare ai poli.
Quanto costa una richiesta API?
Ogni richiesta costa $0.002. Il calcolo nel browser usa la stessa logica deterministica.
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/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)Esempio di richiesta
{
"lat1": 51.5074,
"lon1": -0.1278,
"lat2": 40.7128,
"lon2": -74.006
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.rhumb_midpoint",
"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. |