rotateVector()

Zusammenfassung

Dreht einen Vektor um eine Achse, sodass ein neuer Vektor zurückgegeben wird. Die Achse wird durch einen Achsen vektor definiert. Bei einem positiven Winkel erfolgt die Drehung um die Achse nach der Rechte-Hand-Regel. Diese Funktion gibt immer einen Einheits vektor zurück. Lesen Sie hierzu auch die Informationen zu vectorAt(), einer vereinfachten Version dieser Funktion für 2D-Probleme.

Syntax

rotateVector ( base As Vector, _
               angle As Number, _
               axis As Vector ) As Vector
Argument Typ Beschreibung
base Vektor Der zu drehende Vektor.
angle Anzahl Drehwinkel
axis Vektor Die Richtung der Achse.

Beispiel 1

Drehen eines an der x-Achse ausgerichteten Vektors um 90 Grad um die z-Achse
Intent >rotateVector(UnitX, 90, UnitZ) 
--> Vector_(0.0, 1.0, 0.0, WorldFrame()) 

Beispiel 2

Drehen eines an der x-Achse ausgerichteten Vektors um 30 Grad
Intent >rotateVector(UnitX, 30, -UnitY) 
--> Vector_(0.86602540378444, 0.0, 0.5, WorldFrame()) 

Beispiel 3

Drehen der lokalen x-Achse um 45 Grad um die z-Achse
Intent >rotateVector(vector(1,0,0), 45, vector(0,0,1)) 
--> Vector_(0.70710678118655, 0.70710678118655, 0.0, WorldFrame())

Beispiel 4

Durch das Drehen eines Vektors um einen parallelen Vektor wird lediglich der Eingabe vektor zurückgegeben.
Intent >rotateVector(vector(1,0,0), 45, vector(1,0,0)) 
--> Vector_(1.0, 0.0, 0.0, WorldFrame())