Difference between revisions of "LlSetLocalRot"

From Second Life Wiki
Jump to navigation Jump to search
m (Added to Category:LSL_Rotation)
Line 8: Line 8:
|caveats
|caveats
|constants
|constants
|examples
|examples=Drop this script in a prim* to rotate it in 1 degree increments. *This prim must be attached as child of a root prim.
<lsl>rotation rot_xyzq;
default
{
    state_entry()
    {
        vector xyz_angles = <0,1.0,0>; // This is to define a 1 degee change
        vector angles_in_radians = xyz_angles*DEG_TO_RAD; // Change to Radians
        rot_xyzq = llEuler2Rot(angles_in_radians); // Change to a Rotation
    }
    touch_start(integer s)
    {
        llSetLocalRot(llGetRot()*rot_xyzq); //Do the Rotation...
    }
}</lsl>
|helpers
|helpers
|also_functions={{LSL DefineRow||[[llSetRot]]|}}
|also_functions={{LSL DefineRow||[[llSetRot]]|}}

Revision as of 21:26, 25 June 2008

Summary

Function: llSetLocalRot( rotation rot );

Sets the rotation of a child prim relative to the root prim

• rotation rot

Caveats

  • This function causes the script to sleep for 0.2 seconds.
All Issues ~ Search JIRA for related Bugs

Examples

Drop this script in a prim* to rotate it in 1 degree increments. *This prim must be attached as child of a root prim. <lsl>rotation rot_xyzq;

default {

   state_entry()
   {
       vector xyz_angles = <0,1.0,0>; // This is to define a 1 degee change
       vector angles_in_radians = xyz_angles*DEG_TO_RAD; // Change to Radians
       rot_xyzq = llEuler2Rot(angles_in_radians); // Change to a Rotation
   }

   touch_start(integer s)
   {
       llSetLocalRot(llGetRot()*rot_xyzq); //Do the Rotation...

   }
}</lsl>

See Also

Functions

•  llSetRot
•  llGetRot
•  llGetLocalRot
•  llGetRootRotation

Deep Notes

Search JIRA for related Issues

Signature

function void llSetLocalRot( rotation rot );