Urho3D
Public Member Functions | Public Attributes
Urho3D::BoundingBox Class Reference

Three-dimensional axis-aligned bounding box. More...

#include <BoundingBox.h>

List of all members.

Public Member Functions

 BoundingBox ()
 Construct with zero size.
 BoundingBox (const BoundingBox &box)
 Copy-construct from another bounding box.
 BoundingBox (const Rect &rect)
 Construct from a rect, with the Z dimension left zero.
 BoundingBox (const Vector3 &min, const Vector3 &max)
 Construct from minimum and maximum vectors.
 BoundingBox (float min, float max)
 Construct from minimum and maximum floats (all dimensions same.)
 BoundingBox (const Vector3 *vertices, unsigned count)
 Construct from an array of vertices.
 BoundingBox (const Frustum &frustum)
 Construct from a frustum.
 BoundingBox (const Polyhedron &poly)
 Construct from a polyhedron.
 BoundingBox (const Sphere &sphere)
 Construct from a sphere.
BoundingBoxoperator= (const BoundingBox &rhs)
 Assign from another bounding box.
BoundingBoxoperator= (const Rect &rhs)
 Assign from a Rect, with the Z dimension left zero.
bool operator== (const BoundingBox &rhs) const
 Test for equality with another bounding box.
bool operator!= (const BoundingBox &rhs) const
 Test for inequality with another bounding box.
void Define (const BoundingBox &box)
 Define from another bounding box.
void Define (const Rect &rect)
 Define from a Rect.
void Define (const Vector3 &min, const Vector3 &max)
 Define from minimum and maximum vectors.
void Define (float min, float max)
 Define from minimum and maximum floats (all dimensions same.)
void Define (const Vector3 &point)
 Define from a point.
void Merge (const Vector3 &point)
 Merge a point.
void Merge (const BoundingBox &box)
 Merge another bounding box.
void Define (const Vector3 *vertices, unsigned count)
 Define from an array of vertices.
void Define (const Frustum &frustum)
 Define from a frustum.
void Define (const Polyhedron &poly)
 Define from a polyhedron.
void Define (const Sphere &sphere)
 Define from a sphere.
void Merge (const Vector3 *vertices, unsigned count)
 Merge an array of vertices.
void Merge (const Frustum &frustum)
 Merge a frustum.
void Merge (const Polyhedron &poly)
 Merge a polyhedron.
void Merge (const Sphere &sphere)
 Merge a sphere.
void Clip (const BoundingBox &box)
 Clip with another bounding box.
void Transform (const Matrix3 &transform)
 Transform with a 3x3 matrix.
void Transform (const Matrix3x4 &transform)
 Transform with a 3x4 matrix.
void Clear ()
 Clear to undefined state.
Vector3 Center () const
 Return center.
Vector3 Size () const
 Return size.
Vector3 HalfSize () const
 Return half-size.
BoundingBox Transformed (const Matrix3 &transform) const
 Return transformed by a 3x3 matrix.
BoundingBox Transformed (const Matrix3x4 &transform) const
 Return transformed by a 3x4 matrix.
Rect Projected (const Matrix4 &projection) const
 Return projected by a 4x4 projection matrix.
Intersection IsInside (const Vector3 &point) const
 Test if a point is inside.
Intersection IsInside (const BoundingBox &box) const
 Test if another bounding box is inside, outside or intersects.
Intersection IsInsideFast (const BoundingBox &box) const
 Test if another bounding box is (partially) inside or outside.
Intersection IsInside (const Sphere &sphere) const
 Test if a sphere is inside, outside or intersects.
Intersection IsInsideFast (const Sphere &sphere) const
 Test if a sphere is (partially) inside or outside.

Public Attributes

Vector3 min_
 Minimum vector.
Vector3 max_
 Maximum vector.
bool defined_
 Defined flag.

Detailed Description

Three-dimensional axis-aligned bounding box.


The documentation for this class was generated from the following files: