Difference between revisions of "PRIM ROTATION"

From Second Life Wiki
Jump to navigation Jump to search
m
m (<lsl> tag to <source>)
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<onlyinclude>{{#if:
<onlyinclude>{{#if:


{{#vardefine:rotation_const|{{LSL Const|PRIM_ROTATION|integer|8|c=Used to {{GetSet|{{{1|}}}|get|set|/}} the prim's rotation}}}}
{{#vardefine:rotation_const|{{LSL Const|PRIM_ROTATION|integer|8|c=Used to {{GetSet|{{{1|}}}|get|set|/}} the prim's rotation. See also PRIM_ROT_LOCAL which has a more consistent behavior.}}}}


{{#vardefine:p_rot_desc|Any valid rotation}}
{{#vardefine:p_rot_desc|Any valid rotation}}
Line 8: Line 8:


{{#vardefine:caveats-get|{{#var:caveats-get}}
{{#vardefine:caveats-get|{{#var:caveats-get}}
* '''{{LSL Param|rot}}''' is always the [[Viewer_coordinate_frames#global|global rotation]], even if the prim is a child or the root prim of an [[attachment]].
* {{LSLP|rot}} is always the [[Viewer_coordinate_frames#global|global rotation]], even if the prim is a child or the root prim of an [[attachment]].
* [[PRIM_ROTATION]] incorrectly reports the avatars rotation when called from the root of an attached object. Use [[PRIM_ROT_LOCAL]] for the root prim instead.
* [[PRIM_ROTATION]] incorrectly reports the avatars rotation when called on the root of an attached object. Use [[PRIM_ROT_LOCAL]] for the root prim instead.
}}
}}


{{#switch:{{{1|}}}
{{#switch:{{{1|}}}
|get={{#vardefine:caveats|{{#var:caveats}}
|get={{#vardefine:caveats|{{#var:caveats}}
{{#var:caveats-get}}}}
{{#var:caveats-get}}{{#vardefine:caveats-get}}}}
|set={{#vardefine:caveats|{{#var:caveats}}
|set={{#vardefine:caveats|{{#var:caveats}}
{{#var:caveats-set}}}}
{{#var:caveats-set}}{{#vardefine:caveats-set}}}}


}}
}}
Line 23: Line 23:


}}{{LSL Constant
}}{{LSL Constant
|inject-2={{LSL PrimitiveParam Categorize|Prim}}
|name=PRIM_ROTATION
|name=PRIM_ROTATION
|type=integer
|type=integer
|value=8
|value=8
|desc=PRIM_ROTATION is used to get or set the prim's rotation.
|desc=PRIM_ROTATION is used to get or set the prim's rotation.
|pa={{LSL Constant/List|i_front=([&#32;{{#var:rotation_const}},&#32;|i_end=&nbsp;]
|pa={{LSL Constant/List|i_front=[[llSetPrimitiveParams]]([&#32;{{#var:rotation_const}},&#32;|i_end=&nbsp;]);
|text=When used with [[llSetPrimitiveParams]] & [[llSetLinkPrimitiveParams]]
|text=When used with [[llSetPrimitiveParams]] & [[llSetLinkPrimitiveParams]]
{{LSL Generic/Caveats|caveats={{#var:caveats-set}}|title=*}}
{{LSL Generic/Caveats|caveats={{#var:caveats-set}}|title=*}}
Line 39: Line 40:
|r1_type=rotation|r1_name=rot
|r1_type=rotation|r1_name=rot
}}
}}
|examples
|examples=<source lang="lsl2">default
{
    state_entry()
    {
        /* This is rotates only once and just gradually that once */
        vector rotationAngle = <2.3, 5.5, 9.7>;
        rotation rot = llEuler2Rot( rotationAngle );
        llSetLinkPrimitiveParams(2, [ PRIM_ROTATION, rot ]);
    }
}
</source>
|constants=
|constants=
<!--{{LSL ConstRow|CHANGED_SHAPE}}-->
<!--{{LSL ConstRow|CHANGED_SHAPE}}-->
Line 56: Line 67:
<!--{{LSL DefineRow||[[changed]]|}}-->
<!--{{LSL DefineRow||[[changed]]|}}-->
|location
|location
|cat1=Prim
|cat1
|cat2=Rotation
|cat2=Rotation
|cat3=Movement
|cat3=Movement
|cat4
|cat4
}}
}}

Latest revision as of 16:52, 23 January 2015

Description

Constant: integer PRIM_ROTATION = 8;

The integer constant PRIM_ROTATION has the value 8

PRIM_ROTATION is used to get or set the prim's rotation.

llSetPrimitiveParams

llSetPrimitiveParams([ PRIM_ROTATION, rotation rot ]);
• rotation rot Any valid rotation

When used with llSetPrimitiveParams & llSetLinkPrimitiveParams All Issues ~ Search JIRA for related Bugs

llGetPrimitiveParams

llGetPrimitiveParams([ PRIM_ROTATION ]);

Returns the list [ rotation rot ]

• rotation rot Any valid rotation

Caveats

All Issues ~ Search JIRA for related Bugs

Examples

default
{
    state_entry()
    {
        /* This is rotates only once and just gradually that once */
        vector rotationAngle = <2.3, 5.5, 9.7>; 
        rotation rot = llEuler2Rot( rotationAngle );
        llSetLinkPrimitiveParams(2, [ PRIM_ROTATION, rot ]);
    }
}

Deep Notes

All Issues

~ Search JIRA for related Issues
   llSetRot and llSetPrimitiveParams (using PRIM_ROTATION) incorrectly implemented for child prims.

Signature

integer PRIM_ROTATION = 8;