Difference between revisions of "distance"

From Bohemia Interactive Community
Jump to navigation Jump to search
(alt syntax, example)
Line 9: Line 9:
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| Returns a distance in meters between two [[Object]]s, [[Position]]s or [[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. If 2D position is supplied, z is assumed 0.
 
<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. If 2D position is supplied, z is assumed 0.
Line 18: Line 18:
 
| param1 '''distance''' param2 |= Syntax
 
| param1 '''distance''' param2 |= Syntax
  
|p1= param1: [[Object]], [[Location]] or [[Array]]-format [[Position]] |= Parameter 1
+
|p1= param1: [[Object]] or [[Array]] in format [[Position]] or [[Position2D]] |= Parameter 1
|p2= param2: [[Object]], [[Location]] or [[Array]]-format [[Position]] |= Parameter 2
+
|p2= param2: [[Object]] or [[Array]] in format [[Position]] or [[Position2D]] |= Parameter 2
  
 
| [[Number]] -  Distance in meters or 1e10 if distance cannot be calculated |= Return value
 
| [[Number]] -  Distance in meters or 1e10 if distance cannot be calculated |= Return value
 +
 +
| s2= location1 '''distance''' location2 |= Syntax
 +
 +
|p21=  location1: [[Location]] or [[Array]] in format [[Position]] or [[Position2D]] |= Parameter 1
 +
|p22=  location2: [[Location]] or [[Array]] in format [[Position]] or [[Position2D]] |= Parameter 2
 +
 +
| r2=[[Number]] -  Distance in meters or 1e10 if distance cannot be calculated |= Return value
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
 
    
 
    
|x1= <code>_meters<nowiki>=</nowiki>player '''distance''' _object</code> |= Example 1
+
|x1= <code>_meters = [[player]] [[distance]] _object;</code> |= Example 1
|x2= <code>_meters<nowiki>=</nowiki>player '''distance''' [1,2,3]</code> |= Example 2
+
|x2= <code>_meters = [[player]] [[distance]] [1,2,3];</code> |= Example 2
|x3= <code>_meters<nowiki>=[1,2,3]</nowiki> '''distance''' player</code> |= Example 3
+
|x3= <code>_meters = [1,2,3] [[distance]] [4,5,6];</code> |= Example 3
|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> |= Example 54
  
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________

Revision as of 21:09, 13 July 2015

Introduced with Operation Flashpoint version 1.001.00Arguments of this scripting command don't have to be local to the client the command is executed on
Hover & click on the images for descriptions

Description

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

NOTE: If positions are supplied as arguments, the coordinates are treated as PositionATL if over the land and as PositionASLW if over the sea. If 2D position is supplied, z is assumed 0.

distance2D.jpg

Syntax

Syntax:
param1 distance param2
Parameters:
param1: Object or Array in format Position or Position2D
param2: Object or Array in format Position 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

i
Only post proven facts here. Report bugs on the Feedback Tracker and discuss on the Arma Discord or on the Forums.

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