Expand description

Traits for basic geometric definitions

This provides some basic geometric definitions. The Geo trait can be implemented by any type that has a particular type of coordinate - for example, implementations of BezierCurve need to implement Geo in order to describe what type they use for coordinates.

BoundingBox provides a way to describe axis-aligned bounding boxes. It too is a trait, making it possible to request bounding boxes in types other than the default Bounds type supplied by the library.

Structs

Type representing a bounding box

Represents a 2D point

Traits

Trait implemented by things representing axis-aligned bounding boxes

Represents a value that can be used as a coordinate in a bezier curve

Represents a coordinate with a 2D position

Extra functions introduced for 2D coordinate types

Represents a coordinate with a 3D position

Extra functions provided for coordinate types

Simple base trait implemented by things representing geometry

Trait implemented by types that have a bounding box associated with them

Functions

Sweeps two sets of objects to find the collisions between them

Sweeps a set of objects with bounding boxes to find the potential collisions between them