Berechnung von 3d-Vektor senkrecht zur Ebene beschrieben durch einen Punkt und True North Überschrift
Habe ich einen Punkt auf der Oberfläche der Erde, die ich konvertieren zu einem Vektor vom Erdmittelpunkt.
Ich habe eine Wahre Nord-Richtung in Grad beschreibt den Pfad der Punkt Reisen auf der Oberfläche der Erde.
Muss ich berechnen Sie einen Vektor der senkrecht zu der Ebene erzeugt, die durch den Pfad von diesem Punkt entlang der Erdoberfläche.
Ich habe versucht die Berechnung von einem beliebigen Punkt entlang des Pfades mit der beschriebenen Methode hier
und dann mit dem Kreuzprodukt der beiden Vektoren, aber es scheint nicht sehr präzise genug und scheint wie viel mehr Aufwand, als notwendig ist.
Dies ist im Zusammenhang mit meinem anderen post ray-polygon-Schnittpunkt-on-the-surface-of-a-Bereich.
- Können Sie clearify Ihre Eingabe? "Die Punkte Weg auf der Oberfläche" impliziert mehrere Punkte, nicht wahr? Und wie ist die Nord-überschrift angegeben? Ein Winkel, ein zeigenden Vektor aus der Bo an den Nordpol, oder etwas anderes?
- Wenn true north überschrift ist specifiedcas eine Vektor-und Sie haben Ihren Punkt auf der Oberfläche, Sie haben Feste ein Flugzeug. Aber ein Vektor perpendiculr auf dieser Ebene ist colinear mit der true north überschrift. Ich bin nicht sicher, was Sie berechnen möchten.
- Ich habe einen Punkt im Lat,Lon, dass ich konvertieren zu einem Vektor vom Erdmittelpunkt. Ich habe einen Winkel in Grad True North, die beschreibt den Weg, auf der Oberfläche der Erde, die in diesem Punkt unterwegs sein werden. Ich im Grunde muss in der Lage sein, zu konvertieren Grad nach Norden, um einen 3d-Vektor, und ich kann den rest erledigen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich nehme an, Sie versuchen, berechnen Sie einen Vektor liegen in der Ebene der Weg, nicht senkrecht dazu (da hast du schon eins, nämlich der Vektor vom Ursprung zum Ausgangspunkt).
Müssen Sie zuerst berechnen Vektoren liegen in dieser Ebene, dass der Punkt aufgrund der nördlich und östlich. Um dies zu tun, nennen wir
P
Ihren Standpunkt,O
den Ursprung und dieN = (0, 0, R)
ist der Punkt an der Oberseite der Kugel. Dannist ein Vektor, der die Punkte östlich, und ist Tangente an die Kugel, weil es senkrecht zu
P - O
ein radius der Kugel ist.Ähnlichen Gründen
wird der Punkt durch Nord -, und werden tangential an die Kugel.
Normalisieren nun
n
unde
, und schon haben Sie ein orthonormal basis für die tangent space an deiner Stelle. Finden Sie einen Vektor in einer Richtungtheta
(sagen wir, gegen den Uhrzeigersinn von der positiven Ost-Achse zur Vereinfachung der Mathematik), nehmen Sie nur ein wenig vone
und ein wenig vonn
:Hier ist mein Verständnis des Problems:
Wenn ich richtig verstanden hab das alles richtig ist, können Sie es wie folgt:
Den "true north "vector" auf dem Breitengrad
lat
, Längelng
ist gegeben durchEinen Vektor, der senkrecht auf der "true north "vector", die Punkte entlang einer Linie von der Breite (im Osten) ist gegeben durch
Da diese beiden Vektoren identifizieren, die Ebene tangential zur Erdoberfläche, und die Vektor-Angabe der Richtung der Bewegung Ihren Punkt auch in dieser Ebene, wird Ihr motion vector ist eine lineare Kombination der beiden vorherigen:
wo
th
ist Ihre Position Winkel.Finden Sie einen Vektor senkrecht zur motion vector, können Sie einfach das Kreuzprodukt der radius-Vektor (d.h. der zeigenden Vektor von der Mitte der Erde, um Ihren Standpunkt,
mit dem motion-Vektor. (Die Mathematik chaotisch, am besten lassen Sie den computer damit umgehen)
Sie bereits 2 Vektoren:
N = (0,0,1) gerade aus dem Ursprung.
P = (a,b,c) Punkte aus der Ursprungs-zu Ihrem Punkt.
Berechnen Sie den Einheitsvektor zu Ihrem Ausgangspunkt
U = P/|P|
Berechnen Sie einen Einheitsvektor, der senkrecht auf U und N
E = U X N
Berechnen Sie einen Einheitsvektor, der senkrecht auf U und E (dies wird eine Tangente der Kugel)
T = U X E
T konnte zeigen, entweder im Norden oder im Süden, so
wenn T. z < 0, T multiplizieren mit -1.
T zeigt jetzt nach Norden und ist parallel zu der Ebene tangential an die Sphäre an P.
Haben Sie jetzt genug Informationen zum Bau einer drehmatrix (R), so können Sie drehen T um U. finden Sie, wie man eine matrix für die Drehung um eine beliebige Achse auf wikipedia:
R, berechnen Sie einen Vektor zeigt in die Fahrtrichtung.
A = RT
Einen ist die Antwort, die Sie suchen.