|
vmmlib
1.12.0
Templatized C++ vector and matrix math library
|
An axis-aligned bounding box. More...
#include <aabb.hpp>
Collaboration diagram for vmml::AABB< T >:Public Member Functions | |
| AABB () | |
| Create an empty bounding box. More... | |
| AABB (const vector< 3, T > &pMin, const vector< 3, T > &pMax) | |
| Create a new bounding box from two corner points. | |
| AABB (const vector< 4, T > &sphere) | |
| Create a new bounding box from a bounding sphere. | |
| bool | isIn (const vector< 3, T > &point) const |
| bool | isIn (const vector< 4, T > &sphere) const |
| bool | isInFront (const vector< 4, T > &plane) const |
| const vector< 3, T > & | getMin () const |
| const vector< 3, T > & | getMax () const |
| void | merge (const AABB< T > &aabb) |
| Create the union of this and the given bounding box. | |
| void | merge (const vector< 3, T > &point) |
| Create the union of this and the given point. | |
| void | reset () |
| Clear this bounding box. | |
| bool | isEmpty () const |
| bool | operator== (const AABB< T > &other) const |
| bool | operator!= (const AABB< T > &other) const |
| vector< 3, T > | getCenter () const |
| vector< 3, T > | getSize () const |
| void | computeNearFar (const vector< 4, T > &plane, vector< 3, T > &nearPoint, vector< 3, T > &farPoint) const |
| Compute the nearest and furthest point of this box relative to the given plane. | |
Static Public Member Functions | |
| static AABB< T > | makeUnitBox () |
Friends | |
| template<class U > | |
| void | lunchbox::byteswap (U &) |
An axis-aligned bounding box.
An empty bounding box has undefined, implementation-specific values. Read operations (getMin(), getMax(), getSize(), isIn(), etc.) have undefined semantics on an empty bounding box. set() and merge() operations will define the bounding box correctly.
| vmml::AABB< T >::AABB | ( | ) |
Create an empty bounding box.
Definition at line 126 of file aabb.hpp.
Referenced by vmml::AABB< T >::makeUnitBox().
Here is the caller graph for this function:| vector< 3, T > vmml::AABB< T >::getCenter | ( | ) | const |
Definition at line 215 of file aabb.hpp.
Referenced by vmml::AABB< T >::isInFront(), and vmml::FrustumCuller< T >::test().
Here is the caller graph for this function:
|
inline |
Definition at line 198 of file aabb.hpp.
Referenced by vmml::AABB< T >::merge().
Here is the caller graph for this function:
|
inline |
Definition at line 193 of file aabb.hpp.
Referenced by vmml::AABB< T >::merge().
Here is the caller graph for this function:| vector< 3, T > vmml::AABB< T >::getSize | ( | ) | const |
Definition at line 220 of file aabb.hpp.
Referenced by vmml::AABB< T >::isInFront(), and vmml::FrustumCuller< T >::test().
Here is the caller graph for this function:
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 182 of file aabb.hpp.
References vmml::AABB< T >::getCenter(), and vmml::AABB< T >::getSize().
Here is the call graph for this function:
|
static |
Definition at line 295 of file aabb.hpp.
References vmml::AABB< T >::AABB().
Here is the call graph for this function:
|
inline |
|
inline |