Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

amire::common::BoundingVolume Class Reference

Inheritance diagram for amire::common::BoundingVolume:

amire::common::AABoundingBox amire::common::BoundingSphere amire::common::OrientedBoundingBox List of all members.

Public Types

enum  BaseBoundingType { AA_BOUNDING_BOX = 0, ORIENTED_BOUNDING_BOX, BOUNDING_SPHERE }

Public Member Functions

 BoundingVolume ()
virtual ~BoundingVolume ()
virtual BaseBoundingType getPreferredBaseBoundingType () const=0
virtual void convertTo (BoundingSphere *sphere) const=0
virtual void convertTo (AABoundingBox *box) const=0
virtual void convertTo (OrientedBoundingBox *box) const=0
virtual bool intersectedByVolume (const BoundingVolume *volume) const
virtual bool intersectedByLine (const Vector &point, const Vector &direction, double &distance1, double &distance2) const
virtual bool intersectedBySegment (const Vector &point1, const Vector &point2, bool &entryPoint, double &distanceEntryPoint, bool &exitPoint, double &distanceExitPoint) const
virtual bool containsPoint (const Vector &point) const
virtual bool containsVolume (const BoundingVolume *volume) const
virtual bool containsSegment (const Vector &point1, const Vector &point2) const
virtual osg::ref_ptr< BoundingVolume > transform (const Matrix &transformation) const=0

Member Enumeration Documentation

enum amire::common::BoundingVolume::BaseBoundingType
 

Enumeration values:
AA_BOUNDING_BOX 
ORIENTED_BOUNDING_BOX 
BOUNDING_SPHERE 


Constructor & Destructor Documentation

amire::common::BoundingVolume::BoundingVolume  ) 
 

virtual amire::common::BoundingVolume::~BoundingVolume  )  [virtual]
 


Member Function Documentation

virtual bool amire::common::BoundingVolume::containsPoint const Vector point  )  const [virtual]
 

Reimplemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual bool amire::common::BoundingVolume::containsSegment const Vector point1,
const Vector point2
const [virtual]
 

Reimplemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual bool amire::common::BoundingVolume::containsVolume const BoundingVolume *  volume  )  const [virtual]
 

Reimplemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual void amire::common::BoundingVolume::convertTo OrientedBoundingBox box  )  const [pure virtual]
 

Implemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual void amire::common::BoundingVolume::convertTo AABoundingBox box  )  const [pure virtual]
 

Implemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual void amire::common::BoundingVolume::convertTo BoundingSphere sphere  )  const [pure virtual]
 

Implemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual BaseBoundingType amire::common::BoundingVolume::getPreferredBaseBoundingType  )  const [pure virtual]
 

Implemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual bool amire::common::BoundingVolume::intersectedByLine const Vector point,
const Vector direction,
double &  distance1,
double &  distance2
const [virtual]
 

Reimplemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual bool amire::common::BoundingVolume::intersectedBySegment const Vector point1,
const Vector point2,
bool &  entryPoint,
double &  distanceEntryPoint,
bool &  exitPoint,
double &  distanceExitPoint
const [virtual]
 

Reimplemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual bool amire::common::BoundingVolume::intersectedByVolume const BoundingVolume *  volume  )  const [virtual]
 

Reimplemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.

virtual osg::ref_ptr<BoundingVolume> amire::common::BoundingVolume::transform const Matrix transformation  )  const [pure virtual]
 

Implemented in amire::common::BoundingSphere, amire::common::AABoundingBox, and amire::common::OrientedBoundingBox.


The documentation for this class was generated from the following file:
Generated on Tue May 20 17:23:55 2003 for AMIRE-Framework by doxygen1.3