rotateVector()

Zusammenfassung

Dreht einen Vektor um eine Achse, sodass ein neuer Vektor zurückgegeben wird. Die Achse wird durch einen Achsenvektor definiert. Bei einem positiven Winkel erfolgt die Drehung um die Achse nach der Rechte-Hand-Regel. Diese Funktion gibt immer einen Einheitsvektor 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 Vector Der zu drehende Vektor.
angle Number Drehwinkel
axis Vector 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 Eingabevektor zurückgegeben.
Intent >rotateVector(vector(1,0,0), 45, vector(1,0,0)) 
--> Vector_(1.0, 0.0, 0.0, WorldFrame())