drawLine3D: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
(Add Width parameter)
(62 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma3 |= Game name
|game1= arma3
|version1= 0.50


|0.50|= Game version
|gr1= Interaction
____________________________________________________________________________________________


| Draws a line of a given color between two 3D positions. Command has to be executed each frame. Use [[onEachFrame]] or [[addMissionEventHandler]] "Draw3D". |= Description
|eff= local
____________________________________________________________________________________________


| '''drawLine3D''' [start, end, color] |= Syntax
|descr= Draws a line of a given colour between two 3D positions in the current frame. To be used mostly in a [[Arma 3: Mission Event Handlers#Draw3D|"Draw3D"]] [[addMissionEventHandler|mission event handler]].


|p1= [start, end, color]: [[Array]]  |= PARAMETER1
|s1= [[drawLine3D]] [start, end, color, width]


|p2= start: [[Position]] |= PARAMETER2
|p1= start: [[Array]] format [[Position#PositionAGL|PositionAGL]]


|p3= end: [[Position]] |= PARAMETER3
|p2= end: [[Array]] format [[Position#PositionAGL|PositionAGL]]


|p4= color: [[Color]] |= PARAMETER4
|p3= color: [[Array]] format [[Color|Color (RGBA)]]


| [[Nothing]] |= RETURNVALUE
|p4= width: [[Number]] - (Optional, default 3)
|p4since= arma3 2.18


|r1= [[Nothing]]


|x1= <code>[[onEachFrame]] {
|x1= <sqf>onEachFrame {
[[drawLine3D]] <nowiki>[</nowiki>[[getPos]] [[player]], [[getPos]] [[cursorTarget]], [1,1,1,1]];
drawLine3D [getPos player, getPos cursorTarget, [1,1,1,1]];
};</code>|= EXAMPLE1
};</sqf>
____________________________________________________________________________________________


| [[drawIcon3D]] |= SEEALSO
|seealso= [[drawIcon3D]] [[ASLToAGL]]
 
|  |= MPBEHAVIOUR
____________________________________________________________________________________________
}}
}}


<h3 style='display:none'>Notes</h3>
{{Note
<dl class='command_description'>
|user= Killzone_Kid
<!-- Note Section BEGIN -->
|timestamp= 20130831092700
<dd class="notedate">Posted on August 31, 2013
|text= As the command syntax indicates, this command expects starting and ending position in format [[Position#PositionAGL|PositionAGL]] meaning that over the land it expects [[Position#PositionATL|PositionATL]] and over the sea [[Position#PositionASLW|PositionASLW]]. Use additional [[ASLToAGL]] and [[AGLToASL]] commands wherever is necessary.  
<dt class="note">'''[[User:Killzone_Kid|Killzone_Kid]]'''
<dd class="note">As command syntax indicates, this command expects starting and ending position in format [[Position]] meaning that over the land it expects [[PositionATL]] and over the sea [[PositionASL]]. Use additional [[ASLToATL]] and [[ATLToASL]] commands wherever is necessary. Alternatively use [[getPos]] or [[position]] commands, which will automatically adjust Z.


<code>[[addMissionEventHandler]] ["Draw3D", {
<sqf>addMissionEventHandler ["Draw3D", {
[[drawLine3D]] <nowiki>[</nowiki>[[ASLToATL]] [[eyePos]] soldier1, [[ASLToATL]] [[eyePos]] soldier2, [1,0,0,1]];
drawLine3D [ASLToAGL eyePos soldier1, ASLToAGL eyePos soldier2, [1,0,0,1]];
}];</code>
}];</sqf>
}}


{{Note
|user= Waffle SS.
|timestamp= 20150218021000
|text= Visible through fog and past draw distance.
}}


<!-- Note Section END -->
{{Note
</dl>
|user= fusselwurm
 
|timestamp= 20211125213710
<h3 style='display:none'>Bottom Section</h3>
|text= Caveat: lines invisible through MH-9 helicopter windows, see https://feedback.bistudio.com/T66225
[[Category:Arma_3:_New_Scripting_Commands_List|{{uc:{{PAGENAME}}}}]]
}}
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]

Revision as of 09:46, 5 July 2024

Hover & click on the images for description

Description

Description:
Draws a line of a given colour between two 3D positions in the current frame. To be used mostly in a "Draw3D" mission event handler.
Groups:
Interaction

Syntax

Syntax:
drawLine3D [start, end, color, width]
Parameters:
start: Array format PositionAGL
end: Array format PositionAGL
color: Array format Color (RGBA)
since Arma 3 logo black.png2.18
width: Number - (Optional, default 3)
Return Value:
Nothing

Examples

Example 1:
onEachFrame { drawLine3D [getPos player, getPos cursorTarget, [1,1,1,1]]; };

Additional Information

See also:
drawIcon3D ASLToAGL

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
Killzone_Kid - c
Posted on Aug 31, 2013 - 09:27 (UTC)
As the command syntax indicates, this command expects starting and ending position in format PositionAGL meaning that over the land it expects PositionATL and over the sea PositionASLW. Use additional ASLToAGL and AGLToASL commands wherever is necessary.
addMissionEventHandler ["Draw3D", { drawLine3D [ASLToAGL eyePos soldier1, ASLToAGL eyePos soldier2, [1,0,0,1]]; }];
Waffle SS. - c
Posted on Feb 18, 2015 - 02:10 (UTC)
Visible through fog and past draw distance.
fusselwurm - c
Posted on Nov 25, 2021 - 21:37 (UTC)
Caveat: lines invisible through MH-9 helicopter windows, see https://feedback.bistudio.com/T66225