Difference between revisions of "inArea"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|seealso= *\[\[([^ ]+)\]\], \[\[([^ ]+)\]\]" to "|seealso= $1 $2")
m
 
(9 intermediate revisions by 3 users not shown)
Line 18: Line 18:
 
|s1= position [[inArea]] area
 
|s1= position [[inArea]] area
  
|p1= position: [[Object]] or [[Array]] in format [[Position#Introduction|Position2D]] or [[Position#Introduction|Position3D]]
+
|p1= position: [[Object]] or [[Array]] in format [[Position#Introduction|Position2D]] or [[Position#Introduction|Position3D]] (must be [[Position#PositionAGL|PositionAGL]] if area is checked in 3D)
  
 
|p2= area: [[Object]], [[String]], [[Location]]
 
|p2= area: [[Object]], [[String]], [[Location]]
Line 29: Line 29:
 
|s2= position [[inArea]] [center, a, b, angle, isRectangle, c]
 
|s2= position [[inArea]] [center, a, b, angle, isRectangle, c]
  
|p21= position: [[Object]] or [[Array]] in format [[Position#Introduction|Position2D]] or [[Position#Introduction|Position3D]]
+
|p21= position: [[Object]] or [[Array]] in format [[Position#Introduction|Position2D]] or [[Position#Introduction|Position3D]] (must be [[Position#PositionAGL|PositionAGL]] if area is checked in 3D)
  
|p22= center: [[Array]] or [[Object]] - center of the area in format [[Position#Introduction|Position2D]], [[Position#Introduction|Position3D]], [[Object]] or [[Group]]
+
|p22= center: [[Array]] or [[Object]] - center of the area in format [[Position#Introduction|Position2D]], [[Position#Introduction|Position3D]] (must be [[Position#PositionAGL|PositionAGL]] if area is checked in 3D), [[Object]] or [[Group]]
  
 
|p23= a: [[Number]] - x axis (x / 2)
 
|p23= a: [[Number]] - x axis (x / 2)
Line 46: Line 46:
 
|r2= [[Boolean]]
 
|r2= [[Boolean]]
  
|x1= <code>_playerIsInside = [[player]] [[inArea]] _myTrigger;</code>
+
|x1= <sqf>_playerIsInside = player inArea _myTrigger;</sqf>
  
|x2= <code>_positionIsInside = _myPosition [[inArea]] [<nowiki/>[100, 100, 0], 20, 30, 45, [[false]]];</code>
+
|x2= <sqf>_positionIsInside = _myPosition inArea [[100, 100, 0], 20, 30, 45, false];</sqf>
  
|seealso= [[inAreaArray]] [[triggerArea]] [[in]] [[inPolygon]] [[drawEllipse]] [[drawRectangle]] [[createTrigger]], [[createMarker]], [[createLocation]]
+
|seealso= [[inAreaArray]] [[triggerArea]] [[in]] [[inPolygon]] [[drawEllipse]] [[drawRectangle]] [[createTrigger]] [[createMarker]] [[createLocation]]
 
}}
 
}}

Latest revision as of 20:41, 20 August 2022

Hover & click on the images for description

Description

Description:
Checks whether given position or object is inside given area. Use inAreaArray to check multiple positions/objects within area.
This command also supports hexagon area which can be created from ellipse when both a and b are negative. Hexagon ellipses are also supported by both marker creation and drawEllipse.
Groups:
TriggersMarkersLocationsPositions

Syntax

Syntax:
position inArea area
Parameters:
position: Object or Array in format Position2D or Position3D (must be PositionAGL if area is checked in 3D)
area: Object, String, Location
Return Value:
Boolean

Alternative Syntax

Syntax:
position inArea [center, a, b, angle, isRectangle, c]
Parameters:
position: Object or Array in format Position2D or Position3D (must be PositionAGL if area is checked in 3D)
center: Array or Object - center of the area in format Position2D, Position3D (must be PositionAGL if area is checked in 3D), Object or Group
a: Number - x axis (x / 2)
b: Number - y axis (y / 2)
angle: Number - rotation angle
isRectangle: Boolean - true if rectangle, false if ellipse
since Arma 3 logo black.png1.60
c: Number - (Optional, default -1 (unlimited)) z axis (z / 2)
Return Value:
Boolean

Examples

Example 1:
_playerIsInside = player inArea _myTrigger;
Example 2:
_positionIsInside = _myPosition inArea [[100, 100, 0], 20, 30, 45, false];

Additional Information

See also:
inAreaArray triggerArea in inPolygon drawEllipse drawRectangle createTrigger createMarker createLocation

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