Luftlinie errechnen Hilfe!!!!!!

Garmin fenix 7X und epix Gen 2 im Test

Der Schwerpunkt dieses Tests und Vergleichs der Garmin Fenix 7X Solar und Garmin Epix Gen 2 liegt auf den Sensoren wie Höhenmesser, Positionsbestimmung und Herzfrequenz. Was unterscheidet die beiden GPS-Outdoor-Smartwatches? Und wie gut ist die Taschenlampe der Fenix 7X für den Outdoorbereich? Hier geht es zum Test der Outdoor-Smartwatches ...
  • :( Hallo bin neu und etwas verwirrt ich will für die Schule (Informatik) ein Programm schreiben das mit GPS Daten arbeitet nur leider kann ich mit den Längen und Breitengrad nichts anfangen. Kann mir einer sagen wie ich aus 2 Standorten die Luftlinie errechne? ohne eine Karte mit laufrad zur hand zu nehmen :D
    Tim

  • Hallo Tim,


    Deine Frage ist alles andere als trivial - deswegen antworte ich mit einer Gegenfrage:


    Ist eine Berechnung in der gedachten Ebene ausreichend (zweidimensional) oder möchtest Du auch längere Entfernungen ausrechnen können (Grosskreis)?


    Für die Berechnung kleiner Entfernungen wäre die Konvertierung der Position in das UTM-Gitter (Helmert Transformation) und der Pythagoras ausreichend - dass das aber schon relativ kompliziert ist, kannst Du an dem Link erkennen.


    Wenn Dich die Grosskreisberechnung interessiert, wird es allerdings noch komplizierter - google Dich mal frei ;)


    Gruss


    Emil

  • Hallo Tim,


    wenn es nicht auf das letzte Quäntchen Genauigkeit ankommt, empfehle ich dir die Berechnung der Entfernung auf einem Großkreis einer Kugel. Nun ist zwar die Erde keine exakte Kugel, aber viele Verfahren kommen damit gut zurecht. Nach dem, was ich in GARMINs MapSource gesehen habe, rechnet vermutlich auch dieses Programm mit der Idealisierung „Kugel“, denn es gibt keinen Unterschied, ob man für zwei Punkte mit einem Raumwinkel von 180° von einer beliebigen Lage ausgeht oder auf dem Äquator oder von Pol zu Pol rechnet, es ergeben sich immer 20.038 km (halber Erdumfang).


    Die Berechnung des Raumwinkels ist für ein Programm im Prinzip einfach und unspektakulär, natürlich gibt es dann noch ein bisschen Kleingedrucktes.


    Du benötigst die Koordinaten zweier Punkte, d.h. vier Winkel:
    • B1 Breite des Punktes Nr. 1
    • L1 Länge des Punktes Nr. 1
    • B2 Breite des Punktes Nr. 2
    • L2 Länge des Punktes Nr. 2


    W = arc cos [sin B1 * sin B2 + cos B1 * cos B2 * cos (L1 - L2)] (Raumwinkel)
    E = R * W (Entfernung gemessen auf dem Großkreis)


    Details: südliche Breiten und westliche Längen sind negativ einzusetzen. Bei der genannten Formel für die Entfernung E ist der Winkel W im Bogenmaß notwendig.
    Da die üblichen Programmiersprachen ohnehin Bogenmaß erwarten, sollte nur bei der Eingabe Grad möglich sein (oder Grad / Minute oder Grad / Minute / Sekunde), dann sofortige Umwandlung in Bogenmaß. Zur Erinnerung: 180° entsprechen im Bogenmaß Pi Radiant.


    Weiterer eventueller Stolperstein: in Programmiersprachen habe ich die Funktion „arc cos“ noch nicht entdeckt, die Beschränkung auf „arc tan“ erfordert Umwandeln des cos-Wertes in einen tan-Wert (siehe Formelsammlung). Vor dieser Umwandlung ist aber noch der Sonderfall W = Pi/2 rad (90°) zu beachten, weil cos W Null wird, und dieser Ausdruck im Nenner vorkommt. Also vorher abfragen, und gegebenenfalls W = Pi / 2 setzen.
    EXCEL enthält übrigens die Funktion „arccos()“, hier wird es also noch etwas einfacher.


    Wert für den Radius R: ich arbeite mit R = 6366,71 km ausgehend von 1 sm = 1,852 km (Seemeile entspricht W = 1’), das führt auf eine Erdumfang von 40.003 km. MapSource verwendet vermutlich R = 6.378,3 km, d.h. 40.076 km als Erdumfang. Für den praktischen Gebrauch dürfte der Entfernungsunterschied von knapp 1,8 Promille nicht schwerwiegend sein, hier geht es ja nicht um Alkohol !


    Wer programmiert, sollte auch testen. Vorschlag für einen Probelauf: zwei Punkte, die sich genau gegenüberliegen (Antipoden), der Raumwinkel beträgt dann Pi rad, die Entfernung entspricht dem halben Erdumfang.
    • B1 = N50° 12’ 34.5 ’’ L1 = E08° 34’ 56.7’’
    • B2 = S50° 12’ 34.5 ’’ L2 = W171° 25’ 3.3’’


    Viel Erfolg beim Umsetzen!


    Grüße
    Bunav

    ** N51.30° E6.59° (incl. SA) **
    *** iQue 3600 ***
    ** GPSMAP 76C **

  • Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
    Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank...
  • Hallo kann man das nicht etwas vereinfachen?
    Ich möchte nicht klugscheißern nur vereinfachen :8


    Du hast mir geschrieben das die erde einen Radius von R = 6.378,3
    daraus folgt
    U= 6.378,3 * Pi
    U= 20038,0204....KM als Umfang hat


    also kann ich jetzt die 20038,0204 / 360° =55,6611...KM nehmen das heißt 1° = 55,6611....KM <_<


    nehme ich mir den Pythagoras und den höhen satz zur hand kann ich dach die strecke errechnen oder ?


    danke im voraus :)

  • Zitat

    Zitat von com-cat@25.08.2005 - 01:57
    das heißt 1° = 55,6611....KM <_<


    Das trifft aber nur auf einen einzigen Ort auf der Erde zu, nämlich den Äquator. Dort ist der Abstand von einem Längengrad rund 55,66...km.


    Je weiter man aber nach Norden oder Süden kommt, also bei zunehmendem Breitengrad, verängt sich ja der Abstand eines Längengrades, bis schließlich an den Polen der Abstand von einem Längengrad 0km ist, da ja an den Polen die Längengrade zusammenlaufen.


    So eine vereinfachte Rechnung kann also nur für die Betrachtung sehr kurzer Strecken hinreichend genau funktionieren.


    mfg
    JLacky

  • Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
    Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank...

  • Moin!


    Da ist gerade ein Fehler aufgetreten und dann wurde nicht logisch überprüft.
    Die Formal für den Umfang ist nicht wie hier verwendet U=Radius * Pi , sondern:


    U= R * 2 Pi


    Als Ergebniss müssen rund 40.000km für den Erdumfang herauskommen. (Exakt sind es etwas mehr, aber zur Kontrolle uninteressant.) Der Abstand zwischen zwei Breitengraden bzw zwischen zwei Längengraden am Äquator beträgt grob 111km.


    Den Hinweis von Jlacky mußt Du dann mit dieser Korrektur beachten und MatGrebe war natürlich schneller. Man sollte schneller tippen können.


    Sam

  • Ja stimmt ja die pole laufen oben zusammen :( und habt schon recht U=d*Pi :)
    schade wäre schön gewesen :(
    Danke noch mal

  • Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
    Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank...
  • Hallo kann man das nicht etwas vereinfachen?


    Hallo com-cat,


    wenn beliebige Entfernungen zu berechnen sind, musst du schon von der Kugelgestalt ausgeben, dabei gilt aber nicht mehr der bekannte „Pythagoras“ der ebenen Geometrie, und die Summe der Innenwinkel eines Dreiecks ist größer als 180°. Was du mit dem Höhensatz der Hypotenusen-Abschnitte machen willst, ist mir völlig unklar.
    Thomas hat --für relativ kleine Entfernungen-- eine hübsche Näherung angegeben, in der lediglich ein rechtwinkliges ebenes Dreieck vorkommt: h i e r.


    Zitat

    -com-cat, 25.08.2005 - 01:57
    ... das heißt 1° = 55,6611....KM

    Auf die notwendige Verdoppelung hat Mathias schon hingewiesen, und das Gleichheitszeichen ist streng genommen unzulässig (unterschiedliche Einheiten), aber im Übrigen kannst du natürlich auch damit die Entfernung E berechnen, falls der Winkel W (s. Beitrag #3) im Gradmaß vorliegt. Das ist aber nicht das Format üblicher Programmiersprachen, so dass du damit nichts vereinfachst.


    Damit du nicht nur eine Formel eintippst, sondern vielleicht eine Veranschaulichung hast: der Überschlag „1° entspricht einer Entfernung von 111 km“ ist durchaus allgemeingültig und nicht auf den Äquator beschränkt. Es muss sich dabei aber um den (Raum-) Winkel zu einem Großkreis handeln. Deren Umfänge sind immer ca. 40.000 km lang.
    Löst man sich von den gewohnten Längen- und Breitenangaben und betrachtet lediglich eine Kugel, die sich ja beliebig drehen lässt, dann ist „unser Äquator“ nur einer von unendlich vielen Großkreisen. Für zwei Punkte der Kugeloberfläche existiert immer eindeutig der Großkreis, welcher übrigens die kürzeste Entfernung auf der Kugeloberfläche liefert.


    Lass’ dich von der Länge der Beschreibung nicht abschrecken, der eigentliche Programmieraufwand ist –auch für einen Anfänger-- recht gering, daher nochmals die Kurzfassung aus #3:


    • 4 Winkel eingeben (je 2 Längen und Breiten),
    • cos W berechen,
    • umformen in tan W (falls Funktion „arc cos“ fehlt),
    • W = arc tan W,
    • E = R* W.


    Grüße
    Bunav

    ** N51.30° E6.59° (incl. SA) **
    *** iQue 3600 ***
    ** GPSMAP 76C **

  • Ich danke noch mal für die ausführlichen beschreibungen wenn es fertig ist werde ich noch mal posten dies ist nämlich ein großprojekt. ich bin in einer abendschule für Teschnische Fachinformatik und wir versuchen ein Projekt mit einem Auto auf die Beine zu stellen das Heißt Rechner im Auto und GPS daraus läßt sich ja wesentlich mehr machen als nur Navigation es schwebt mir vor die durschnittliche geschwindigkeit zu errechnen und vieleicht einen Diebstahlschutz zu programmieren wo der standort des autos durch ein Handy oder Hotspot übertragen wird.


    Ihr seit doch alle spezies für GPS was fehlt euch denn so an euren GPS Geräten was ich vieleicht noch als anregung mit nehmen könnte? ;)


    Für eure Ideen wäre ich sehr Dankbar

  • Zitat

    Zitat von com-cat@26.08.2005 - 14:13
    ...
    Ihr seit doch alle spezies für GPS was fehlt euch denn so an euren GPS Geräten was ich vieleicht noch als anregung mit nehmen könnte? ;)
    ...


    Eine Komma-Taste auf jeden Fall! :ph34r:


    SCNR
    jürgen :)

  • Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
    Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank...
  • Zitat

    Zitat von com-cat@25.08.2005 - 10:33
    Ja stimmt ja die pole laufen oben zusammen :( und habt schon recht U=d*Pi :)
    schade wäre schön gewesen :(
    Danke noch mal


    Moin!


    Wenn Du Dich mit Technik befaßt, dann solltest Du Dich um eine Exaktheit der Aussagen bemühen, die in der Umgangssprche nicht unbedingt vorauszusetzen ist. Sonst kommt es leicht zu Mißverständnissen oder Fehlern.


    Sicher wissen wir jetzt, was Du mit der Aussage in dem obrigen Zitat sagen möchtest, aber zum Glück laufen nicht die Pole der Erde zusammen.
    Die Längengrade im Koordinatensystem der Erde laufen an den Polen zusammen.


    Sam

  • Moin!


    Ich hätte noch ne frage zur umrechnung sind Die Längen & Breitengade als Grad,Dezimal oder als Radius einzugeben? ich Tipp mal auf Grad aber wollte es nur noch mal von euch hören bevor ich was falsch Programmiere :blink: ( Ja,Ja lang ist her mit der Schule :D ) Vielen dank

  • Hallo Bunav!
    In C++ gibt es eine funktion "acos" in der Unit Math die so was berrechnet :D

  • Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
    Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank...
  • Zitat

    Zitat von com-cat@29.07.2005 - 00:24
    :( Hallo bin neu und etwas verwirrt ich will für die Schule (Informatik) ein Programm schreiben das mit GPS Daten arbeitet nur leider kann ich mit den Längen und Breitengrad nichts anfangen. Kann mir einer sagen wie ich aus 2 Standorten die Luftlinie errechne? ohne eine Karte mit laufrad zur hand zu nehmen :D
    Tim


    hi com-cat,
    ich habe mal vor x-Jahren ein Basicprogramm zum Großkreis geschrieben und das sieht so aus:


    rem Großkreis
    rem 30.8.1988
    print "Erster Ort:"
    input "Breite (Südbreite mit minus eingeben)"; bs
    input "Länge (Ostlänge mit minus eingeben)"; ls
    print: print "Zweiter Ort"
    input "Breite (Südbreite mit minus eingeben)" ; bz
    input "Länge (Ostlänge mit minus eingeben)"; lz
    f = 0.017453
    a = sin(bs*f) * sin(bz*f) + cos(bs*f) * cos(bz*f) * cos((lz - ls)*f)
    b = 1.570796 - ATN(a/sqr(1-a^2)) : b = b*57.29578
    c = 60*b
    print:print "Die kürzeste Entfernung beträgt "; c ; " Seemeilen."
    print "das sind"; print c * 1.852 ; : print " Kilometer"


    Gruß John
    N47 48.066 E13 02.676
    (editiert am 15.10.05)

  • Danke hat sich schon erledigt habe es geschaft wo kann ich denn hier uploden ? dann könnt ihr das programm auch mal testen ??

  • Hallo John,


    zu dem angegebenen Programm noch einige Hinweise, falls jemand damit arbeiten möchte.


    Die Zeile „f = 0.17453“ enthält einen Tippfehler, der Wert Pi/180 (Kehrwert von 180/Pi = 57,295…) beträgt 0,017453… (ist korrigiert)


    Östliche und westliche Längen sind mit unterschiedlichem Vorzeichen einzugeben, aber es ist kein Widerspruch, dass ich für westliche Längen das Minuszeichen verwende (#3) und du für östliche Längen. Dem Kosinus („gerade“ Funktion) ist das gleichgültig.


    Die Variable a stellt den Kosinus des Raumwinkels dar, für einen Winkel von 180° (zwei gegenüberliegenden Punkte, „Antipoden“) wird a = -1, d.h. in der von dir benutzten Form „b = 1.570796 - ATN(a/sqr(1-a^2))“ tritt eine Division durch Null auf. Daher sollte vorher geprüft werden, ob a gleich -1 ist. Wenn JA, dann b = 180°.


    Die Formel für b wird übrigens etwas kürzer und vermeidet Pi/2, wenn man
    b = ATN(sqr(1-a^2)/a) verwendet. Hier muss a = 0 ausgeschlossen werden, in diesem Sonderfall wird b = 90°.


    Grüße
    Bunav

    ** N51.30° E6.59° (incl. SA) **
    *** iQue 3600 ***
    ** GPSMAP 76C **

  • Datenschutz ist uns & Euch wichtig, daher verzichten wir auf Bannerwerbung & Web-Analysetools! Um das Forum zu unterstützen bitten wir Euch über diesen Link: bei Amazon zu bestellen....
    Für Euch ist das nur ein Klick, uns hilft es das Forum langfristig und werbefrei für Euch zu betreiben! Vielen vielen Dank...
  • Hi Bunav


    besten Dank für die Korrektur und Grüße nach Krefeld.


    Gruß John
    N47 48.066 E13 02.676


    SP III + Vista