LlGetRot - Second Life Wiki

LlGetRot

From Second Life Wiki

Jump to: navigation, search

Contents

Summary

Function: rotation llGetRot( );

Returns a rotation that is the prim's rotation relative to the region's axes.

Caveats

  • llGetRot incorrectly reports the avatars rotation when called from the root of an attached object, use llGetLocalRot for root prims, instead
    • llGetRot will return an accurate facing for Avatars seated or in mouselook, but only a rough direction otherwise when called from an attached prim.
All Issues ~ Search JIRA for related Bugs

Examples

 //-- rotates an object to face the nearest cardinal direction (N,E,S,W)
 //-- assumes build is aligned to root object facing
 
default{
  state_entry()
  {
    llSay( 0, "Rotate me in edit, then touch to make me face the nearest compass point" );
  }
 
  touch_start( integer vIntTouches )
  {
     //-- convert our rotation to x/y/z radians
    vector vRadBase = llRot2Euler( llGetRot() );
     //-- round the z-axis to the nearest 90deg (PI_BY_TWO = 90deg in radians)
    llSetRot( llEuler2Rot( <0.0, 0.0, llRound( vRadBase.z / PI_BY_TWO ) * PI_BY_TWO > ) );
  }
}

Notes

  • The tooltip in the in-client editor is incorrect, it will work in scripts in objects that are physical.

Deep Notes

Search JIRA for related Issues

This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.