Frage Wie berechnet man einen Vektor aus einem Winkel mit einem anderen Vektor in 2D?


Ich weiß, ich sollte das wissen, aber ich kann es einfach nicht herausfinden / finde die Lösung. Ich kann es mit der Hand machen, aber ich kann es nicht in einen Algorithmus einfügen ... (arbeitet in C ++, aber Pseudocode sollte in Ordnung sein).

Ich habe einen Vektor, und ich möchte einen anderen Vektor basierend auf dem Winkel damit finden.

Angle with two vectors

v ist bekannt, der Winkel alpha ist bekannt und die Größe von w ist bekannt. Wie kann ich w finden?

Vielen Dank!


5
2017-08-02 08:42


Ursprung


Antworten:


Um einen Vektor zu drehen v = (x, y) um einen Winkel alpha im Uhrzeigersinn um den Ursprung, können Sie mit der Matrix multiplizieren:

[  cos alpha    sin alpha ]
[ -sin alpha    cos alpha ]

So wird der gedrehte Vektor mit der gleichen Größe sein

(x cos alpha + y sin alpha, -x sin alpha + y cos alpha).

Um die Größe von | v | zu ändern zu | w | multiplizieren Sie beide Koordinaten mit | w | / | v |.


11
2017-08-02 09:36



Vektor (w) = Vektor (v) / cos (Alpha), um die Richtung von w zu finden. Sie müssen mit Magnitude (w) / Magnitude (v) multiplizieren, um die Magnitude einzustellen


-1
2017-08-02 08:54