Companion library to cgmath, dealing with collision detection centric data structures and algorithms.
This crate provides useful data structures and algorithms for doing collision detection. It is organized into a few distinct parts: generic geometry (ray, line, plane, frustum etc), bounding volumes (AABB, OBB, Sphere etc), collision primitives and algorithms used for collision detection, distance computation etc.
Collision detection algorithms
A dynamic bounding volume tree implementation, index based (not pointer based).
Prelude provides all the traits of the library in a convenient form
A two-dimensional AABB, aka a rectangle.
A three-dimensional AABB, aka a rectangular prism.
Contact manifold for a single collision contact point.
View frustum, used for frustum culling
View frustum corner points
A generic directed line segment from
Generic object bounding box, centered on
A 3-dimensional plane formed from the equation:
A generic ray starting at
Collision strategy to use for collisions.
Spatial relation between two objects.
Base trait describing an axis aligned bounding box.
Bounding volume abstraction for use with algorithms
Utilities for computing bounding volumes of primitives
Boolean containment test.
An intersection test with a result.
Continuous intersection test on transformed primitive
A boolean intersection test.
Discrete intersection test on transformed primitive
Primitive with bounding volume
Trait used for interpolation of values
Compute the minimum/maximum of the given values
Generic 3D bound.
Minkowski support function for primitive
Conversion trait for converting cgmath projection types into a view frustum
Shape surface area
Trait used for interpolation of translation only in transforms
Build the union of two shapes.
2D directed line segment
3D directed line segment
2D object bounding box
3D object bounding box