Haversine-Entfernung – Großkreis in km, mi und m zwischen zwei Punkten
Erhalten Sie die Großkreisentfernung zwischen zwei GPS-Punkten in Kilometern, Meilen und Metern auf einmal: Von (40,7128; -74,006) nach (51,5074; -0,1278) sind es 5570,22218 km auf einer Kugel mit 6371 km Radius. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Lat1
- 40,7128
- Lng1
- -74,006
- Lat2
- 51,5074
- Lng2
- -0,1278
- Km
- 5.570,22218
- Mi
- 3.461,175597
- M
- 5.570.222,18
Wenn Sie den kürzesten Weg über die Erdoberfläche zwischen zwei GPS-Koordinaten benötigen, führen ebene Mathematik und einfache euklidische Distanz in die Irre: Sie ignorieren die Krümmung und erzeugen bei Sprüngen von Stadt zu Stadt oder von Land zu Land große Fehler. Die Haversine-Formel behandelt den Planeten als Kugel mit festem Radius und liefert die Bogenlänge des Großkreises – die übliche Standardentfernung für die erste Abschätzung in Logistik, Filialfinder-APIs, Vorfiltern für die Flottenplanung und Geodatenanalysen. Dieser Endpunkt nimmt zwei Paare aus Breiten- und Längengrad entgegen, prüft deren Wertebereiche und gibt die Entfernung in Kilometern, gesetzlichen Meilen und Metern in einem einzigen deterministischen Aufruf zurück – ohne Kartenkacheln, ohne Geokodierung durch Dritte und ohne versteckten Netzwerksprung.
Was die Haversine-Formel tatsächlich berechnet
Die Haversine-Formel ist ein numerisch stabiles Verfahren, um aus den Breiten- und Längengraden zweier Punkte auf einer Kugel den Zentriwinkel zwischen ihnen zu bestimmen und diesen Winkel dann mit dem Kugelradius zu multiplizieren, um die Bogenlänge zu erhalten. Einfach gesagt: Gegeben Punkt A und Punkt B beantwortet sie, wie weit Sie reisen würden, wenn Sie dem kürzesten Weg auf einer glatten Kugel statt auf einer flachen Karte folgten.
Diese Fähigkeit verwendet den üblichen mittleren Erdradius von 6371 Kilometern – jenen Wert, den die meisten quelloffenen GIS-Schnipsel, PostGIS-artigen Tutorials und mobilen SDKs für Haversine dokumentieren. Sie verwendet kein ellipsoidisches Modell wie Vincenty oder Karney auf WGS84, sodass die Ergebnisse um einen winzigen Bruchteil eines Prozents von geodätischen Bibliotheken abweichen können, die die Abplattung an den Polen modellieren – für Filialradien, ETA-Bänder bei Lieferungen und Analyse-Klassen in der Regel völlig ausreichend, aber kein Ersatz für vermessungstaugliche Genauigkeit.
Die Ausgabe umfasst stets drei Einheiten: Kilometer (km), internationale gesetzliche Meilen (mi, mit 1609,344 Metern je Meile) und Meter (m).
Eingabevertrag, Koordinatenbereiche und häufige Fehler
Der Breitengrad muss im geschlossenen Intervall von −90 bis 90 liegen; der Längengrad muss zwischen −180 und 180 einschließlich liegen. Fehlende Felder, nicht endliche Werte oder Zeichenketten, die sich nicht als Zahlen deuten lassen, scheitern ebenfalls an der Prüfung, bevor überhaupt eine Entfernung berechnet wird.
Ein häufiger Fehler auf Client-Seite ist das Vertauschen von Breiten- und Längengrad (etwa das Einfügen von Stadtzentren als lng,lat aus einer GeoJSON-artigen Gewohnheit): Der Aufruf kann gelingen, wenn beide Zahlen noch in beide Bereiche fallen, doch die Entfernung ergibt für Ihre gemeinten Städte Unsinn – prüfen Sie stets, dass lat die Nord-Süd- und lng die Ost-West-Richtung angibt. Identische Punkte liefern korrekt die Entfernung null. Antipodische Paare werden unterstützt; internes Begrenzen verhindert, dass Fließkomma-Randfälle NaN erzeugen.
Wo die Großkreisentfernung in eine Produkt-Pipeline passt
Nutzen Sie Haversine als günstige, nachvollziehbare Distanz-Grundfunktion innerhalb von Radiusprüfungen an der Kasse, der Auswahl des nächsten Lagers, Betrugssignalen, die die Rechnungsstadt mit dem Geräte-GPS vergleichen, Aktivitätsübersichten in Sport-Apps und CSV-Massenanreicherungen, die zu jedem Ausgangs-Ziel-Paar km oder Meilen benötigen. Kombinieren Sie sie nur dann mit einem Geokodierer, wenn Sie von Adressen ausgehen; sobald Sie bereits Lat/Lng haben, vermeiden Sie erneutes Geokodieren allein zur Distanzbestimmung. Für mehrstufige Routen, Fahrzeiten auf der Straße oder abbiegegenaue Wege behalten Sie eine eigene Routing-Engine – Haversine misst Luftlinie, keine Fahrstrecke.
Für rechtliche Grundstücksgrenzen oder Katasterarbeiten verwenden Sie ellipsoidische Geodäten und ein lokales CRS.
Anwendungsfälle
Filialfinder- und Lieferradius-Prüfungen
Vergleichen Sie den GPS-Punkt eines Kunden mit jeder Filial- oder Dark-Store-Koordinate und behalten Sie nur Standorte innerhalb von N Kilometern oder Meilen, bevor Sie nach Bestand oder ETA ordnen.
Vorfilter für Logistik und Lager
Verwerfen Sie in einem Flotten- oder Mehrlagersystem Kandidaten-Standorte außerhalb einer Großkreis-Schwelle, sodass teure Straßen-Routing-Aufrufe nur für die engere Auswahl laufen.
Häufige Fragen
Was ist die Haversine-Entfernungsformel?
Es ist eine Formel der sphärischen Trigonometrie, die zwei Breiten- und Längengrade in den Zentriwinkel zwischen ihnen umwandelt und diesen dann mit dem Erdradius (hier 6371 km) multipliziert, um die Bogenlänge des Großkreises zu erhalten.
Welche Koordinatenbereiche werden akzeptiert?
Der Breitengrad muss zwischen −90 und 90 einschließlich liegen; der Längengrad zwischen −180 und 180 einschließlich.
Ist das dasselbe wie die Fahrstrecke?
Nein. Haversine misst die Luftlinie auf einer Kugel. Fahrstrecke, Verkehr und Höhenunterschiede erfordern eine Routing-Engine; nutzen Sie dies für Radiusfilter und Schätzungen der geraden Linie.
Warum stimmt die Entfernung nicht, obwohl die Koordinaten angenommen wurden?
Meist sind Breite und Länge vertauscht: Beide Zahlen können trotzdem in den gültigen Bereichen liegen, daher wird nichts abgelehnt, doch die Punkte verschieben sich. Eine weitere Ursache sind projizierte Gittermeter statt Dezimalgrad, die das Werkzeug nicht erwartet.
Wie stark weicht Haversine von einer Entfernung auf dem Ellipsoid ab?
Meist um einen kleinen Bruchteil eines Prozents. Haversine behandelt die Erde als Kugel und ignoriert die Abplattung an den Polen: Das reicht für Filialradien, Liefergebiete und Auswertungen, nicht aber für Vermessung oder Grundstücksgrenzen.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/geo/haversine \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lat1":40.7128,"lng1":-74.006,"lat2":51.5074,"lng2":-0.1278}'const res = await fetch("https://api.kit.forhosting.com/geo/haversine", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lat1": 40.7128,
"lng1": -74.006,
"lat2": 51.5074,
"lng2": -0.1278
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/haversine",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lat1": 40.7128,
"lng1": -74.006,
"lat2": 51.5074,
"lng2": -0.1278
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/haversine", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lat1":40.7128,"lng1":-74.006,"lat2":51.5074,"lng2":-0.1278}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lat1":40.7128,"lng1":-74.006,"lat2":51.5074,"lng2":-0.1278}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/haversine", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"lat1": 40.7128,
"lng1": -74.006,
"lat2": 51.5074,
"lng2": -0.1278
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.haversine",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Was die Haversine-Formel tatsächlich berechnet
Dieselben Eingaben liefern immer dasselbe JSON, denn die Umsetzung ist reine Arithmetik mit fester Rundung – keine Uhren, keine Zufallswerte und kein entfernter Kachel- oder Geokodierungsdienst im Ablauf.
Eingabevertrag, Koordinatenbereiche und häufige Fehler
Senden Sie vier Zahlen: lat1 und lng1 für den Ausgangspunkt, lat2 und lng2 für das Ziel, allesamt in Dezimalgrad. Werte außerhalb dieser Bereiche werden mit invalid_input abgewiesen und niemals berechnet. Eine weitere Falle ist das Übergeben von projizierten Koordinaten oder lokalen Rastermetern anstelle von Dezimalgraden im WGS84-Stil; diese API erwartet ausschließlich geografische Grad. Der Preis beträgt pauschal $0.002 je erfolgreichem Element über die API; der Weg über das Browser-Werkzeug für Tier-A-Parse-Fähigkeiten ist so gestaltet, dass Sie experimentieren können, ohne zuvor eine vollständige Pipeline verdrahten zu müssen.
Wo die Großkreisentfernung in eine Produkt-Pipeline passt
Rufen Sie sie aus einem Worker, einem Backend-Job oder einem Skript auf: Übergeben Sie die vier Koordinaten, lesen Sie km/mi/m aus dem JSON-Ergebnis und speichern oder zeigen Sie sie an. Für alles dazwischen – Dashboards, SLAs und API-Filter – ist dieser Endpunkt der kleine, deterministische Baustein: Bereiche prüfen, den Großkreis messen, drei Einheiten zurückgeben, fertig.
Integrationsbeispiele
CSV-Massenanreicherung von Ausgangs-Ziel-Paaren
Fügen Sie Spalten für km, mi und m zu Versand-, Telemetrie- oder Ereignisexporten hinzu, ohne einen GIS-Stack aufzusetzen oder eine kostenpflichtige Karten-API aufzurufen.
Technische Fragen
Welche Einheiten gibt geo.haversine zurück?
Jede erfolgreiche Antwort enthält km (Kilometer), mi (internationale gesetzliche Meilen) und m (Meter) sowie die für die Berechnung verwendete Konstante radius_km.
Wie viel kostet die API?
Jede erfolgreiche Anfrage wird mit $0.002 von Ihrem vorausbezahlten ForHosting-KIT-Guthaben berechnet. Fehlgeschlagene Prüfungen werden nicht berechnet. Ein Abonnement ist nicht erforderlich.