inArea: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " \| *(game[0-9]|version[0-9]|gr[0-9]|serverExec|mp|pr|descr|s[0-9]|p[0-9]{1,3}|r[0-9]|x1?[0-9]|seealso) *= +" to " |$1= ")
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Command|Comments=
{{RV|type=command
____________________________________________________________________________________________


| arma3 |Game name=
|game1= arma3
|version1= 1.58


|1.58|Game Version (number surrounded by NO SPACES)=
|gr1= Triggers
____________________________________________________________________________________________


| Checks whether given position is inside given area. The area is usually a rectangle or an ellipse defined similar to [[triggerArea]] format. Hence argument for this command could be a trigger, a marker, a location or an array in format [center, a, b, angle, isRectangle, c]. 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]]. <br><br>
|gr2= Markers
Alternatively, use [[inAreaArray]] to check multiple positions/objects within area. |DESCRIPTION=
____________________________________________________________________________________________


| position [[inArea]] trigger |SYNTAX=
|gr3= Locations


|p1= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]] |PARAMETER1=
|gr4= Positions


|p2= trigger: [[Object]] - existing trigger |PARAMETER2=
|descr= Checks whether given position is inside given area. The area is usually a rectangle or an ellipse defined similar to [[triggerArea]] format. Hence argument for this command could be a trigger, a marker, a location or an array in format [center, a, b, angle, isRectangle, c]. 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]]. <br><br>
Alternatively, use [[inAreaArray]] to check multiple positions/objects within area.


| [[Boolean]] |RETURNVALUE=
|s1= position [[inArea]] trigger
____________________________________________________________________________________________


|s2= position [[inArea]] marker |SYNTAX2=
|p1= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]]


|p21= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]] |PARAMETER21=
|p2= trigger: [[Object]] - existing trigger


|p22= marker: [[String]] - existing marker |PARAMETER22=
|r1= [[Boolean]]


|r2= [[Boolean]] |RETURNVALUE2=
|s2= position [[inArea]] marker
____________________________________________________________________________________________


|s3= position [[inArea]] location|SYNTAX3=
|p21= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]]


|p41= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]] |PARAMETER41=
|p22= marker: [[String]] - existing marker


|p42= location: [[Location]] - existing location |PARAMETER42=
|r2= [[Boolean]]


|r3= [[Boolean]] |RETURNVALUE3=
|s3= position [[inArea]] location
____________________________________________________________________________________________


|s4= position [[inArea]] [center, a, b, angle, isRectangle, c]|SYNTAX4=
|p41= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]]


|p61= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]] |PARAMETER61=
|p42= location: [[Location]] - existing location


|p62= center: [[Array]] or [[Object]] - center of the area in format [[Position3D]], [[Position2D]], [[Object]] or [[Group]] |PARAMETER62=
|r3= [[Boolean]]


|p63= a: [[Number]] - x axis (x / 2)|PARAMETER63=
|s4= position [[inArea]] [center, a, b, angle, isRectangle, c]


|p64= b: [[Number]] - y axis (y / 2) |PARAMETER64=
|p61= position: [[Array]] or [[Object]] - position in format [[Position3D]], [[Position2D]] or [[Object]]


|p65= angle: [[Number]] - rotation angle  |PARAMETER65=
|p62= center: [[Array]] or [[Object]] - center of the area in format [[Position3D]], [[Position2D]], [[Object]] or [[Group]]


|p66= isRectangle: [[Boolean]] - [[true]] if rectangle, [[false]] if ellipse|PARAMETER66=
|p63= a: [[Number]] - x axis (x / 2)


|p67= c (Optional): [[Number]] - z axis (z / 2). Default: -1 (unlimited) ''since Arma 3 v1.59.135137''|PARAMETER67=
|p64= b: [[Number]] - y axis (y / 2)


|r4= [[Boolean]] |RETURNVALUE4=
|p65= angle: [[Number]] - rotation angle
____________________________________________________________________________________________


|p66= isRectangle: [[Boolean]] - [[true]] if rectangle, [[false]] if ellipse


|x1= <code>_playerIsInside = [[player]] [[inArea]] _myTrigger;</code>|Example1=
|p67= c (Optional): [[Number]] - z axis (z / 2). Default: -1 (unlimited) ''since Arma 3 v1.60''


|x2= <code>_positionIsInside = _myPosition [[inArea]] [<nowiki/>[100, 100, 0], 20, 30, 45, [[false]]];</code>|Example2=
|r4= [[Boolean]]


|[[inAreaArray]], [[triggerArea]], [[in]], [[inPolygon]], [[drawEllipse]], [[drawRectangle]], [[createTrigger]], [[createMarker]], [[createLocation]] |SEEALSO=
|x1= <code>_playerIsInside = [[player]] [[inArea]] _myTrigger;</code>
}}


<h3 style="display:none">Notes</h3>
|x2= <code>_positionIsInside = _myPosition [[inArea]] [<nowiki/>[100, 100, 0], 20, 30, 45, [[false]]];</code>
<dl class="command_description">
</dl>


<h3 style="display:none">Bottom Section</h3>
|seealso= [[inAreaArray]], [[triggerArea]], [[in]], [[inPolygon]], [[drawEllipse]], [[drawRectangle]], [[createTrigger]], [[createMarker]], [[createLocation]]
}}

Revision as of 23:14, 19 June 2021

Hover & click on the images for description

Description

Description:
Checks whether given position is inside given area. The area is usually a rectangle or an ellipse defined similar to triggerArea format. Hence argument for this command could be a trigger, a marker, a location or an array in format [center, a, b, angle, isRectangle, c]. 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.

Alternatively, use inAreaArray to check multiple positions/objects within area.
Groups:
TriggersMarkersLocationsPositions

Syntax 1

Syntax:
position inArea trigger
Parameters:
position: Array or Object - position in format Position3D, Position2D or Object
trigger: Object - existing trigger
Return Value:
Boolean

Syntax 2

Syntax:
position inArea marker
Parameters:
position: Array or Object - position in format Position3D, Position2D or Object
marker: String - existing marker
Return Value:
Boolean

Syntax 3

Syntax:
position inArea location
Parameters:
position: Array or Object - position in format Position3D, Position2D or Object
location: Location - existing location
Return Value:
Boolean

Syntax 4

Syntax:
position inArea [center, a, b, angle, isRectangle, c]
Parameters:
position: Array or Object - position in format Position3D, Position2D or Object
center: Array or Object - center of the area in format Position3D, Position2D, 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
c (Optional): Number - z axis (z / 2). Default: -1 (unlimited) since Arma 3 v1.60
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:
inAreaArraytriggerAreaininPolygondrawEllipsedrawRectanglecreateTriggercreateMarkercreateLocation

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