ctrlMapScreenToWorld: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 60: | Line 60: | ||
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]] | [[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]] | ||
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]] | [[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]] | ||
<!-- CONTINUE Notes --> | |||
<dl class="command_description"> | |||
<dd class="notedate">Posted on August 27, 2017 - 22:00 (UTC)</dd> | |||
<dt class="note">[[User:Icaruk|Icaruk]]</dt> | |||
<dd class="note"> | |||
This example creates a RscMapControl and hints you the [x,y] position where you clicked. | |||
<code>0 spawn { | |||
disableSerialization; | |||
_map = findDisplay 46 createDisplay "RscCredits" ctrlCreate ["RscMapControl", -1]; | |||
_map ctrlSetPosition [0,0,1,1]; | |||
_map ctrlCommit 0; | |||
_map ctrlAddEventHandler ["mouseButtonDown", { | |||
_ctrl = _this select 0; | |||
_x = _this select 2; | |||
_y = _this select 3; | |||
_pos = _ctrl '''ctrlMapScreenToWorld''' [_x, _y]; | |||
hint format ["pos: %1", _pos]; | |||
}]; | |||
};</code> | |||
</dd> | |||
</dl> | |||
<!-- DISCONTINUE Notes --> |
Revision as of 23:00, 27 August 2017
Description
- Description:
- Convert screen coordinates in map to world coordinates.
- Groups:
- Uncategorised
Syntax
- Syntax:
- map ctrlMapScreenToWorld [x, y]
- Parameters:
- map: Control
- [x, y]: Array
- Return Value:
- Array (Position2D Format)
Examples
- Example 1:
_WorldCoord = _Control ctrlMapScreenToWorld _ScreenCoord
- Example 2:
_WorldCoord = _Control ctrlMapScreenToWorld [_x,_y]
Additional Information
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
Notes
- Posted on April 6, 2007 - 23:41
- LowFly
- Notes:
You can get the screen coordinates by the UI Event Handlers onMouseButtonDown, onMouseButtonUp, onMouseButtonClick, onMouseButtonDblClick.
The return Array is in 2-D, you can use it with all set-position commands.
_x = returnArray select 0; _y = returnArray select 1;
- Posted on December 2, 2009 - 16:10
- Besselinksjm
- Notes: In VBS2 1.23 this command does not seem to work properly. Therefore when defining UI Event Handlers onMouseButtonClick and onMouseButtonDblClick the functions onMapSingleClick and onDoubleClick (VBS2) can be used instead, these already provide access to the world coordinates of the click event.
- Ceeeb
-
The command parameters are screen position coordinates, which may not equate to to the map control's coordinates. A map control's screen coordinates and size can be found use the ctrlPosition command. This is an issue when using the Arma 3 in-game map, which is not fullscreen (all previous titles used full screen map controls, so map control coords did equate to screen coords).
Bottom Section
- Posted on August 27, 2017 - 22:00 (UTC)
- Icaruk
-
This example creates a RscMapControl and hints you the [x,y] position where you clicked.
0 spawn { disableSerialization; _map = findDisplay 46 createDisplay "RscCredits" ctrlCreate ["RscMapControl", -1]; _map ctrlSetPosition [0,0,1,1]; _map ctrlCommit 0; _map ctrlAddEventHandler ["mouseButtonDown", { _ctrl = _this select 0; _x = _this select 2; _y = _this select 3; _pos = _ctrl ctrlMapScreenToWorld [_x, _y]; hint format ["pos: %1", _pos]; }]; };