Wie berechnet man die Entfernung der Luftlinie zwischen zwei Orten?


17

Die meiste Zeit suche ich nach einer Möglichkeit, die Entfernung zwischen zwei Orten zu berechnen, meistens in Innenstädten.

Als ich zum Beispiel von Zürich nach Helsinki geflogen bin, wollte ich wissen, wie weit es ist. Mit Google Maps kann ich das aber nicht für die Luftlinie machen.

Kennt jemand ein Tool dafür oder kann mir Ratschläge geben, wie man es manuell mit Hilfe der Geokoordinaten macht? Dann könnte ich mein eigenes kleines Werkzeug schreiben.


1
Hat die Flugentfernung eine Bedeutung, wenn das Reisen zwischen zwei kleinen Flughäfen nur über ein entferntes Drehkreuz erfolgt?
Mouviciel

1
Offensichtlich nicht ...
RoflcoptrException

3
Kleinere Überlegungen: Müssen kleinere Flugzeuge im Falle eines Triebwerksausfalls einen bestimmten Abstand zum Land einhalten? Ich dachte, ich hätte eine Seite gesehen, auf der das stand. In diesem Fall wäre die Entfernung des Großkreises nicht immer genau.
Barrycarter

@barrycarter: Flugzeuge weichen aus allen möglichen Gründen vom kürzesten Weg ab, z. B. um Stürme zu vermeiden und den Jetstream zu nutzen, um schneller zu fliegen. Man kann es also nicht immer im Voraus wissen.
Michael Borgwardt

Sie haben bereits eine umfassende Antwort erhalten, so dass es jetzt umstritten ist, aber die „Fluglinie“ hat anscheinend einige Verwirrung gestiftet. Ich vermute, Sie meinten Luftlinie . In diesem Fall wären „Gerade“, „ Luftlinie “ oder „Luftlinie“ idiomatischere Umschreibungen auf Englisch.
Entspannt

Antworten:


18

Der beste Ort für diese Berechnungen ist die Website "Great Circle Mapper".

http://www.gcmap.com/

Um die Entfernung zwischen zwei oder mehr Flughäfen zu ermitteln, geben Sie diese einfach mit Bindestrichen dazwischen ein. zB JFK-DFW oder SFO-IAD-LHR

Sie können mehrere Fahrten gleichzeitig durchführen, indem Sie sie durch Kommas trennen. JKF-DFW, SFO-IAD-LHR


Beachten Sie, dass diese Werte eine Untergrenze für die tatsächliche Entfernung sind, die ein Flugzeug zwischen den Flughäfen zurücklegt.
ESultanik

Beachten Sie dies in der EU-Flugverspätungs- / Stornierungsverordnung (EG) Nr. 261/2004: "Die in den Absätzen 1 und 2 angegebenen Entfernungen sind nach der Methode der Großkreisroute zu messen."
CHX

12

An alle Antwortenden, die Great Circle Mathe empfehlen, haben Sie nur teilweise recht.

Der Abstand zwischen zwei Punkten auf einer Kugel wird von GC Maths ermittelt, das OP hat jedoch speziell nach dem Luftlinienabstand gefragt. Dies wird festgestellt, indem zuerst alle auf dem Weg zum Ziel besuchten Punkte gefunden und dann die GC-Entfernungen für alle Routenpaare berechnet werden.

Beispielsweise folgt ein Flug von London nach New York nicht dem Großkreisweg zwischen den beiden Punkten. Es folgt eine Reihe von Punkten, zu denen Navaids, Wegpunkte, Airways, Abflugrouten, Ankunftsrouten, Lat / Long-Fixes und Entfernungspeilungspunkte gehören können. Weitere Informationen finden Sie unter Flugplan .

Wenden Sie sich daher an die betreffende Fluggesellschaft, fragen Sie nach dem verwendeten Flugplan und suchen Sie die Lat Longs für jeden der besuchten Punkte.


Genau das habe ich mir gedacht!
Ankur Banerjee

1
Ich glaube, das OP fragt wirklich nach der Großkreisentfernung, "air-line" steht hier für die deutsche "Luftlinie" und hat nichts mit "Fluggesellschaften" zu tun.
Entspannter

11

Viele Fluggesellschaften nehmen diese Informationen in ihre Flugpläne auf. Beispielsweise können Sie mit Air Canada ein PDF des gesamten Flugplans herunterladen . Hier ist ein Clip davon:

Bildbeschreibung hier eingeben

Ich schlage vor, die Website der Fluggesellschaft zu durchsuchen, die Sie nutzen möchten. Jedes Tool, das darauf basiert, wie weit die Städte tatsächlich voneinander entfernt sind, kann sich von der Flugentfernung um bis zu 30 Meilen unterscheiden.


Entfernungen in Katalogen (für Vielfliegermeilen usw.) entsprechen in der Regel den von GCMap angegebenen optimalen Großkreisentfernungen. Die tatsächlichen Entfernungen variieren von Tag zu Tag, je nach Wind, Flugsicherung usw.
Lambshaanxy

7

Wenn Sie es selbst berechnen möchten, ist das sphärische Kosinusgesetz wahrscheinlich der einfachste Weg, dies zu tun. Es wird wahrscheinlich genau genug für Ihre Bedürfnisse sein und ist wirklich einfach. Wenn Sie es in Python wollen, versuchen Sie diesen Code von mir (Sie möchten calculate_distance_and_bearing)

Wahrscheinlich möchten Sie auch die Standortinformationen für die verschiedenen Flughäfen von Interesse. Ich habe in der Vergangenheit dazu tendiert, die globale Flughafendatenbank für solche Dinge zu verwenden.


5

Wenn Sie diese Berechnung für Flüge durchführen möchten, müssen Sie das Sphärische Kosinusgesetz verwenden, wie Gagravarr es erwähnt hat. Wenn Sie jedoch Ihr eigenes kleines Werkzeug schreiben und eine Linie auf eine Karte zeichnen möchten, wird es etwas schwierig. Sie müssten eine Lambert-Projektionskarte verwenden, um eine gerade Linie von A nach B zu zeichnen. Das Problem bei der konischen Lambert-Projektion ist, dass diese Karten nur entlang der beiden Referenzparallelen genau sind und je weiter Sie von ihnen entfernt sind, desto ungenauer sind sie. Dies ist normalerweise nicht der Fall und tritt bei kleinen Karten mit einer Größe von nur 100 x 100 km auf. Je größer die Karte, desto größer wird die Fehlerspanne. Dies hat etwas mit der Tatsache zu tun, dass die Erde rund ist und Sie keine exakte 1: 1-Abbildung von einer runden auf eine flache Oberfläche vornehmen können.

Google Maps (und alle nautischen Karten) verwenden eine zylindrische Kartenprojektion . Dies bedeutet, dass Sie Kurven auf der Karte zeichnen müssen, um dieselbe Route wie bei einer geraden Linie auf einer Lambert-Projektion zu erhalten.





2

Siehe hier: http://www.movable-type.co.uk/scripts/latlong.html

var R = 6371; // Earth's average radius in km
var dLat = (lat2-lat1).toRad();
var dLon = (lon2-lon1).toRad();
var lat1 = lat1.toRad();
var lat2 = lat2.toRad();

var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
        Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2); 
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
var d = R * c;


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.