lineIntersectsWith: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) 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= ") |
Lou Montana (talk | contribs) m (Text replacement - "\|s([0-9])\= '''([^' ]+)'''([^ ]+) " to "|s$1= $2$3 ") |
||
Line 16: | Line 16: | ||
|descr= Returns objects intersecting with the virtual line from ''begPos'' to ''endPos''. By default resulting array of intersecting objects is unsorted. To sort by distance set ''sortByDistance'' param to [[true]]. {{Feature | important | Doesn't work under water. Max hardcoded distance is 1000m.}} | |descr= Returns objects intersecting with the virtual line from ''begPos'' to ''endPos''. By default resulting array of intersecting objects is unsorted. To sort by distance set ''sortByDistance'' param to [[true]]. {{Feature | important | Doesn't work under water. Max hardcoded distance is 1000m.}} | ||
|s1= | |s1= [[lineIntersectsWith]] [begPos, endPos, objIgnore1, objIgnore2, sortByDistance] | ||
|p1= [begPos, endPos, objIgnore1, objIgnore2, sortByDistance]: [[Array]] | |p1= [begPos, endPos, objIgnore1, objIgnore2, sortByDistance]: [[Array]] |
Revision as of 17:04, 20 June 2021
Description
- Description:
- Returns objects intersecting with the virtual line from begPos to endPos. By default resulting array of intersecting objects is unsorted. To sort by distance set sortByDistance param to true.
- Groups:
- Math - Geometry
Syntax
- Syntax:
- lineIntersectsWith [begPos, endPos, objIgnore1, objIgnore2, sortByDistance]
- Parameters:
- [begPos, endPos, objIgnore1, objIgnore2, sortByDistance]: Array
- begPos: PositionASL - virtual line start
- endPos: PositionASL - virtual line end
- objIgnore1: (optional) Object - object to ignore. When testing intersection from an object/unit/vehicle, pass that object here to prevent intersection inside of the object.
- objIgnore2: (optional) Object - another object to ignore. When testing intersection of a line between two objects, pass the second object here to prevent intersection inside of it being reported
- sortByDistance: (optional) Boolean - true: Sort by distance => furthermost object first, closest object last; false: unsorted
- Return Value:
- Array - intersecting objects
Examples
- Example 1:
_objects = lineIntersectsWith [eyePos player, AGLtoASL screenToWorld [0.5,0.5]];
- Example 2:
- Sort by distance:
_objects = lineIntersectsWith [eyePos player, AGLtoASL screenToWorld [0.5,0.5], objNull, objNull, true];
- Example 3:
- Ignore objects:
_objects = lineIntersectsWith [eyePos player, aimPos chopper, player, chopper];
Additional Information
- See also:
- lineIntersectsSurfaceslineIntersectsObjsintersectterrainIntersectterrainIntersectASLterrainIntersectAtASLlineIntersectscursorObjectcursorTargetcheckVisibility
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
- Posted on may 31, 2012 - 10:50 (CEST)
- Lou Montana
- Please note the difference :
- terrainIntersect
- terrainIntersectASL
- lineIntersects
- lineIntersectsWith
- lineIntersectsObjs
- intersect