VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes
makVrv::DtAxisAlignedBoundingBox< T > Class Template Reference

template<class T>
class makVrv::DtAxisAlignedBoundingBox< T >

Template for 32/64 bit Axis Aligned bounding boxes

not virtual because its stored as is on the GPU.

Inheritance diagram for makVrv::DtAxisAlignedBoundingBox< T >:
Inheritance graph
[legend]

Public Member Functions

 DtAxisAlignedBoundingBox ()
 
 DtAxisAlignedBoundingBox (const DtVector3< T > &vMin, const DtVector3< T > &vMax)
 
template<class RHS >
 DtAxisAlignedBoundingBox (const DtAxisAlignedBoundingBox< RHS > &rhs)
 
template<class RHS >
DtAxisAlignedBoundingBoxoperator= (const DtAxisAlignedBoundingBox< RHS > &rhs)
 
 ~DtAxisAlignedBoundingBox ()
 
const DtVector3< T > & min (void) const
 
const DtVector3< T > & max (void) const
 
DtVector3< T > center (void) const
 
boundingSphereRadius (void) const
 
DtVector3< T > halfSize (void) const
 
DtVector3< T > size (void) const
 
Extent extent (void) const
 
void setMinMax (const DtVector3< T > &vMin, const DtVector3< T > &vMax)
 
void setNull (void)
 
void setInfinite (void)
 
void merge (const DtAxisAlignedBoundingBox< T > &rhs)
 
void transformAffine (const DtMatrix4< T > &m)
 
bool isInfinite (void) const
 
bool isFinite (void) const
 
bool isNull (void) const
 
void GetCorners (DtVector3< T > corners[8]) const
 

Protected Attributes

DtVector3< T > myVectorMin
 
DtVector3< T > myVectorMax
 
Extent myExtent
 

Constructor & Destructor Documentation

ctor

template<class T>
makVrv::DtAxisAlignedBoundingBox< T >::DtAxisAlignedBoundingBox ( const DtVector3< T > &  vMin,
const DtVector3< T > &  vMax 
)

ctor taking in min and max

template<class T>
template<class RHS >
makVrv::DtAxisAlignedBoundingBox< T >::DtAxisAlignedBoundingBox ( const DtAxisAlignedBoundingBox< RHS > &  rhs)

Copy Constructor.

dtor

Member Function Documentation

template<class T>
template<class RHS >
DtAxisAlignedBoundingBox& makVrv::DtAxisAlignedBoundingBox< T >::operator= ( const DtAxisAlignedBoundingBox< RHS > &  rhs)

Assignment Operator.

template<class T>
const DtVector3<T>& makVrv::DtAxisAlignedBoundingBox< T >::min ( void  ) const

get the min

template<class T>
const DtVector3<T>& makVrv::DtAxisAlignedBoundingBox< T >::max ( void  ) const

get the max

template<class T>
DtVector3<T> makVrv::DtAxisAlignedBoundingBox< T >::center ( void  ) const

get the center

template<class T>
T makVrv::DtAxisAlignedBoundingBox< T >::boundingSphereRadius ( void  ) const

get the bounding sphere radius

template<class T>
DtVector3<T> makVrv::DtAxisAlignedBoundingBox< T >::halfSize ( void  ) const

half size

template<class T>
DtVector3<T> makVrv::DtAxisAlignedBoundingBox< T >::size ( void  ) const

full size

template<class T>
Extent makVrv::DtAxisAlignedBoundingBox< T >::extent ( void  ) const

get the extents

template<class T>
void makVrv::DtAxisAlignedBoundingBox< T >::setMinMax ( const DtVector3< T > &  vMin,
const DtVector3< T > &  vMax 
)

set the min max values

template<class T>
void makVrv::DtAxisAlignedBoundingBox< T >::setNull ( void  )

set it to a null (unitiliazed value)

template<class T>
void makVrv::DtAxisAlignedBoundingBox< T >::setInfinite ( void  )

set it to having infinite extents

template<class T>
void makVrv::DtAxisAlignedBoundingBox< T >::merge ( const DtAxisAlignedBoundingBox< T > &  rhs)

merge with rhs

template<class T>
void makVrv::DtAxisAlignedBoundingBox< T >::transformAffine ( const DtMatrix4< T > &  m)

transform the AABB with the given affine transform 'm'

template<class T>
bool makVrv::DtAxisAlignedBoundingBox< T >::isInfinite ( void  ) const

is infinite extents?

template<class T>
bool makVrv::DtAxisAlignedBoundingBox< T >::isFinite ( void  ) const

is finite extents?

template<class T>
bool makVrv::DtAxisAlignedBoundingBox< T >::isNull ( void  ) const

is null?

template<class T>
void makVrv::DtAxisAlignedBoundingBox< T >::GetCorners ( DtVector3< T >  corners[8]) const

get the 8 corners

Member Data Documentation

template<class T>
DtVector3<T> makVrv::DtAxisAlignedBoundingBox< T >::myVectorMin
protected
template<class T>
DtVector3<T> makVrv::DtAxisAlignedBoundingBox< T >::myVectorMax
protected
template<class T>
Extent makVrv::DtAxisAlignedBoundingBox< T >::myExtent
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)