Biomechanical Joint Model
 Author: Anderson Maciel

BBox Class Reference

#include <bbox.h>

Collaboration diagram for BBox:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 BBox (int ndim=dimspace)
 BBox (const BBox &bb)
 BBox (const VEC &LowerLeft, const VEC &UpperRight)
void extendBy (const VEC &X)
void extendBy (const VECArray &X)
void extendBy (const BBox &bb)
VEC getMin () const
VEC getMax () const
VEC getDim () const
VEC getCenter () const
void makeEmpty ()
bool isEmpty () const
void scale (REAL factor)
bool contains (const VEC &X) const
bool strictlyContains (const VEC &X) const
bool intersectedBy (const BBox &bb) const
bool intersectedBy (Ray &ray) const
bool intersectedBy (const VEC &V0, const VEC &V1, const VEC &V2) const

Private Attributes

VEC LL
VEC UR
int n_
bool empty

Detailed Description

Definition at line 32 of file bbox.h.


Constructor & Destructor Documentation

BBox::BBox int  ndim = dimspace  )  [inline]
 

Definition at line 35 of file bbox.h.

References n_.

BBox::BBox const BBox bb  )  [inline]
 

Definition at line 36 of file bbox.h.

References n_.

BBox::BBox const VEC LowerLeft,
const VEC UpperRight
[inline]
 

Definition at line 38 of file bbox.h.


Member Function Documentation

bool BBox::contains const VEC X  )  const [inline]
 

Definition at line 54 of file bbox.h.

References LL, and UR.

Referenced by ImplicitPrimitive::getDistance(), BBoxHierarchy::getPotentialTriangles(), BBoxHierarchy::getSmallestBBox(), and intersectedBy().

void BBox::extendBy const BBox bb  ) 
 

Definition at line 47 of file bbox.cpp.

References extendBy(), getMax(), getMin(), isEmpty(), n_, and Y.

Here is the call graph for this function:

void BBox::extendBy const VECArray X  )  [inline]
 

Definition at line 42 of file bbox.h.

References extendBy(), and LinAlg::VECArray::size().

Here is the call graph for this function:

void BBox::extendBy const VEC X  ) 
 

Definition at line 27 of file bbox.cpp.

References LinAlg::Vector::dim(), empty, LL, n_, and UR.

Referenced by extendBy(), MetaballsTriangle::getBoundingBox(), MetaballsSphere::getBoundingBox(), Metaballs::getBoundingBox(), Ellipsoids::getBoundingBox(), and marchingCubes::marchingCubes().

Here is the call graph for this function:

VEC BBox::getCenter  )  const [inline]
 

Definition at line 48 of file bbox.h.

References LL, and UR.

VEC BBox::getDim  )  const [inline]
 

Definition at line 47 of file bbox.h.

References LL, and UR.

Referenced by displayBBox(), and intersectedBy().

VEC BBox::getMax  )  const [inline]
 

Definition at line 46 of file bbox.h.

References UR.

Referenced by extendBy(), and marchingCubes::marchingCubes().

VEC BBox::getMin  )  const [inline]
 

Definition at line 45 of file bbox.h.

References LL.

Referenced by displayBBox(), extendBy(), intersectedBy(), and marchingCubes::marchingCubes().

bool BBox::intersectedBy const VEC V0,
const VEC V1,
const VEC V2
const
 

Definition at line 209 of file bbox.cpp.

References contains(), Ray::D, intersect_triangle(), intersectedBy(), LL, n_, Ray::O, REAL, Ray::segment, and UR.

Here is the call graph for this function:

bool BBox::intersectedBy Ray ray  )  const
 

Definition at line 93 of file bbox.cpp.

References contains(), Ray::D, LinAlg::dimspace, LinAlg::epsilon, getDim(), intersectedBy(), LL, n_, LinAlg::Vector::norm(), Ray::O, Ray::P, REAL, Ray::segment, Ray::t, and UR.

Here is the call graph for this function:

bool BBox::intersectedBy const BBox bb  )  const
 

Definition at line 76 of file bbox.cpp.

References contains(), getDim(), getMin(), and n_.

Referenced by BBoxHierarchy::createHierarchy(), BBoxHierarchy::getPotentialTriangles(), and intersectedBy().

Here is the call graph for this function:

bool BBox::isEmpty  )  const [inline]
 

Definition at line 51 of file bbox.h.

References empty.

Referenced by extendBy(), and ImplicitPrimitive::getDistance().

void BBox::makeEmpty  )  [inline]
 

Definition at line 50 of file bbox.h.

References empty.

Referenced by Mesh::getBoundingBox(), MetaballsTriangle::getBoundingBox(), MetaballsSphere::getBoundingBox(), Metaballs::getBoundingBox(), and Ellipsoids::getBoundingBox().

void BBox::scale REAL  factor  ) 
 

Definition at line 64 of file bbox.cpp.

References LL, REAL, and UR.

Referenced by marchingCubes::marchingCubes().

bool BBox::strictlyContains const VEC X  )  const [inline]
 

Definition at line 55 of file bbox.h.

References LL, and UR.


Member Data Documentation

bool BBox::empty [private]
 

Definition at line 64 of file bbox.h.

Referenced by extendBy(), isEmpty(), and makeEmpty().

VEC BBox::LL [private]
 

Definition at line 62 of file bbox.h.

Referenced by contains(), extendBy(), getCenter(), getDim(), getMin(), intersectedBy(), scale(), and strictlyContains().

int BBox::n_ [private]
 

Definition at line 63 of file bbox.h.

Referenced by BBox(), extendBy(), and intersectedBy().

VEC BBox::UR [private]
 

Definition at line 62 of file bbox.h.

Referenced by contains(), extendBy(), getCenter(), getDim(), getMax(), intersectedBy(), scale(), and strictlyContains().


The documentation for this class was generated from the following files:
Generated on Thu Dec 1 10:14:16 2005 for COME - Biomechanical Joint Model by  doxygen 1.4.5