Determine the point of intersection between a ray and axis-aligned bounding box (AABB). Theoretically works in an arbitrary number of dimensions!
out = intersection(out, origin, dir, aabb)
Determines if the given ray
(origin, direction) intersects with the
If no intersection occurs, returns
null. Otherwise, the intersection point is stored in
out and then returned.
const origin = new Float32Array([0, 4, 0]) const dir = new Float32Array([0, 1, 0]) const out = new Float32Array(3) const aabb = [ [-1, -1, -1], [+1, +1, +1] ] intersection(out, origin, dir, aabb)
d = intersection.distance(origin, dir, aabb)
Returns the distance from the given ray
(origin, direction) to the supplied
aabb. If no intersection occurs, returns
Note that the
direction vector should be normalized.
MIT, see LICENSE.md for details.