De DigiWiki.
default
{
state_entry()
{
vector axis = <0.0, 0.0, 1.0>;
float angle = 90.0 * DEG_TO_RAD;
rotation rot = llAxisAngle2Rot(axis, angle);
vector euler = llRot2Euler(rot) * RAD_TO_DEG;
llOwnerSay((string) euler);
//Says <0.0, 0.0, 90.0> since it is rotating 90 degrees on the Z axis caused by the 1.0 placed in the Z vector spot.
}
}
Snippet
rotateFromStartToFinish(integer N,rotation startRot,rotation endRot)
{
rotation B = (ZERO_ROTATION/startRot)*endRot;
vector axis = llRot2Axis(B);
float angle = llRot2Angle(B);
integer j;
for(j = 0; j <= N, ++j)
{
llSetRot(startRot*llAxisAngle2Rot(axis,((float)j)/((float)N)*angle));
}
}