C3D Toolkit
Kernel  117982, Vision  2.9.2.2

An arbitrarily oriented bounding box (OBB) that includes some geometric object within box boundaries. More...
#include <mb_oriented_box.h>
Public Member Functions  
MbOrientedBox ()  
Construct an empty box.  
MbOrientedBox &  operator= (const MbOrientedBox &) 
Assignment operator.  
const MbCartPoint3D &  Centre () const 
Geometric center of the bounding box is in the middle of the main diagonal of PE.  
const MbCartPoint3D &  Vertex (size_t i) const 
One of the eight vertices by 0based index. More...  
MbVector3D  SemiDiagonal () const 
Half of the longest diagonal of the parallelepiped in the proper coordinate system.  
double  SizeMax () const 
The size of the box is equal to the maximum of the dimensions along its axes.  
bool  IsEmpty () const 
The check for emptiness. More...  
bool  Intersect (const MbOrientedBox &) const 
Whether the box intersects another box or not. More...  
void  Include (const MbCartPoint3D &) 
Include a point in the box subset with orientation preserved.  
MbOrientedBox &  SetOXY (const MbCartPoint3D ¢re, const MbVector3D &, const MbVector3D &) 
Set the position and orientation of PE. More...  
MbOrientedBox &  SetSize (double wx, double wy, double wz) 
Sets the semidimensions of the parallelepiped by the axies (X,Y,Z).  
MbOrientedBox &  SetEmpty () 
Set the box empty.  
MbOrientedBox &  Transform (const MbMatrix3D &) 
Transform according to the matrix. More...  
MbOrientedBox &  Move (const MbVector3D &) 
Translate to the given vector.  
const MbVector3D  LowerBnd () const 
The lower bound of the interval radiusvector covering the box range (projections on the box axies but via the world origin).  
const MbVector3D  UpperBnd () const 
The upper bound of the interval radiusvector covering the box range (in the local CS).  
An arbitrarily oriented bounding box (OBB) that includes some geometric object within box boundaries.
A bounding box (parallelepiped, PE) specifies a domain of 3Dspace that more or less tightly packs some geometric object.
It is used for quick estimation of the proximity or nonintersection of threedimensional objects which are contained in the "box".

inline 
One of the eight vertices by 0based index.

inline 
The check for emptiness.
A bounding box is empty if it doesn't contain any points of 3Dspace.
bool MbOrientedBox::Intersect  (  const MbOrientedBox &  )  const 
Whether the box intersects another box or not.
MbOrientedBox& MbOrientedBox::SetOXY  (  const MbCartPoint3D &  centre, 
const MbVector3D &  ,  
const MbVector3D &  
) 
Set the position and orientation of PE.
The func sets the position and orientation, namely coordinates of center and vector pair of (X,Y)axies.
MbOrientedBox& MbOrientedBox::Transform  (  const MbMatrix3D &  ) 
Transform according to the matrix.