lineIntersectsWith: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "<code>([^ ]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^ ]*)<\/code>" to "<code>$1$2$3</code>") |
Lou Montana (talk | contribs) m (Text replacement - "<code>([^<]*)<nowiki\/?>([^<]*)<\/code>" to "<code>$1$2</code>") |
||
Line 34: | Line 34: | ||
|r1= [[Array]] - intersecting objects | |r1= [[Array]] - intersecting objects | ||
|x1= <code>_objects = lineIntersectsWith [ | |x1= <code>_objects = lineIntersectsWith [eyePos player, AGLtoASL screenToWorld [0.5,0.5]];</code> | ||
|x2= Sort by distance: | |x2= Sort by distance: | ||
<code>_objects = lineIntersectsWith [ | <code>_objects = lineIntersectsWith [eyePos player, AGLtoASL screenToWorld [0.5,0.5], objNull, objNull, true];</code> | ||
|x3= Ignore objects: | |x3= Ignore objects: | ||
<code>_objects = lineIntersectsWith [ | <code>_objects = lineIntersectsWith [eyePos player, aimPos chopper, player, chopper];</code> | ||
|seealso= [[lineIntersectsSurfaces]] [[lineIntersectsObjs]] [[intersect]] [[terrainIntersect]] [[terrainIntersectASL]] [[terrainIntersectAtASL]] [[lineIntersects]] [[cursorObject]] [[cursorTarget]] [[checkVisibility]] | |seealso= [[lineIntersectsSurfaces]] [[lineIntersectsObjs]] [[intersect]] [[terrainIntersect]] [[terrainIntersectASL]] [[terrainIntersectAtASL]] [[lineIntersects]] [[cursorObject]] [[cursorTarget]] [[checkVisibility]] |
Revision as of 10:28, 13 May 2022
Description
- Description:
- Returns objects intersecting with the virtual line from begPos to endPos. By default, the resulting array of intersecting objects is unsorted (see sortByDistance).
- Groups:
- Math - Geometry
Syntax
- Syntax:
- lineIntersectsWith [begPos, endPos, objIgnore1, objIgnore2, sortByDistance]
- Parameters:
- begPos: Array format PositionASL - virtual line start
- endPos: Array format 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:
- lineIntersectsSurfaces lineIntersectsObjs intersect terrainIntersect terrainIntersectASL terrainIntersectAtASL lineIntersects cursorObject cursorTarget checkVisibility
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 (UTC)
-
Please note the difference :
- terrainIntersect
- terrainIntersectASL
- lineIntersects
- lineIntersectsWith
- lineIntersectsObjs
- intersect