llEuler2Rot
Revision as of 14:46, 8 August 2015 by Strife Onizuka (talk | contribs)
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: rotation llEuler2Rot( vector v );16 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a rotation representation of the Euler Angles v.
• vector | v | – | Angle |
Specification
The Euler angle vector (in radians) is converted to a rotation by doing the rotations around the 3 axes in Z, Y, X order. So llEuler2Rot(<1.0, 2.0, 3.0> * DEG_TO_RAD)
generates a rotation by first rotating 3 degrees around the global Z axis, then rotating the result around the global Y axis, and finally rotating that 1 degree around the global X axis.
Caveats
Examples
default
{
state_entry()
{
vector input = <73.0, -63.0, 20.0> * DEG_TO_RAD;
rotation rot = llEuler2Rot(input);
llSay(0,"The Euler2Rot of "+(string)input+" is: "+(string)rot );
}
}
Notes
v/=2;
rotation k = <0.0, 0.0, llSin(v.z), llCos(v.z)> * <0.0, llSin(v.y), 0.0, llCos(v.y)> * <llSin(v.x), 0.0, 0.0, llCos(v.x)>;