|
| | AxisAlignedBox () |
| |
| | AxisAlignedBox (const Vector3 &min, const Vector3 &max) |
| |
| | AxisAlignedBox (Extent e) |
| |
| | AxisAlignedBox (Real mx, Real my, Real mz, Real Mx, Real My, Real Mz) |
| |
| bool | contains (const AxisAlignedBox &other) const |
| | Tests whether another box contained by this box. More...
|
| |
| bool | contains (const Vector3 &v) const |
| | Tests whether the given point contained by this box. More...
|
| |
| Real | distance (const Vector3 &v) const |
| | Returns the minimum distance between a given point and any part of the box. More...
|
| |
| Corners | getAllCorners (void) const |
| | Returns a pointer to an array of 8 corner points, useful for collision vs. More...
|
| |
| Vector3 | getCenter (void) const |
| | Gets the centre of the box. More...
|
| |
| Vector3 | getCorner (CornerEnum cornerToGet) const |
| | Gets the position of one of the corners. More...
|
| |
| Vector3 | getHalfSize (void) const |
| | Gets the half-size of the box. More...
|
| |
| Vector3 & | getMaximum (void) |
| | Gets a modifiable version of the maximum corner of the box. More...
|
| |
| const Vector3 & | getMaximum (void) const |
| | Gets the maximum corner of the box. More...
|
| |
| Vector3 & | getMinimum (void) |
| | Gets a modifiable version of the minimum corner of the box. More...
|
| |
| const Vector3 & | getMinimum (void) const |
| | Gets the minimum corner of the box. More...
|
| |
| Vector3 | getSize (void) const |
| | Gets the size of the box. More...
|
| |
| AxisAlignedBox | intersection (const AxisAlignedBox &b2) const |
| | Calculate the area of intersection of this box and another. More...
|
| |
| bool | intersects (const AxisAlignedBox &b2) const |
| | Returns whether or not this box intersects another. More...
|
| |
| bool | intersects (const Plane &p) const |
| | Tests whether this box intersects a plane. More...
|
| |
| bool | intersects (const Sphere &s) const |
| | Tests whether this box intersects a sphere. More...
|
| |
| bool | intersects (const Vector3 &v) const |
| | Tests whether the vector point is within this box. More...
|
| |
| bool | isFinite (void) const |
| | Returns true if the box is finite. More...
|
| |
| bool | isInfinite (void) const |
| | Returns true if the box is infinite. More...
|
| |
| bool | isNull (void) const |
| | Returns true if the box is null i.e. More...
|
| |
| void | merge (const AxisAlignedBox &rhs) |
| | Merges the passed in box into the current box. More...
|
| |
| void | merge (const Vector3 &point) |
| | Extends the box to encompass the specified point (if needed). More...
|
| |
| bool | operator!= (const AxisAlignedBox &rhs) const |
| | Tests 2 boxes for inequality. More...
|
| |
| bool | operator== (const AxisAlignedBox &rhs) const |
| | Tests 2 boxes for equality. More...
|
| |
| void | scale (const Vector3 &s) |
| | Scales the AABB by the vector given. More...
|
| |
| void | setExtents (const Vector3 &min, const Vector3 &max) |
| | Sets both minimum and maximum extents at once. More...
|
| |
| void | setExtents (Real mx, Real my, Real mz, Real Mx, Real My, Real Mz) |
| |
| void | setInfinite () |
| | Sets the box to 'infinite'. More...
|
| |
| void | setMaximum (const Vector3 &vec) |
| | Sets the maximum corner of the box. More...
|
| |
| void | setMaximum (Real x, Real y, Real z) |
| |
| void | setMaximumX (Real x) |
| | Changes one of the components of the maximum corner of the box used to resize only one dimension of the box. More...
|
| |
| void | setMaximumY (Real y) |
| |
| void | setMaximumZ (Real z) |
| |
| void | setMinimum (const Vector3 &vec) |
| | Sets the minimum corner of the box. More...
|
| |
| void | setMinimum (Real x, Real y, Real z) |
| |
| void | setMinimumX (Real x) |
| | Changes one of the components of the minimum corner of the box used to resize only one dimension of the box. More...
|
| |
| void | setMinimumY (Real y) |
| |
| void | setMinimumZ (Real z) |
| |
| void | setNull () |
| | Sets the box to a 'null' value i.e. More...
|
| |
| Real | squaredDistance (const Vector3 &v) const |
| | Returns the squared minimum distance between a given point and any part of the box. More...
|
| |
| void | transform (const Affine3 &m) |
| | Transforms the box according to the affine matrix supplied. More...
|
| |
| void | transform (const Matrix4 &matrix) |
| | Transforms the box according to the matrix supplied. More...
|
| |
| Real | volume (void) const |
| | Calculate the volume of this box. More...
|
| |
A 3D box aligned with the x/y/z axes.
This class represents a simple box which is aligned with the axes. Internally it only stores 2 points as the extremeties of the box, one which is the minima of all 3 axes, and the other which is the maxima of all 3 axes. This class is typically used for an axis-aligned bounding box (AABB) for collision and visibility determination.
| Corners Ogre::AxisAlignedBox::getAllCorners |
( |
void |
| ) |
const |
|
inline |
Returns a pointer to an array of 8 corner points, useful for collision vs.
non-aligned objects.
If the order of these corners is important, they are as follows: The 4 points of the minimum Z face (note that because Ogre uses right-handed coordinates, the minimum Z is at the 'back' of the box) starting with the minimum point of all, then anticlockwise around this face (if you are looking onto the face from outside the box). Then the 4 points of the maximum Z face, starting with maximum point of all, then anticlockwise around this face (looking onto the face from outside the box). Like this:
1-------2
/| /|
/ | / |
5-------4 |
| 0----|--3
| / | /
|/ |/
6-------7