BIS fnc getIntersectionsUnderCursor: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - " <h3 style="display:none">Notes</h3> <dl class="command_description"> <!-- Note Section BEGIN --> <!-- Note Section END --> </dl>" to "") |
Lou Montana (talk | contribs) m (Text replacement - " *\| *([Cc]omments|COMMENTS|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments \("local" or "global"\)|Multiplayer Effects \("local" or "global"\)|Multiplayer Execution \("server" o...) |
||
Line 1: | Line 1: | ||
{{Function | {{Function | ||
| arma3 | | arma3 | ||
|1.00 | |1.00 | ||
|gr1 = Geometry | |gr1 = Geometry | ||
| Returns intersections under cursor. For more information see [[lineIntersectsSurfaces]]. | | Returns intersections under cursor. For more information see [[lineIntersectsSurfaces]]. | ||
| [begPosASL, endPosASL, ignoreObj1, ignoreObj2, sortMode, maxResults] call [[BIS_fnc_getIntersectionsUnderCursor]] | | [begPosASL, endPosASL, ignoreObj1, ignoreObj2, sortMode, maxResults] call [[BIS_fnc_getIntersectionsUnderCursor]] | ||
|p1= [begPosASL, endPosASL, ignoreObj1, ignoreObj2, sortMode, maxResults, LOD1, LOD2]: [[Array]] | |p1= [begPosASL, endPosASL, ignoreObj1, ignoreObj2, sortMode, maxResults, LOD1, LOD2]: [[Array]] | ||
|p2= begPosASL: [[PositionASL]] - virtual line start | |p2= begPosASL: [[PositionASL]] - virtual line start | ||
|p3= endPosASL: [[PositionASL]] - virtual line end | |p3= endPosASL: [[PositionASL]] - virtual line end | ||
|p4= ignoreObj1 (Optional): [[Object]] - first object to ignore or [[objNull]]: Default: [[objNull]] | |p4= ignoreObj1 (Optional): [[Object]] - first object to ignore or [[objNull]]: Default: [[objNull]] | ||
|p5= ignoreObj2 (Optional): [[Object]] - second object to ignore or [[objNull]]: Default: [[objNull]] | |p5= ignoreObj2 (Optional): [[Object]] - second object to ignore or [[objNull]]: Default: [[objNull]] | ||
|p6= sortMode (Optional): [[Boolean]] - [[true]]: closest to furthest, [[false]]: furthest to closest. Default: [[true]] | |p6= sortMode (Optional): [[Boolean]] - [[true]]: closest to furthest, [[false]]: furthest to closest. Default: [[true]] | ||
|p7= maxResults (Optional): [[Number]] - Max results to return. -1 to return every result. Default: 1 | |p7= maxResults (Optional): [[Number]] - Max results to return. -1 to return every result. Default: 1 | ||
|[[Array]] of intersections in format [<nowiki/>[intersectPosASL, surfaceNormal, intersectObj, parentObject],...] where: | |[[Array]] of intersections in format [<nowiki/>[intersectPosASL, surfaceNormal, intersectObj, parentObject],...] where: | ||
Line 24: | Line 24: | ||
* [[surfaceNormal]] - a normal to the intersected surface | * [[surfaceNormal]] - a normal to the intersected surface | ||
* intersectObject - the object the surface belongs to (could be proxy object) - [[objNull]] if terrain | * intersectObject - the object the surface belongs to (could be proxy object) - [[objNull]] if terrain | ||
* parentObject - the object proxy object belongs to (not always the same as intersect object) - objNull if terrain | * parentObject - the object proxy object belongs to (not always the same as intersect object) - objNull if terrain | ||
|x1= <code>[ [[eyePos]] [[player]], [[aimPos]] chopper, [[player]], chopper, [[true]] ] [[call]] [[BIS_fnc_getIntersectionsUnderCursor]];</code> | |x1= <code>[ [[eyePos]] [[player]], [[aimPos]] chopper, [[player]], chopper, [[true]] ] [[call]] [[BIS_fnc_getIntersectionsUnderCursor]];</code> | ||
| [[lineIntersectsSurfaces]] | | [[lineIntersectsSurfaces]] | ||
}} | }} | ||
Revision as of 23:03, 17 January 2021
Description
- Description:
- Returns intersections under cursor. For more information see lineIntersectsSurfaces.
- Execution:
- call
- Groups:
- Geometry
Syntax
- Syntax:
- [begPosASL, endPosASL, ignoreObj1, ignoreObj2, sortMode, maxResults] call BIS_fnc_getIntersectionsUnderCursor
- Parameters:
- [begPosASL, endPosASL, ignoreObj1, ignoreObj2, sortMode, maxResults, LOD1, LOD2]: Array
- begPosASL: PositionASL - virtual line start
- endPosASL: PositionASL - virtual line end
- ignoreObj1 (Optional): Object - first object to ignore or objNull: Default: objNull
- ignoreObj2 (Optional): Object - second object to ignore or objNull: Default: objNull
- sortMode (Optional): Boolean - true: closest to furthest, false: furthest to closest. Default: true
- maxResults (Optional): Number - Max results to return. -1 to return every result. Default: 1
- Return Value:
- Array of intersections in format [[intersectPosASL, surfaceNormal, intersectObj, parentObject],...] where:
- intersectPosASL - the actual position where line intersects surface
- surfaceNormal - a normal to the intersected surface
- intersectObject - the object the surface belongs to (could be proxy object) - objNull if terrain
- parentObject - the object proxy object belongs to (not always the same as intersect object) - objNull if terrain
Examples
- Example 1:
[ eyePos player, aimPos chopper, player, chopper, true ] call BIS_fnc_getIntersectionsUnderCursor;
Additional Information
- See also:
- lineIntersectsSurfaces
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