safeZoneW: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(populated with empty template)
m (Text replacement - "[[Image:" to "[[File:")
 
(77 intermediate revisions by 11 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma2 |= Game name
|game1= arma2
|version1= 1.00


|1.00|= Game version
|game2= arma2oa
____________________________________________________________________________________________
|version2= 1.50


| (description) |= Description
|game3= tkoh
____________________________________________________________________________________________
|version3= 1.00


| '''(command)''' |= Syntax
|game4= arma3
|version4= 0.50


|p1= |= PARAMETER1
|gr1= GUI Control - Positioning


|p2= |= PARAMETER2
|descr= [[File:safezone.jpg|right|600px]]
Returns the width of the screen in screen measurement units.
Taken from top left corner of the default viewport (0,0) of the screen and going in the same direction as the X axis, the value will be positive but resulting X will end up beyond the right border.
Therefore in order to calculate X of the right screen border, the length of [[safeZoneX]] must be subtracted from [[safeZoneW]], but because it is negative, it must be added instead.
<sqf inline>_screenRightBorderX = safeZoneW + safeZoneX</sqf>. The measurement units depend on the current screen resolution [[getResolution]]. See also [[SafeZone]].


|p3= |= PARAMETER3
|s1= [[safeZoneW]]


| |= RETURNVALUE
|r1= [[Number]] - screen width in screen measurement units


|x1= <sqf>_screenWidth = safeZoneW;</sqf>


|x1= <code>(example)</code>|= EXAMPLE1
|x2= <sqf>
_screenLeftBorderX = safeZoneX;
_screenRightBorderX = safeZoneW + safeZoneX;
</sqf>


____________________________________________________________________________________________
|x3= Create control 50% wide, 30% tall, centered on screen:
<sqf>
private _ctrl = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscText", -1];
_ctrl ctrlSetBackgroundColor [1,0,0,0.5];
private _ctrlWidth = 0.5 * safeZoneW; // 50% of screen width
private _ctrlHeight = 0.3 * safeZoneH; // 30% of screen height
_ctrl ctrlSetPositionW _ctrlWidth;
_ctrl ctrlSetPositionH _ctrlHeight;
_ctrl ctrlSetPositionX ((safeZoneW - _ctrlWidth) / 2 + safeZoneX); // center it horizontally
_ctrl ctrlSetPositionY ((safeZoneH - _ctrlHeight) / 2 + safeZoneY); // center it vertically
_ctrl ctrlCommit 0;
</sqf>


| |= SEEALSO
|seealso= [[SafeZone]] [[safeZoneX]] [[safeZoneY]] [[safeZoneH]] [[safeZoneXAbs]] [[safeZoneWAbs]]
 
|  |= MPBEHAVIOUR
____________________________________________________________________________________________
}}
}}
<h3 style='display:none'>Notes</h3>
<dl class='command_description'>
<!-- Note Section BEGIN -->
<!-- Note Section END -->
</dl>
<h3 style='display:none'>Bottom Section</h3>
[[Category:ArmA 2: New Scripting Commands List|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]

Latest revision as of 23:10, 20 November 2023

Hover & click on the images for description

Description

Description:
safezone.jpg

Returns the width of the screen in screen measurement units. Taken from top left corner of the default viewport (0,0) of the screen and going in the same direction as the X axis, the value will be positive but resulting X will end up beyond the right border. Therefore in order to calculate X of the right screen border, the length of safeZoneX must be subtracted from safeZoneW, but because it is negative, it must be added instead.

_screenRightBorderX = safeZoneW + safeZoneX. The measurement units depend on the current screen resolution getResolution. See also SafeZone.
Groups:
GUI Control - Positioning

Syntax

Syntax:
safeZoneW
Return Value:
Number - screen width in screen measurement units

Examples

Example 1:
_screenWidth = safeZoneW;
Example 2:
_screenLeftBorderX = safeZoneX; _screenRightBorderX = safeZoneW + safeZoneX;
Example 3:
Create control 50% wide, 30% tall, centered on screen:
private _ctrl = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscText", -1]; _ctrl ctrlSetBackgroundColor [1,0,0,0.5]; private _ctrlWidth = 0.5 * safeZoneW; // 50% of screen width private _ctrlHeight = 0.3 * safeZoneH; // 30% of screen height _ctrl ctrlSetPositionW _ctrlWidth; _ctrl ctrlSetPositionH _ctrlHeight; _ctrl ctrlSetPositionX ((safeZoneW - _ctrlWidth) / 2 + safeZoneX); // center it horizontally _ctrl ctrlSetPositionY ((safeZoneH - _ctrlHeight) / 2 + safeZoneY); // center it vertically _ctrl ctrlCommit 0;

Additional Information

See also:
SafeZone safeZoneX safeZoneY safeZoneH safeZoneXAbs safeZoneWAbs

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