ctrlSetAngle: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (parameter name and description)
m (template:command argument fix)
Line 6: Line 6:
|eff=  |= Multiplayer Effects
|eff=  |= Multiplayer Effects
____________________________________________________________________________________________
____________________________________________________________________________________________
| Sets the rotation of an <tt>ST_PICTURE</tt> control. Rotation will be done within the control boundaries, so if the X and Y are given off center, the picture may get clipped by the control boundaries. Doesn't require [[ctrlCommit]]. Procedural textures filled controls do not rotate.|= Description
| Sets the rotation of an <tt>ST_PICTURE</tt> control. Rotation will be done within the control boundaries, so if the X and Y are given off center, the picture may get clipped by the control boundaries. Doesn't require [[ctrlCommit]]. Procedural textures filled controls do not rotate.|DESCRIPTION=
____________________________________________________________________________________________
____________________________________________________________________________________________
| control [[ctrlSetAngle]] [angle, centerX, centerY] |= Syntax
| control [[ctrlSetAngle]] [angle, centerX, centerY] |SYNTAX=
|p1= control: [[Control]] - picture control |= Parameter 1
|p1= control: [[Control]] - picture control |PARAMETER1=
|p2=  [angle, centerX, centerY]: [[Array]] |=
|p2=  [angle, centerX, centerY]: [[Array]] |=
|p3= angle: [[Number]] - Rotation angle (clockwise) |= Parameter 3
|p3= angle: [[Number]] - Rotation angle (clockwise) |PARAMETER3=
|p4= centerX: [[Number]] - Rotation center X in range 0 to 1 (0.5 - control center) |= Parameter 4
|p4= centerX: [[Number]] - Rotation center X in range 0 to 1 (0.5 - control center) |PARAMETER4=
|p5= centerY: [[Number]] - Rotation center Y in range 0 to 1 (0.5 - control center)|= Parameter 5
|p5= centerY: [[Number]] - Rotation center Y in range 0 to 1 (0.5 - control center)|PARAMETER5=


| [[Nothing]] |= Return Value
| [[Nothing]] |RETURNVALUE=


| s2= control [[ctrlSetAngle]] [angle, centerX, centerY, now] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (''Since Arma 3 v1.78.143717'') |= Syntax
| s2= control [[ctrlSetAngle]] [angle, centerX, centerY, now] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (''Since Arma 3 v1.78.143717'') |SYNTAX=
|p21= control: [[Control]] - picture control |= Parameter 1
|p21= control: [[Control]] - picture control |PARAMETER1=
|p22=  [angle, centerX, centerY]: [[Array]] |=
|p22=  [angle, centerX, centerY]: [[Array]] |=
|p23= angle: [[Number]] - Rotation angle (clockwise) |= Parameter 3
|p23= angle: [[Number]] - Rotation angle (clockwise) |PARAMETER3=
|p24= centerX: [[Number]] - Rotation center X in range 0 to 1 (0.5 - control center) |= Parameter 4
|p24= centerX: [[Number]] - Rotation center X in range 0 to 1 (0.5 - control center) |PARAMETER4=
|p25= centerY: [[Number]] - Rotation center Y in range 0 to 1 (0.5 - control center)|= Parameter 5
|p25= centerY: [[Number]] - Rotation center Y in range 0 to 1 (0.5 - control center)|PARAMETER5=
|p26= now: [[Boolean]] ''(default: [[true]])'' - if [[false]] control will wait for [[ctrlCommit]] input for result to apply  |= Parameter 6
|p26= now: [[Boolean]] ''(default: [[true]])'' - if [[false]] control will wait for [[ctrlCommit]] input for result to apply  |PARAMETER6=


| r2 = [[Nothing]] |= Return Value
| r2 = [[Nothing]] |RETURNVALUE=


|x1=<code> _control [[ctrlSetAngle]] [25, 0.5, 0.5];</code> |= Example 1
|x1=<code> _control [[ctrlSetAngle]] [25, 0.5, 0.5];</code> |EXAMPLE1=
|x2=<code>[[with]] [[uiNamespace]] [[do]]
|x2=<code>[[with]] [[uiNamespace]] [[do]]
{
{
Line 47: Line 47:
|x3=<code>_control [[ctrlSetAngle]] [25, 0.5, 0.5, [[false]]];
|x3=<code>_control [[ctrlSetAngle]] [25, 0.5, 0.5, [[false]]];
_control [[ctrlCommit]] 1; // Rotation applies smoothly for 1 second.
_control [[ctrlCommit]] 1; // Rotation applies smoothly for 1 second.
</code> |= Example 1
</code> |EXAMPLE1=
____________________________________________________________________________________________
____________________________________________________________________________________________


| [[ctrlAngle]], [https://resources.bisimulations.com/wiki/ctrlSetAngle ctrlSetAngle VBS] |= See Also
| [[ctrlAngle]], [https://resources.bisimulations.com/wiki/ctrlSetAngle ctrlSetAngle VBS] |SEEALSO=
}}
}}



Revision as of 15:36, 7 April 2019

Hover & click on the images for description

Description

Description:
Sets the rotation of an ST_PICTURE control. Rotation will be done within the control boundaries, so if the X and Y are given off center, the picture may get clipped by the control boundaries. Doesn't require ctrlCommit. Procedural textures filled controls do not rotate.
Groups:
Uncategorised

Syntax

Syntax:
control ctrlSetAngle [angle, centerX, centerY]
Parameters:
control: Control - picture control
[angle, centerX, centerY]: Array
angle: Number - Rotation angle (clockwise)
centerX: Number - Rotation center X in range 0 to 1 (0.5 - control center)
centerY: Number - Rotation center Y in range 0 to 1 (0.5 - control center)
Return Value:
Nothing

Alternative Syntax

Syntax:
control ctrlSetAngle [angle, centerX, centerY, now]         (Since Arma 3 v1.78.143717)
Parameters:
control: Control - picture control
[angle, centerX, centerY]: Array
angle: Number - Rotation angle (clockwise)
centerX: Number - Rotation center X in range 0 to 1 (0.5 - control center)
centerY: Number - Rotation center Y in range 0 to 1 (0.5 - control center)
now: Boolean (default: true) - if false control will wait for ctrlCommit input for result to apply
Return Value:
Nothing

Examples

Example 1:
_control ctrlSetAngle [25, 0.5, 0.5];
Example 2:
with uiNamespace do { ctrl = findDisplay 46 ctrlCreate ["RscPictureKeepAspect", -1]; ctrl ctrlSetPosition [0,0,1,1]; ctrl ctrlSetText "A3\Missions_F_Exp\data\Img\lobby\ui_campaign_lobby_background_tablet_radial_left_ca.paa"; ctrl ctrlCommit 0; angle = 0; onEachFrame { with uiNamespace do { if (angle > 359) then {angle = 0}; ctrl ctrlSetAngle [angle, 0.5, 0.5]; angle = angle + 1; }; }; };
Example 3:
_control ctrlSetAngle [25, 0.5, 0.5, false]; _control ctrlCommit 1; // Rotation applies smoothly for 1 second.

Additional Information

See also:
ctrlAnglectrlSetAngle VBS

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Bottom Section