Mit GPS Koordinaten arbeiten.
-
Bogenmaß.
-
Was meinst du damit?
Ich habe ja durchstrecke = (strecke*PI)/180; strecke = strecke * 1000;
umgerechnet, und die angabe in meter gemacht.
-
sin() und cos() verlangen den Parameter im Bogenmaß.
-
Die Formel die ich hier habe gilt für die Angabe der Winkel in Radiant.
Sie ist ja dafür gedacht, damit ich nicht in Bogenmaß rechnen muss.
-
Das ändert nix daran das die cos() und sin() Funktion den Eingabe Wert im Bogenmaß erwartet. Daher musst du deine Eingabe Werte vorher umrechnen.
-
Ok, wenn ich das dann richtig verstehe, muss ich wie hier angegeben http://www.frustfrei-lernen.de/mathematik/bogenmass-und-gradmass.html
meine Werte umrechnen.
Wie genau müsste ich das jetzt in meinem Code machen, wäre für jede Hilfe dankbar.
[code]
double gesamtstrecke =0;
for (int k=0; k < breite.size()-1; k++) {double s1 = sin(breite[k]);
double s2 = sin(breite[k+1]);
double cb1 = cos(breite[k]);
double cb2 = cos(breite[k+1]);
double cl1 = laenge[k];
double cl2 = laenge[k+1];
double ccl = cos(cl2-cl1);strecke= R * acos(s1*s2+cb1*cb2*ccl);
gesamtstrecke=gesamtstrecke+strecke;
write<<gesamtstrecke<<std::endl;
}
-
Wenn ich das richtig sehe, möchtest du doch nur jeweils die Entfernungen zwischen 2 Punkten aufsummieren?
Bemüh' mal den ollen Pythagoras .
-
Z.b so
#include <math.h> ... double strecke =0; for (int k=0; k < breite.size()-1; k++) { double s1 = sin(breite[k]/180.0 * M_PI); double s2 = sin(breite[k+1] /180.0 * M_PI); double cb1 = cos(breite[k]/180.0 *M_PI); double cb2 = cos(breite[k+1]/180.0 * M_PI); double cl1 = laenge[k]/180.0 *M_PI; double cl2 = laenge[k+1]/180.0 * M_PI; double ccl = cos(cl2-cl1); strecke+= R * acos(s1*s2+cb1*cb2*ccl); } std::cout<<strecke<<std::endl;
-
dref schrieb:
Bemüh' mal den ollen Pythagoras .
Der gilt aber nur bei einem ebenen Dreieck.
-
DirkB schrieb:
dref schrieb:
Bemüh' mal den ollen Pythagoras .
Der gilt aber nur bei einem ebenen Dreieck.
Kann aber bei kurzen Distanzen trotzdem ausreichen
-
Schlangenmensch schrieb:
DirkB schrieb:
dref schrieb:
Bemüh' mal den ollen Pythagoras .
Der gilt aber nur bei einem ebenen Dreieck.
Kann aber bei kurzen Distanzen trotzdem ausreichen
Ja, aber nur in der Gegend am Äquator.