btGImpactShapeInterface Class Reference

Base class for gimpact shapes. More...

#include <btGImpactShape.h>

Inheritance diagram for btGImpactShapeInterface:

btGImpactCompoundShape btGImpactMeshShape btGImpactMeshShapePart List of all members.

Public Member Functions

 btGImpactShapeInterface ()
SIMD_FORCE_INLINE void updateBound ()
 performs refit operation
void getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
 If the Bounding box is not updated, then this class attemps to calculate it.
virtual void postUpdate ()
 Tells to this object that is needed to refit the box set.
const GIM_AABBgetLocalBox ()
 Obtains the local box, which is the global calculated box of the total of subshapes.
virtual int getShapeType () const
virtual eGIMPACT_SHAPE_TYPE getGImpactShapeType ()=0
 Base method for determinig which kind of GIMPACT shape we get.
virtual bool hasBoxSet () const=0
 Determines if this class has a hierarchy structure for sorting its primitives.
virtual void setLocalScaling (const btVector3 &scaling)
virtual const btVector3 & getLocalScaling () const
virtual void rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, btCollisionWorld::RayResultCallback &resultCallback) const
 virtual method for ray collision
virtual void processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const
 Function for retrieve triangles.

Protected Member Functions

virtual void calcLocalAABB ()=0
 use this function for perfofm refit in bounding boxes

Protected Attributes

GIM_AABB m_localAABB
bool m_needs_update
btVector3 localScaling

Detailed Description

Base class for gimpact shapes.


Constructor & Destructor Documentation

btGImpactShapeInterface::btGImpactShapeInterface (  )  [inline]


Member Function Documentation

virtual void btGImpactShapeInterface::calcLocalAABB (  )  [protected, pure virtual]

use this function for perfofm refit in bounding boxes

Implemented in btGImpactCompoundShape, btGImpactMeshShapePart, and btGImpactMeshShape.

SIMD_FORCE_INLINE void btGImpactShapeInterface::updateBound (  )  [inline]

performs refit operation

Updates the entire Box set of this shape.

Precondition:
postUpdate() must be called for attemps to calculating the box set, else this function will does nothing.
Postcondition:
if m_needs_update == true, then it calls calcLocalAABB();

void btGImpactShapeInterface::getAabb ( const btTransform &  t,
btVector3 &  aabbMin,
btVector3 &  aabbMax 
) const [inline]

If the Bounding box is not updated, then this class attemps to calculate it.

Postcondition:
Calls updateBound() for update the box set.

virtual void btGImpactShapeInterface::postUpdate (  )  [inline, virtual]

Tells to this object that is needed to refit the box set.

Reimplemented in btGImpactMeshShape.

const GIM_AABB& btGImpactShapeInterface::getLocalBox (  )  [inline]

Obtains the local box, which is the global calculated box of the total of subshapes.

virtual int btGImpactShapeInterface::getShapeType (  )  const [inline, virtual]

virtual eGIMPACT_SHAPE_TYPE btGImpactShapeInterface::getGImpactShapeType (  )  [pure virtual]

Base method for determinig which kind of GIMPACT shape we get.

Implemented in btGImpactCompoundShape, btGImpactMeshShapePart, and btGImpactMeshShape.

virtual bool btGImpactShapeInterface::hasBoxSet (  )  const [pure virtual]

Determines if this class has a hierarchy structure for sorting its primitives.

Implemented in btGImpactCompoundShape, btGImpactMeshShapePart, and btGImpactMeshShape.

virtual void btGImpactShapeInterface::setLocalScaling ( const btVector3 &  scaling  )  [inline, virtual]

Postcondition:
You must call updateBound() for update the box set.

Reimplemented in btGImpactMeshShapePart, and btGImpactMeshShape.

virtual const btVector3& btGImpactShapeInterface::getLocalScaling (  )  const [inline, virtual]

Reimplemented in btGImpactMeshShapePart.

virtual void btGImpactShapeInterface::rayTest ( const btVector3 &  rayFrom,
const btVector3 &  rayTo,
btCollisionWorld::RayResultCallback &  resultCallback 
) const [inline, virtual]

virtual method for ray collision

Reimplemented in btGImpactCompoundShape, btGImpactMeshShapePart, and btGImpactMeshShape.

virtual void btGImpactShapeInterface::processAllTriangles ( btTriangleCallback *  callback,
const btVector3 &  aabbMin,
const btVector3 &  aabbMax 
) const [inline, virtual]

Function for retrieve triangles.

It gives the triangles in local space

Reimplemented in btGImpactMeshShapePart, and btGImpactMeshShape.


Member Data Documentation

GIM_AABB btGImpactShapeInterface::m_localAABB [protected]

bool btGImpactShapeInterface::m_needs_update [protected]

btVector3 btGImpactShapeInterface::localScaling [protected]


The documentation for this class was generated from the following file:
Generated on Wed Jun 13 16:58:22 2007 for GIMPACT by  doxygen 1.5.2