Difference between revisions of "distance"

From Bohemia Interactive Community
Jump to navigation Jump to search
m
m (Text replacement - "|SYNTAX= |p21=" to "|SYNTAX2= |p21=")
(19 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Command|= Comments
+
{{Command|Comments=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| ofp |= Game name
+
| ofp |Game name=
  
|1.00|= Game version
+
|1.00|Game version=
  
|arg= global |= Arguments in MP
+
|arg= global |Multiplayer Arguments=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| Returns the distance in meters between two [[Object]]s, [[Position]]s or (since VBS2 1.24) [[Location]]s.
+
| Returns a distance in meters between [[Object]]s, [[Position]]s or [[Location]]s.
  
<br/><br/>'''NOTE:''' If positions are supplied as arguments, the coordinates are treated as [[PositionATL]] if over the land and as [[PositionASLW]] if over the sea.|= Description
+
<br/><br/>{{Important | If positions are supplied as arguments, the coordinates are treated as [[PositionATL]] if over the land and as [[PositionASLW]] if over the sea. If [[Position2D]] is supplied, z is assumed 0. If you need distance between two [[Position3D]] coordinates, use [[vectorDistance]]}}
 +
<br><br>
 +
[[Image:distance2D.jpg|400px]]|DESCRIPTION=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| var1 '''distance''' var2 |= Syntax
+
| param1 '''distance''' param2 |SYNTAX=
  
|p1= var1: [[Object]], [[Location]] (since VBS2 1.24) or [[Array]]-format [[Position]] |= Parameter 1
+
|p1= param1: [[Object]] or [[Array]] in format [[PositionAGL]] or [[Position2D]] |PARAMETER1=
|p2= var2 or pos2: [[Object]], [[Location]] (since VBS2 1.24) or [[Array]]-format [[Position]] |= Parameter 2
+
|p2= param2: [[Object]] or [[Array]] in format [[PositionAGL]] or [[Position2D]] |PARAMETER2=
  
| [[Number]] -  Distance in meters. |= Return value
+
| [[Number]] -  Distance in meters or 1e10 if distance cannot be calculated |RETURNVALUE=
 +
 
 +
| s2= location1 '''distance''' location2 |SYNTAX2=
 +
 
 +
|p21=  location1: [[Location]] or [[Array]] in format [[Position]] or [[Position2D]] |PARAMETER21=
 +
|p22=  location2: [[Location]] or [[Array]] in format [[Position]] or [[Position2D]] |PARAMETER2=
 +
 
 +
| r2=[[Number]] -  Distance in meters or 1e10 if distance cannot be calculated |RETURNVALUE=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
 
    
 
    
|x1= <code>_meters<nowiki>=</nowiki>player '''distance''' _object</code> |= Example 1
+
|x1= <code>_meters = [[player]] [[distance]] _object;</code> |EXAMPLE1=
|x2= <code>_meters<nowiki>=</nowiki>player '''distance''' [1,2,3]</code> |= Example 2
+
|x2= <code>_meters = [[player]] [[distance]] [1,2,3];</code> |EXAMPLE2=
|x3= <code>_meters<nowiki>=[1,2,3]</nowiki> '''distance''' player</code> |= Example 3
+
|x3= <code>_meters = [1,2,3] [[distance]] [4,5,6];</code> |EXAMPLE3=
|x5= <code>_meters<nowiki>=[1,2,3]</nowiki> '''distance''' [4,5,6]</code> |= Example 5
+
|x4= <code>_meters = [[position]] [[player]] [[distance]] [[nearestLocation]] <nowiki>[</nowiki>[[position]] [[player]], "hill"];</code> |EXAMPLE5=4
  
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| [[distanceSqr]] |= See also
+
| [[distanceSqr]], [[vectorDistance]], [[distance2D]] |SEEALSO=
  
 
}}
 
}}
Line 50: Line 59:
 
player distance [0,0,200]
 
player distance [0,0,200]
 
will return 200, if the player is at this position at ground/sea level.
 
will return 200, if the player is at this position at ground/sea level.
 +
 +
<dd class="notedate">Posted on March 22, 2014
 +
<dt class="note">'''[[User:AgentRev01|AgentRev]]'''<dd class="note">When objects are supplied as arguments, distance is calculated from their model center (object modelToWorld [0,0,0]), and not the position returned by getPos/ATL/ASL.<br/>
 +
However, this is not relevant for units, as their model center matches their world position.
  
 
<!-- Note Section END -->
 
<!-- Note Section END -->
Line 57: Line 70:
  
 
[[Category:Scripting Commands|DISTANCE]]
 
[[Category:Scripting Commands|DISTANCE]]
 +
[[Category:Scripting Commands OFP 1.99|DISTANCE]]
 
[[Category:Scripting Commands OFP 1.96|DISTANCE]]
 
[[Category:Scripting Commands OFP 1.96|DISTANCE]]
 
[[Category:Scripting Commands OFP 1.46|DISTANCE]]
 
[[Category:Scripting Commands OFP 1.46|DISTANCE]]

Revision as of 03:05, 3 September 2019

Hover & click on the images for description

Description

Description:
Returns a distance in meters between Objects, Positions or Locations.

Template:Important

distance2D.jpg
Groups:
Uncategorised

Syntax

Syntax:
param1 distance param2
Parameters:
param1: Object or Array in format PositionAGL or Position2D
param2: Object or Array in format PositionAGL or Position2D
Return Value:
Number - Distance in meters or 1e10 if distance cannot be calculated

Alternative Syntax

Syntax:
location1 distance location2
Parameters:
location1: Location or Array in format Position or Position2D
location2: Location or Array in format Position or Position2D
Return Value:
Number - Distance in meters or 1e10 if distance cannot be calculated

Examples

Example 1:
_meters = player distance _object;
Example 2:
_meters = player distance [1,2,3];
Example 3:
_meters = [1,2,3] distance [4,5,6];
Example 4:
_meters = position player distance nearestLocation [position player, "hill"];

Additional Information

See also:
distanceSqrvectorDistancedistance2D

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 Feb 14, 2007 - 12:00
Sudden Death
distance to position3D (array) doesnt work with OFP, only objects Armed Assault: position3D (array) and object works
Posted on Mar 10, 2010 - 12:00
Rommel
This returns the map distance, not the vector distance, [0,0,0] distance [0,0,1] can be >1 or <1, not exactly 1; unlike the vector math.
Posted on Aug 03, 2012 - 10:15
Igneous01
If a position in format [x, y, z] is provided for both arguments, distance also checks the z dimension as well. Ie: player distance [0,0,200] will return 200, if the player is at this position at ground/sea level.
Posted on March 22, 2014
AgentRev
When objects are supplied as arguments, distance is calculated from their model center (object modelToWorld [0,0,0]), and not the position returned by getPos/ATL/ASL.
However, this is not relevant for units, as their model center matches their world position.

Bottom Section