drawIcon: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
m (Text replacement - "|gr1= GUI Control |GROUP1=" to "|gr1= GUI Control - Map |GROUP1=")
(27 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{Command|Comments=
____________________________________________________________________________________________
____________________________________________________________________________________________


| arma |= Game name
| arma |Game name=


|1.00|= Game version
|1.00|Game version=
 
|gr1= GUI Control - Map |GROUP1=
 
 
____________________________________________________________________________________________
 
| Draws an icon on the map. The command needs to be called every frame, preferably with "Draw" control event handler [[ctrlAddEventHandler]].|DESCRIPTION=
____________________________________________________________________________________________
____________________________________________________________________________________________


| Draw an icon on the map. The command needs to be called every frame, preferably with "Draw" control event handler [[ctrlAddEventHandler]].
| map '''drawIcon''' [texture, color, position, width, height, angle, text, shadow, textSize, font, align] |SYNTAX=


|= Description
|p1= map: [[Control]] |PARAMETER1=
____________________________________________________________________________________________
|p2 = [texture, color, position, width, height, angle, text, shadow, textSize, font, align] : [[Array]]|PARAMETER2=
|p3= texture: [[String]] - icon texture |PARAMETER3=
|p4= color: [[Array]] - text and icon color in format [r,g,b,a] |PARAMETER4=
 
|p5= position: [[Position2D]] or [[Position3D]] or [[Object]] |PARAMETER5=
 
|p6= width: [[Number]] - width of the icon but not text|PARAMETER6=
 
|p7= height: [[Number]] - height of the icon but not text|PARAMETER7=


| map '''drawIcon''' [texture, color, position, width, height, angle, text, shadow, textSize, font, align] |= Syntax
|p8= angle: [[Number]] - rotation angle of the icon but not text|PARAMETER8=


|p1= map: [[Control]] |= Parameter 1
|p9= text (Optional): [[String]] |PARAMETER9=  
|p10= shadow (Optional): [[Number]] or [[Boolean]] - 0/false: no shadow, 1: shadow (for text), 2/true: outline (works for text and for icon only if icon angle is 0)|PARAMETER10=
|p11= textSize (Optional): [[Number]] - size of the text in UI units (since Arma 3 v0.72)|PARAMETER11=


|p2= texture: [[String]] |=
|p12= font (Optional): [[String]] - (since Arma 3 v0.72) |PARAMETER12=  
|p3= color: [[Array]] - [r,g,b,a] |=
|p13= align (Optional): [[String]] - (since Arma 3 v0.72) "left", "right", "center". Default is "right" |PARAMETER13=
|p4= position: [[Position2D]] or [[Position3D]] or [[Object]] |=
|p5= width: [[Number]]|=
|p6= height: [[Number]]|=
|p7= angle: [[Number]]|=
|p8= text: [[String]] |=
|p9= shadow: [[Number]] or [[Boolean]] - 0/false: no shadow, 1: shadow (for text), 2/true: outline (works for text and for icon only if icon angle is 0)|=
|p10= textSize: [[Number]] - (since Arma 3 v0.72)|=
|p11= font: [[String]] - (since Arma 3 v0.72) |=
|p12= align: [[String]] - (since Arma 3 v0.72) "left", "right", "center". Default is "right" |=


| [[Nothing]] |= Return value
| [[Nothing]] |RETURNVALUE=


|x1= <code>[[findDisplay]] 12 [[displayCtrl]] 51 [[ctrlAddEventHandler]] ["Draw", "
|x1= Red icon with text: <code>[[findDisplay]] 12 [[displayCtrl]] 51 [[ctrlAddEventHandler]] ["Draw",  
_this [[select]] 0 [[drawIcon]] [
{
'iconStaticMG',
_this [[select]] 0 [[drawIcon]]  
[
"iconStaticMG",
[1,0,0,1],
[1,0,0,1],
[[getPos]] [[player]],
[[getPos]] [[player]],
Line 38: Line 48:
24,
24,
[[getDir]] [[player]],
[[getDir]] [[player]],
'Player Vehicle',
"Player Vehicle",
1,
1,
0.03,
0.03,
'TahomaB',
"TahomaB",
'right'
"right"
]
}];</code>|EXAMPLE1=
 
|x2= Green text only: <code>[[findDisplay]] 12 [[displayCtrl]] 51 [[ctrlAddEventHandler]] ["Draw",
{
_this [[select]] 0 [[drawIcon]]
[
"#(rgb,1,1,1)color(1,1,1,1)",
[0,1,0,1],
[[player]],
0,
0,
0,
[[name]] [[player]]
]
]
"];</code>|= EXAMPLE1
}];</code>|EXAMPLE2=
____________________________________________________________________________________________
____________________________________________________________________________________________


| [[drawArrow]], [[drawEllipse]], [[drawLine]], [[drawRectangle]], [[drawPolygon]] |= See also
| [[drawArrow]], [[drawEllipse]], [[drawLine]], [[drawRectangle]], [[drawPolygon]], [[drawTriangle]] |SEEALSO=


}}
}}
Line 56: Line 80:


<dd class="notedate">Posted on July 03, 2013 - 15:35
<dd class="notedate">Posted on July 03, 2013 - 15:35
<dt class="note">'''[[User:Druid|Druid]]'''<dd class="note">Support of paremeters <i>textSize</i>, <i>font</i> and <i>align</i> is in the game since Arma 3 version 0.72.<br/>
<dt class="note">[[User:Druid|Druid]]<dd class="note">Support of paremeters <i>textSize</i>, <i>font</i> and <i>align</i> is in the game since Arma 3 version 0.72.<br>


<dd class="notedate">Posted on March 22, 2014
<dd class="notedate">Posted on March 22, 2014
<dt class="note">'''[[User:Waffle SS.|Waffle SS.]]'''
<dt class="note">[[User:Waffle SS.|Waffle SS.]]
<dd class="note">icon will always remain the same width and height, if you want an icon scaled to the map, use:<code>('''sizeInMeters''' * 0.15) * 10^(abs log (ctrlMapScale _ctrl))</code> for width and height (guessimated).
<dd class="note">icon will always remain the same width and height, if you want an icon scaled to the map, use:<code>('''sizeInMeters''' * 0.15) * 10^(abs log (ctrlMapScale _ctrl))</code> for width and height (guessimated).
<BR><BR>
<BR><BR>
Line 69: Line 93:


[[Category:Scripting Commands|DRAWICON]]
[[Category:Scripting Commands|DRAWICON]]
[[Category:Scripting Commands ArmA|DRAWICON]]
[[Category:Scripting Commands Armed Assault|DRAWICON]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 2|{{uc:{{PAGENAME}}}}]]
[[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}}}}]]
[[Category:Command_Group:_GUI_Control|{{uc:{{PAGENAME}}}}]]
[[Category:Command_Group:_Editor_Control|{{uc:{{PAGENAME}}}}]]


<!-- CONTINUE Notes -->
<!-- CONTINUE Notes -->
Line 101: Line 123:
<dt class="note">[[User:Benargee|Benargee]]</dt>
<dt class="note">[[User:Benargee|Benargee]]</dt>
<dd class="note">
<dd class="note">
Arma 3 1.54<br/>
Arma 3 1.54<br>
This command doesn't seem to play nice with [[onEachFrame]]. It seems to draw on the main screen while maintaing position relative to the map position<br/>
This command doesn't seem to play nice with [[onEachFrame]]. It seems to draw on the main screen while maintaing position relative to the map position<br>
Example:
Example:
<code>[[onEachFrame]] {
<code>[[onEachFrame]] {
Line 116: Line 138:
<dt class="note">[[User:Icaruk|Icaruk]]</dt>
<dt class="note">[[User:Icaruk|Icaruk]]</dt>
<dd class="note">
<dd class="note">
You can find the possible icons if you unPBO<code>@ui_f_data.pbo<br></code>
If you unPBO the following addon:<br>
on this folder:<br>
<code>@ui_f_data.pbo<br></code>
<code>ui_f_data\map\vehicleicons</code><br>
You can find the possible icons inside this folder:<br>
<code>ui_f\data\map\vehicleicons</code><br>
For example:<br>
For example:<br>
If you want to use "iconman_ca.paa"  you will write "iconman" on the texture string.
If you want to use "iconman_ca.paa"  you will write "iconman" on the texture string.

Revision as of 15:38, 26 September 2020

-wrong parameter ("Arma") defined!-1.00
Hover & click on the images for description

Description

Description:
Draws an icon on the map. The command needs to be called every frame, preferably with "Draw" control event handler ctrlAddEventHandler.
Groups:
GUI Control - Map

Syntax

Syntax:
map drawIcon [texture, color, position, width, height, angle, text, shadow, textSize, font, align]
Parameters:
map: Control
[texture, color, position, width, height, angle, text, shadow, textSize, font, align] : Array
texture: String - icon texture
color: Array - text and icon color in format [r,g,b,a]
position: Position2D or Position3D or Object
width: Number - width of the icon but not text
height: Number - height of the icon but not text
angle: Number - rotation angle of the icon but not text
text (Optional): String
shadow (Optional): Number or Boolean - 0/false: no shadow, 1: shadow (for text), 2/true: outline (works for text and for icon only if icon angle is 0)
textSize (Optional): Number - size of the text in UI units (since Arma 3 v0.72)
font (Optional): String - (since Arma 3 v0.72)
align (Optional): String - (since Arma 3 v0.72) "left", "right", "center". Default is "right"
Return Value:
Nothing

Examples

Example 1:
Red icon with text: findDisplay 12 displayCtrl 51 ctrlAddEventHandler ["Draw", { _this select 0 drawIcon [ "iconStaticMG", [1,0,0,1], getPos player, 24, 24, getDir player, "Player Vehicle", 1, 0.03, "TahomaB", "right" ] }];
Example 2:
Green text only: findDisplay 12 displayCtrl 51 ctrlAddEventHandler ["Draw", { _this select 0 drawIcon [ "#(rgb,1,1,1)color(1,1,1,1)", [0,1,0,1], player, 0, 0, 0, name player ] }];

Additional Information

See also:
drawArrowdrawEllipsedrawLinedrawRectangledrawPolygondrawTriangle

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 July 03, 2013 - 15:35
Druid
Support of paremeters textSize, font and align is in the game since Arma 3 version 0.72.
Posted on March 22, 2014
Waffle SS.
icon will always remain the same width and height, if you want an icon scaled to the map, use:(sizeInMeters * 0.15) * 10^(abs log (ctrlMapScale _ctrl)) for width and height (guessimated).

Bottom Section

Posted on July 20, 2014 - 16:59 (UTC)
AgentRevolution
If you want only text with no icon, you can use "#(argb,8,8,3)color(0,0,0,0)" as texture.
Posted on July 7, 2015 - 21:27 (UTC)
Waffle SS.
Be careful when using this command. Unlike map markers, the draw commands can decrease your framerate.
Posted on January 4, 2016 - 05:41 (UTC)
Benargee
Arma 3 1.54
This command doesn't seem to play nice with onEachFrame. It seems to draw on the main screen while maintaing position relative to the map position
Example: onEachFrame { findDisplay 12 displayCtrl 51 drawIcon ['iconStaticMG',[1,0,0,1],getPos player,24,24,getDir player,'Player Vehicle',1,0.03,'TahomaB','right']; };
Posted on October 13, 2016 - 21:12 (UTC)
Icaruk
If you unPBO the following addon:
@ui_f_data.pbo
You can find the possible icons inside this folder:
ui_f\data\map\vehicleicons
For example:
If you want to use "iconman_ca.paa" you will write "iconman" on the texture string.