BIS fnc drawArrow: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(optional base width coef)
m (Text replacement - "{{Feature|Informative|" to "{{Feature|informative|")
 
(33 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Function|Comments=
{{RV|type=function
____________________________________________________________________________________________


| arma3dev |Game name=
|game1= arma3
|version1= 1.74


|1.73|Game version=
|gr1= Map and Markers
____________________________________________________________________________________________


| Draws a static arrow (outline or color filled) on map. See Example 4 for arrow removal.
|descr= Draws a static arrow (outline or color filled) on map. See {{Link|#Example 4}} for arrow removal.
{{Informative|Note that the order in which arrows are added to map is reversed, the last added arrow will appear under the first added arrow}}|DESCRIPTION=
{{Feature|informative|Note that the order in which arrows are added to map is reversed, the last added arrow will appear under the first added arrow}}
____________________________________________________________________________________________


| [from, to, color, pars, fill, map] call [[BIS_fnc_drawArrow]] |SYNTAX=
|s1= [from, to, color, pars, fill, map] call [[BIS_fnc_drawArrow]]


|p1= from: [[Array]] - Arrow start position in format [x,y] or [x,y,z]|PARAMETER1=
|p1= from: [[Array]] - arrow start position in format [x,y] or [x,y,z]
|p2= to: [[Array]] - Arrow end position in format [x,y] or [x,y,z]|PARAMETER2=
|p3= color (Optional): [[Array]] - Arrow line or fill color in format [r,g,b,a]. Default: [1,1,1,1] |PARAMETER3=
|p4= pars (Optional): [[Array]] - Arrow geometry details in format [arrowThickness, arrowHeadLengthCoef, arrowHeadWidthCoef], where:
* arrowThickness (Optional):  [[Number]] - Arrow thickness in meters. Default: 10
* arrowHeadLengthCoef (Optional):  [[Number]] - Arrow head length compared to the total length of the arrow. Default: 1/3 (third of the length)
* arrowHeadWidthCoef (Optional):  [[Number]] - Arrow head width compared to the arrow thickness. Default: 2 (twice as wide)
* arrowBaseWidthCoef (Optional):  [[Number]] - Arrow base width compared to the arrow thickness. Default: 1 (same width)  - ''Since Arma 3 v1.97''|PARAMETER4=
|p5= fill (Optional): [[Boolean]] - [[true]] to draw color filled arrow, [[false]] to draw outline. Default: [[true]]|PARAMETER5=
|p6= map (Optional): [[Control]] - Map control. Default: [[displayCtrl|control]] 51 of the main map [[findDisplay|display]] 12|PARAMETER6=


| [[Array]] - Arrow reference for removal in format [idd, idc, ehId] or empty array [] on removal operation
|p2= to: [[Array]] - arrow end position in format [x,y] or [x,y,z]


<br><br>[[Image:fnc_drawArrow.jpg|250px]]|RETURNVALUE=
|p3= color: [[Array]] format [[Color|Color (RGBA)]] - (Optional, default [1,1,1,1]) arrow line or fill color
____________________________________________________________________________________________
 
|x1= Draw a semi-transparent, blue arrow with default geometry:<code>myArrow1 = [_pos1, _pos2, [0,0,1,0.5]] [[call]] [[BIS_fnc_drawArrow]];</code> |Example1=


|x2= Draw a wide, green arrow outline:<code>myArrow2 = [_pos1, _pos2, [0,1,0,1], [20], [[false]]] [[call]] [[BIS_fnc_drawArrow]]; </code> |=
|p4= pars: [[Array]] - (Optional) arrow geometry details in format [arrowThickness, arrowHeadLengthCoef, arrowHeadWidthCoef], where:
|x3= Draw a thin, red arrow with custom head geometry:<code>myArrow3 = [_pos1, _pos2, [1,0,0,1], [1,1/5,5]] [[call]] [[BIS_fnc_drawArrow]];</code> |=
* arrowThickness: [[Number]] - (Optional, default 10) arrow thickness in meters
|x4= Remove the arrow created in Example 3:<code>myArrow3 [[call]] [[BIS_fnc_drawArrow]];</code> |=
* arrowHeadLengthCoef: [[Number]] - (Optional, default 1/3) arrow head length compared to the total length of the arrow
____________________________________________________________________________________________
* arrowHeadWidthCoef:  [[Number]] - (Optional, default 2) arrow head width compared to the arrow thickness
* {{GVI|arma3|1.98|size= 0.75}} arrowBaseWidthCoef: [[Number]] - (Optional, default 1) arrow base width compared to the arrow thickness


| [[drawArrow]] |SEEALSO=
|p5= fill: [[Boolean]] - (Optional, default [[true]]) [[true]] to draw color filled arrow, [[false]] to draw outline
}}
 
|p6= map: [[Control]] - (Optional, default [[findDisplay|display]] 12 [[displayCtrl]] 51) map control
 
|r1= [[Array]] - arrow reference for removal in format [idd, idc, ehId] or empty array [] on removal operation
 
<br><br>[[File:fnc_drawArrow.jpg|448px]] [[File:BIS_fnc_drawArrow2.jpg|400px]]
 
|x1= Draw a semi-transparent, blue arrow with default geometry:
<sqf>myArrow1 = [_pos1, _pos2, [0,0,1,0.5]] call BIS_fnc_drawArrow;</sqf>
 
|x2= Draw a wide, green arrow outline:
<sqf>myArrow2 = [_pos1, _pos2, [0,1,0,1], [20], false] call BIS_fnc_drawArrow;</sqf>
 
|x3= Draw a thin, red arrow with custom head geometry:
<sqf>myArrow3 = [_pos1, _pos2, [1,0,0,1], [1,1/5,5]] call BIS_fnc_drawArrow;</sqf>
 
|x4= Remove the arrow created in {{Link|#Example 3}}:
<sqf>myArrow3 call BIS_fnc_drawArrow;</sqf>


<h3 style="display:none">Notes</h3>
|x5= <sqf>
<dl class="command_description">
myArrow1 = [[100,400,0], [200,500,0], [1,0,0,1], [20], true] call BIS_fnc_drawArrow;
</dl>
myArrow2 = [[400,700,0], [300,600,0], [0,1,0,1], [20, 1/3, 2, 2], true] call BIS_fnc_drawArrow;
myArrow3 = [[600,700,0], [400,900,0], [0,0,1,1], [20, 1/3, 2, 0.5], true] call BIS_fnc_drawArrow;
myArrow4 = [[100,100,0], [200,200,0], [0,0,0,1], [20], false] call BIS_fnc_drawArrow;
myArrow5 = [[400,400,0], [300,300,0], [1,1,1,1], [20, 1/3, 2, 2], false] call BIS_fnc_drawArrow;
myArrow6 = [[600,400,0], [400,600,0], [0,1,1,1], [20, 1/3, 2, 0.5], false] call BIS_fnc_drawArrow;
</sqf>


<h3 style="display:none">Bottom Section</h3>
|seealso= [[drawArrow]]
[[Category:Function Group: Misc|{{uc:drawArrow}}]]
}}
[[Category:Functions|{{uc:drawArrow}}]]
[[Category:{{Name|arma3}}: Functions|{{uc:drawArrow}}]]

Latest revision as of 00:25, 2 February 2024

Hover & click on the images for description

Description

Description:
Draws a static arrow (outline or color filled) on map. See Example 4 for arrow removal.
Note that the order in which arrows are added to map is reversed, the last added arrow will appear under the first added arrow
Execution:
call
Groups:
Map and Markers

Syntax

Syntax:
[from, to, color, pars, fill, map] call BIS_fnc_drawArrow
Parameters:
from: Array - arrow start position in format [x,y] or [x,y,z]
to: Array - arrow end position in format [x,y] or [x,y,z]
color: Array format Color (RGBA) - (Optional, default [1,1,1,1]) arrow line or fill color
pars: Array - (Optional) arrow geometry details in format [arrowThickness, arrowHeadLengthCoef, arrowHeadWidthCoef], where:
  • arrowThickness: Number - (Optional, default 10) arrow thickness in meters
  • arrowHeadLengthCoef: Number - (Optional, default 1/3) arrow head length compared to the total length of the arrow
  • arrowHeadWidthCoef: Number - (Optional, default 2) arrow head width compared to the arrow thickness
  • Arma 3 logo black.png1.98 arrowBaseWidthCoef: Number - (Optional, default 1) arrow base width compared to the arrow thickness
fill: Boolean - (Optional, default true) true to draw color filled arrow, false to draw outline
map: Control - (Optional, default display 12 displayCtrl 51) map control
Return Value:
Array - arrow reference for removal in format [idd, idc, ehId] or empty array [] on removal operation

fnc drawArrow.jpg BIS fnc drawArrow2.jpg

Examples

Example 1:
Draw a semi-transparent, blue arrow with default geometry:
myArrow1 = [_pos1, _pos2, [0,0,1,0.5]] call BIS_fnc_drawArrow;
Example 2:
Draw a wide, green arrow outline:
myArrow2 = [_pos1, _pos2, [0,1,0,1], [20], false] call BIS_fnc_drawArrow;
Example 3:
Draw a thin, red arrow with custom head geometry:
myArrow3 = [_pos1, _pos2, [1,0,0,1], [1,1/5,5]] call BIS_fnc_drawArrow;
Example 4:
Remove the arrow created in Example 3:
myArrow3 call BIS_fnc_drawArrow;
Example 5:
myArrow1 = [[100,400,0], [200,500,0], [1,0,0,1], [20], true] call BIS_fnc_drawArrow; myArrow2 = [[400,700,0], [300,600,0], [0,1,0,1], [20, 1/3, 2, 2], true] call BIS_fnc_drawArrow; myArrow3 = [[600,700,0], [400,900,0], [0,0,1,1], [20, 1/3, 2, 0.5], true] call BIS_fnc_drawArrow; myArrow4 = [[100,100,0], [200,200,0], [0,0,0,1], [20], false] call BIS_fnc_drawArrow; myArrow5 = [[400,400,0], [300,300,0], [1,1,1,1], [20, 1/3, 2, 2], false] call BIS_fnc_drawArrow; myArrow6 = [[600,400,0], [400,600,0], [0,1,1,1], [20, 1/3, 2, 0.5], false] call BIS_fnc_drawArrow;

Additional Information

See also:
drawArrow

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