#include <bbox.h>
Collaboration diagram for BoundingBox:
Public Methods | |
BoundingBox () | |
Default constructor. | |
BoundingBox (const Vector &min, const Vector &max) | |
Constructor. | |
bool & | defined () |
Defined? | |
const bool | defined () const |
Defined? | |
Vector & | min () |
Minimum x,y,z. | |
const Vector & | min () const |
Minimum x,y,z. | |
Vector & | max () |
Minimum x,y,z. | |
const Vector & | max () const |
Minimum x,y,z. | |
Vector | center () const |
Box center. | |
real | width () const |
Box width (Xmax - Xmin). | |
real | height () const |
Box height (Ymax - Ymin). | |
real | depth () const |
Box depth (Zmax - Zmin). | |
void | points (std::vector< Vector > &p) const |
Extract the 8 corners of the box. | |
void | reset () |
Empty set (undefined). | |
BoundingBox & | operator+= (const Vector &p) |
Boolean union. | |
BoundingBox & | operator+= (const std::vector< Vector > &p) |
Boolean union. | |
BoundingBox & | operator+= (const BoundingBox &box) |
Boolean union. | |
BoundingBox & | operator *= (const BoundingBox &box) |
Boolean intersection. | |
bool | operator== (const BoundingBox &box) const |
Box equality operator. | |
bool | inside (const Vector &pos) const |
Volumetric classification. | |
bool | intersects (const BoundingBox &box) const |
Intersection between boxes. | |
bool | project (const Matrix &model, const Matrix &proj, const GltViewport &view) |
Map object co-ordinates to window co-ordinates. | |
Protected Attributes | |
bool | _defined |
Is the bounding box undefined? | |
Vector | _min |
Box minimum. | |
Vector | _max |
Box maximum. | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const BoundingBox &b) |
Output AAB to stream. | |
BoundingBox | sum (const BoundingBox &a, const BoundingBox &b) |
Union of two axis aligned bounding boxes. | |
BoundingBox | intersection (const BoundingBox &a, const BoundingBox &b) |
Intersection of two axis aligned bounding boxes. |
Definition at line 46 of file bbox.h.