ray-sphere-intersection

test whether a ray intersects with a sphere

Usage no npm install needed!

<script type="module">
  import raySphereIntersection from 'https://cdn.skypack.dev/ray-sphere-intersection';
</script>

README

ray-sphere-intersection

stable

Test whether a ray intersects with a sphere.

var intersect = require('ray-sphere-intersection')

var origin = [0, 0, 4], 
    direction = [0, 0, -1], 
    center = [0, 0, 0], 
    radius = 1

var hit = intersect([], origin, direction, center, radius)

if (hit) {
  console.log(hit) // [0, 0, 1]
}

Adapted from LibGDX. PRs for optimizations/etc welcome.

Usage

NPM

out = intersect(out, origin, direction, center, radius)

Determines if the 3D ray (origin, direction) intersects with the 3D sphere (center, radius).

If no intersection occurs, returns null. Otherwise, the intersection point is stored in out and then returned.

License

MIT, see LICENSE.md for details.