ctrlSetAngle: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "|=GROUP1" to "|GROUP1=")
m (Text replacement - " \| *r2 *=(.*)\| *RETURNVALUE *= * " to " |r2=$1|RETURNVALUE2= ")
Line 32: Line 32:
|p26= now: [[Boolean]] ''(default: [[true]])'' - if [[false]] control will wait for [[ctrlCommit]] input for result to apply  |PARAMETER6=
|p26= now: [[Boolean]] ''(default: [[true]])'' - if [[false]] control will wait for [[ctrlCommit]] input for result to apply  |PARAMETER6=


| r2 = [[Nothing]] |RETURNVALUE=
|r2= [[Nothing]] |RETURNVALUE2=


|x1=<code> _control [[ctrlSetAngle]] [25, 0.5, 0.5];</code> |EXAMPLE1=
|x1=<code> _control [[ctrlSetAngle]] [25, 0.5, 0.5];</code> |EXAMPLE1=

Revision as of 02:22, 25 September 2020

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:
GUI Control

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