|
| SbXfBox3f () |
| Constructor.
|
|
| SbXfBox3f (const SbVec3f &_min, const SbVec3f &_max) |
| Constructor.
|
|
| SbXfBox3f (const SbBox3f &box) |
| Constructor.
|
|
| ~SbXfBox3f () |
| Destructor.
|
|
void | setTransform (const SbMatrix &m) |
| Sets the transformation on the box.
|
|
const SbMatrix & | getTransform () const |
| Gets the transformation on the box.
|
|
const SbMatrix & | getInverse () const |
| Gets the inverse of the transformation on the box.
|
|
SbVec3f | getCenter () const |
| Returns the center of the box.
|
|
void | extendBy (const SbVec3f &pt) |
| Extends the box (if necessary) to contain the given 3D point.
|
|
void | extendBy (const SbBox3f &bb) |
| Extends the box (if necessary) to contain the given box.
|
|
void | extendBy (const SbXfBox3f &bb) |
| Extends the box (if necessary) to contain the given box.
|
|
SbBool | intersect (const SbVec3f &pt) const |
| Returns TRUE if intersection of given point and this box is not empty.
|
|
SbBool | intersect (const SbBox3f &bb) const |
| Returns TRUE if intersection of given box and this box is not empty.
|
|
SbXfBox3f & | setValue (const SbXfBox3d &xfbox3d) |
| Sets value of the box from a double precision box.
|
|
void | setBounds (float xmin, float ymin, float zmin, float xmax, float ymax, float zmax) |
| Sets the bounds of the box.
|
|
void | setBounds (const SbVec3f &_min, const SbVec3f &_max) |
| Sets the bounds of the box.
|
|
void | getBounds (float &xmin, float &ymin, float &zmin, float &xmax, float &ymax, float &zmax) const |
| Gets the bounds of the box.
|
|
void | getBounds (SbVec3f &_min, SbVec3f &_max) const |
| Gets the bounds of the box.
|
|
void | getOrigin (float &originX, float &originY, float &originZ) |
| Returns origin (minimum point) of the box.
|
|
void | getSize (float &sizeX, float &sizeY, float &sizeZ) |
| Returns size of the box.
|
|
float | getVolume () const |
| Gives the volume of the box (0 for an empty box).
|
|
void | makeEmpty () |
| Sets the box to contain nothing.
|
|
SbBool | isEmpty () const |
| Returns TRUE if the box is empty, and FALSE otherwise.
|
|
SbBool | hasVolume () const |
| Checks if the box has volume; i.e., all three dimensions have positive size.
|
|
void | getSpan (const SbVec3f &direction, float &dMin, float &dMax) const |
| Finds the extent of the box along a particular direction.
|
|
void | transform (const SbMatrix &m) |
| Transforms the box by the given matrix.
|
|
SbBox3f | project () const |
| Projects an SbXfBox3f to an SbBox3f.
|
|
SbVec3f | getClosestPoint (const SbVec3f &point) const |
| Returns the closest point on the box to the given point.
|
|
float | computeMaxDistance2 (const SbVec3f &p) const |
| Returns the squared maximum distance between a point and the 8 bounding box's vertices.
|
|
| SbBox3f () |
| Constructor for a 3D float box.
|
|
| SbBox3f (float xmin, float ymin, float zmin, float xmax, float ymax, float zmax) |
| Constructor for a 3D float box.
|
|
| SbBox3f (const SbVec3f &_min, const SbVec3f &_max) |
| Constructor for a 3D float box.
|
|
| ~SbBox3f () |
| Destructor.
|
|
const SbVec3f & | getMin () const |
| Returns the minimum point of the box.
|
|
SbVec3f & | getMin () |
| Returns the minimum point of the box.
|
|
const SbVec3f & | getMax () const |
| Returns the maximum point of the box.
|
|
SbVec3f & | getMax () |
| Returns the maximum point of the box.
|
|
SbVec3f | getCenter () const |
| Returns the center of the box.
|
|
void | extendBy (const SbVec3f &pt) |
| Extends this box (if necessary) to contain the specified point.
|
|
void | extendBy (const SbBox3f &bb) |
| Extends this box (if necessary) to contain the specified box.
|
|
SbBool | intersect (const SbVec3f &pt) const |
| Returns TRUE if the specified point intersects this box.
|
|
SbBool | intersect (const SbBox3f &bb) const |
| Returns TRUE if the specified box intersects this box.
|
|
SbBox3f | intersection (const SbBox3f &box) const |
| Returns the intersection of the specified box with this box.
|
|
SbBool | contains (const SbBox3f &bb) const |
| Returns TRUE if the specified box is fully contained inside this box.
|
|
SbBool | outside (const SbMatrix &MVP, int &cullBits) const |
| Returns TRUE if bounding box is completely outside the view-volume defined by the model+view+projection matrix given.
|
|
void | setBounds (float xmin, float ymin, float zmin, float xmax, float ymax, float zmax) |
| Sets the corners of the box.
|
|
void | setBounds (const SbVec3f &_min, const SbVec3f &_max) |
| Sets the corners of the box.
|
|
void | getBounds (float &xmin, float &ymin, float &zmin, float &xmax, float &ymax, float &zmax) const |
| Gets the corners of the box.
|
|
void | getBounds (SbVec3f &_min, SbVec3f &_max) const |
| Gets the corners of the box.
|
|
SbVec3f | getClosestPoint (const SbVec3f &point) const |
| Returns the closest point on the box to the given point.
|
|
void | getOrigin (float &originX, float &originY, float &originZ) const |
| Gets box origin which is the same as the minimum corner of the box.
|
|
void | getSize (float &sizeX, float &sizeY, float &sizeZ) const |
| Gets box size.
|
|
SbVec3f | getSize () const |
| Gets box size.
|
|
void | makeEmpty () |
| Makes an empty box.
|
|
SbBool | isEmpty () const |
| Returns TRUE if the box is empty, and FALSE otherwise.
|
|
SbBool | hasVolume () const |
| Returns TRUE if all three dimensions of the box have positive size, and FALSE otherwise.
|
|
void | getSpan (const SbVec3f &direction, float &dMin, float &dMax) const |
| Finds the span of a box along a specified direction.
|
|
void | transform (const SbMatrix &m) |
| Transforms box by matrix, enlarging box to contain result.
|
|
float | getVolume () const |
| Returns the volume of the box.
|
|
template<typename T > |
| SbBox3f (const T &b) |
| Constructor that converts an arbitrary SbBox3 to an SbBox3f.
|
|
float | computeMaxDistance2 (const SbVec3f &p) const |
| Returns the squared maximum distance between a point and the 8 bounding box's vertices.
|
|
SbBool | triangleBoxOverlap (const SbVec3f &u0, const SbVec3f &u1, const SbVec3f &u2) const |
| Return true if the given triangle intersects the bounding box.
|
|
3D box with an associated transformation matrix.
A 3D box with an arbitrary transformation applied. This class is useful when a box will be transformed frequently; if an SbBox3f is used for this purpose it will expand each time it is transformed in order to keep itself axis-aligned. Transformations can be accumulated on an SbXfBox3f without expanding the box, and after all transformations have been done, the box can be expanded to an axis-aligned box if necessary.
SEE ALSO
SbBox3f, SbBox2f, SbBox2s, SbVec3f, SbVec2f, SbVec2s, SbMatrix, SoGetBoundingBoxAction
Definition at line 1250 of file SbBox.h.