|
| OrientedBox () |
| Empty.
|
|
| OrientedBox (const Vector &, const Frame &) |
| Creates a unit oriented box.
|
|
| OrientedBox (const Vector &, const Vector &) |
| Creates an axis aligned box given two opposite corners.
|
|
| OrientedBox (const Vector &, const Vector &, const Vector &, const Vector &) |
| Creates an oriented box given a box and a Frame.
|
|
| ~OrientedBox () |
| Empty.
|
|
const Vector | Center () const |
| Return the center of the oriented box.
|
|
Vector | Vertex (int) const |
| Returns the k-th vertex of the oriented box.
|
|
int | Intersect (const Ray &, double &, double &) const |
| Compute the intersection between a box and a ray.
|
|
double | R (const Vector &) const |
| Computes the squared Euclidean distance between the oriented box and a point.
|
|
double | Signed (const Vector &) const |
| Computes the signed distance between the oriented box and a point.
|
|
Box | GetBox () const |
| Compute the axis aligned bounding box enclosing the oriented box.
|
|
bool | Inside (const Vector &) const |
| Check if a point is inside the box.
|
|
void | Transform (const Frame &) |
| Transform an oriented box with a frame.
|
|
bool | Intersect (const OrientedBox &) const |
| Check if two oriented boxes intersect.
|
|
|
| Frame (const Matrix &=Matrix::Identity, const Vector &=Vector::Null) |
| Creates a frame given a rotation matrix and a translation vector.
|
|
| Frame (const Vector &, const Vector &, const Vector &, const Vector &) |
| Creates a frame given the origin and its orthogonal unit vectors.
|
|
| Frame (const Frame2 &) |
| Creates a frame from another planar frame.
|
|
| ~Frame () |
| Empty.
|
|
Matrix | R () const |
| Returns the rotation matrix of the frame.
|
|
Vector | T () const |
| Returns the translation vector of the frame.
|
|
void | Compose (const Frame &) |
| Compose the frame with another one.
|
|
Frame | Composed (const Frame &) const |
| Compose the frame with another one.
|
|
Frame | Inverse () const |
| Compute the inverse transformation.
|
|
Vector | Transform (const Vector &) const |
| Transform a point out of the frame coordinate system.
|
|
Vector | InverseTransform (const Vector &) const |
| Transform a point into the frame coordinate system.
|
|
Vector | TransformDirection (const Vector &) const |
| Transform a direction vector out of the frame coordinate system.
|
|
Vector | InverseTransformDirection (const Vector &) const |
| Transform a direction vector into the frame coordinate system.
|
|
Ray | Transform (const Ray &) const |
| Transform a ray out of the frame coordinate system.
|
|
Ray | InverseTransform (const Ray &) const |
| Transform a ray into the frame coordinate system.
|
|
Vector | CircleVertex (const double &, int=1, int=2) const |
| Compute the coordinates of a point on a circle inside the frame;.
|
|
Vector | CircleNormal (const double &, int=1, int=2) const |
| Compute the coordinates of the normal a point on a circle inside the frame;.
|
|
Vector | SphereVertex (const double &, const double &, const double &, int=1, int=2, int=0) const |
| Compute the coordinates of a point on a sphere inside the frame.
|
|
Vector | SphereNormal (const double &, const double &, int=1, int=2, int=0) const |
| Compute the coordinates of the normal of a point on a sphere inside the frame.
|
|
static Frame | Translation (const Vector &) |
| Creates a translation transformation.
|
|
static Frame | Rotation (const Vector &) |
| Creates a rotation frame.
|
|
static Frame | Rotation (const Vector &, const double &) |
| Create a rotation frame about an arbitrary axis.
|
|
static Frame | Rotation (const Vector &, const Vector &) |
| Create a frame that rotates a normalized vector into another one.
|
|
static Frame | Canonical (const Vector &, const Vector &) |
| Given a point and a direction, compute the frame that brings these into a canonical coordinate system.
|
|
static Frame | Orthonormal (const Vector &, const Vector &) |
| Compute a frame given an origin and direction vector.
|
|
static const Frame | Id |
| Identity.
|
|
An oriented box.
The frame stores the center of the box and the axes as vectors. The size of the box is defined using a half-size length vector.