Detailed Description
Implementation of a 3D bounding box.
This class provides an implementation of a bounding box. A
bounding box describes a volume in space that bounds a piece of
geometry. The box is defined by two points which describe the
minimum and maximum corners of the box.
- Examples:
-
apiMeshShape.cpp,
apiMeshShape.h, apiMeshShapeUI.cpp,
curvedArrowsNode.cpp,
D3DViewportRenderer.cpp,
D3DViewportRenderer.h,
footPrintManip.cpp,
footPrintNode.cpp,
hwPhongShader.cpp,
OpenGLViewportRenderer.cpp,
OpenGLViewportRenderer.h,
quadricShape.cpp,
simpleFluidEmitter.cpp,
and swissArmyManip.cpp.
#include <MBoundingBox.h>
List of all
members.
Public Member Functions
|
|
MBoundingBox
() |
|
Default constructor.
|
|
MBoundingBox
(const MBoundingBox &src) |
|
Copy constructor.
|
|
MBoundingBox
(const MPoint
&corner1, const MPoint &corner2) |
|
Constructor that creates a bounding box
which contains the given points.
|
|
~MBoundingBox
() |
|
Class destructor.
|
void |
clear
() |
|
Empties the current bounding box.
|
void |
transformUsing
(const MMatrix
&matrix) |
|
Apply the given transformation to this
bounding box.
|
void |
expand
(const MPoint
&point) |
|
Expand the bounding box to include the given
point.
|
void |
expand
(const MBoundingBox &box) |
|
Expand the bounding box to include a second
bounding box.
|
bool |
contains
(const MPoint
&point) const |
|
Returns true if the bounding box contains
the given point.
|
bool |
intersects
(const MBoundingBox &box, double
tol=0.0) const |
|
Returns true if the bounding box intersects
another given bounding box.
|
double |
width
() const |
|
Returns the width of the bounding box.
|
double |
height
() const |
|
Returns the height of the bounding box.
|
double |
depth
() const |
|
Returns the depth of the bounding box.
|
MPoint |
center
() const |
|
Returns the center of the bounding box.
|
MPoint |
min
() const |
|
Returns the minimum point for the bounding
box.
|
MPoint |
max
() const |
|
Returns the maximum point for the bounding
box.
|
MBoundingBox & |
operator=
(const MBoundingBox &other) |
|
Assignment operator.
|
Constructor & Destructor Documentation
Default constructor.
Creates an empty bounding box.
Copy constructor.
- Parameters:
-
[in] |
src |
bounding box to copy |
Constructor that creates a bounding box which contains the given
points.
Each point will represent one corner of the box.
- Parameters:
-
[in] |
corner1 |
first corner point |
[in] |
corner2 |
second corner point |
Member Function Documentation
void transformUsing |
( |
const MMatrix & |
matrix |
) |
|
Apply the given transformation to this bounding box.
- Parameters:
-
[in] |
matrix |
transformation matrix |
- Examples:
- simpleFluidEmitter.cpp.
void expand |
( |
const MPoint & |
point |
) |
|
Expand the bounding box to include a second bounding box.
- Parameters:
-
[in] |
box |
bounding box to include in this bounding box. |
bool contains |
( |
const MPoint & |
point |
) |
const |
Returns true if the bounding box contains the given point.
- Parameters:
-
[in] |
point |
point to check for inclusion in this bounding box |
- Returns:
- true if the point is contained in this bounding box
bool intersects |
( |
const MBoundingBox & |
box, |
|
|
double |
tol = 0.0 |
|
) |
|
const |
Returns true if the bounding box intersects another given
bounding box.
- Parameters:
-
[in] |
box |
bounding box to check for intersection |
[in] |
tol |
tolerance of the intersection check |
- Returns:
- true if the bounding boxes intersect
Returns the width of the bounding box.
- Returns:
- The width of the bounding box
- Examples:
- apiMeshShapeUI.cpp.
Returns the height of the bounding box.
- Returns:
- The height of the bounding box
- Examples:
- apiMeshShapeUI.cpp.
Returns the depth of the bounding box.
- Returns:
- The depth of the bounding box
- Examples:
- apiMeshShapeUI.cpp.
Returns the center of the bounding box.
- Returns:
- The center of the bounding box
Assignment operator.
- Parameters:
-
[in] |
other |
bounding box to take value from |
- Returns:
- Reference to this bounding box
MBoundingBox MBoundingBox MBoundingBox
MBoundingBox MBoundingBox MBoundingBox MBoundingBox MBoundingBox
MBoundingBox MBoundingBox
MBoundingBox MBoundingBox MBoundingBox
MBoundingBox MBoundingBox MBoundingBox MBoundingBox MBoundingBox
MBoundingBox MBoundingBox