Aardvark.Base


FastRay3d

A fast ray contains a ray and a number of precomputed flags and fields for fast intersection computation with bounding boxes and other axis-aligned sturctures such as kd-Trees.

Constructors

ConstructorDescription
new(ray)
Signature: ray:Ray3d -> unit
new(origin, direction)
Signature: (origin:V3d * direction:V3d) -> unit

Instance members

Instance memberDescription
Intersects(box, tmin, tmax)
Signature: (box:Box3d * tmin:byref<float> * tmax:byref<float>) -> bool
Intersects(box, boxFlags, tmin, tmax)
Signature: (box:Box3d * boxFlags:Flags * tmin:byref<float> * tmax:byref<float>) -> bool

This variant of the intersection method only tests with the faces of the box indicated by the supplied boxFlags.

Intersects(...)
Signature: (box:Box3d * tmin:byref<float> * tmax:byref<float> * tminFlags:byref<Flags> * tmaxFlags:byref<Flags>) -> bool

This variant of the intersection method returns the affected planes of the box if the box was hit.

Intersects(...)
Signature: (box:Box3d * boxFlags:Flags * tmin:byref<float> * tmax:byref<float> * tminFlags:byref<Flags> * tmaxFlags:byref<Flags>) -> bool

This variant of the intersection method only tests with the faces of the box indicated by the supplied boxFlags and returns the affected planes of the box if the box was hit.

Fork me on GitHub