btCollisionShape Class Reference

The btCollisionShape class provides an interface for collision shapes that can be shared among btCollisionObjects. More...

#include <btCollisionShape.h>

Inheritance diagram for btCollisionShape:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 btCollisionShape ()
virtual void calculateLocalInertia (btScalar mass, btVector3 &inertia) const =0
virtual int calculateSerializeBufferSize () const
void calculateTemporalAabb (const btTransform &curTrans, const btVector3 &linvel, const btVector3 &angvel, btScalar timeStep, btVector3 &temporalAabbMin, btVector3 &temporalAabbMax) const
virtual void getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const =0
 getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t.
virtual btScalar getAngularMotionDisc () const
 getAngularMotionDisc returns the maximus radius needed for Conservative Advancement to handle time-of-impact with rotations.
virtual void getBoundingSphere (btVector3 &center, btScalar &radius) const
virtual btScalar getContactBreakingThreshold (btScalar defaultContactThresholdFactor) const
virtual const btVector3 & getLocalScaling () const =0
virtual btScalar getMargin () const =0
virtual const char * getName () const =0
int getShapeType () const
void * getUserPointer () const
SIMD_FORCE_INLINE bool isCompound () const
SIMD_FORCE_INLINE bool isConcave () const
SIMD_FORCE_INLINE bool isConvex () const
SIMD_FORCE_INLINE bool isConvex2d () const
SIMD_FORCE_INLINE bool isInfinite () const
 isInfinite is used to catch simulation error (aabb check)
SIMD_FORCE_INLINE bool isPolyhedral () const
SIMD_FORCE_INLINE bool isSoftBody () const
virtual const char * serialize (void *dataBuffer, btSerializer *serializer) const
 fills the dataBuffer and returns the struct name (and 0 on failure)
virtual void serializeSingleShape (btSerializer *serializer) const
virtual void setLocalScaling (const btVector3 &scaling)=0
virtual void setMargin (btScalar margin)=0
void setUserPointer (void *userPtr)
 optional user data pointer
virtual ~btCollisionShape ()

Protected Attributes

int m_shapeType
void * m_userPointer

Detailed Description

The btCollisionShape class provides an interface for collision shapes that can be shared among btCollisionObjects.

Definition at line 27 of file btCollisionShape.h.


Constructor & Destructor Documentation

btCollisionShape::btCollisionShape (  )  [inline]

Definition at line 35 of file btCollisionShape.h.

virtual btCollisionShape::~btCollisionShape (  )  [inline, virtual]

Definition at line 39 of file btCollisionShape.h.


Member Function Documentation

virtual void btCollisionShape::calculateLocalInertia ( btScalar  mass,
btVector3 &  inertia 
) const [pure virtual]
SIMD_FORCE_INLINE int btCollisionShape::calculateSerializeBufferSize (  )  const [virtual]

Reimplemented in btGImpactMeshShape.

Definition at line 138 of file btCollisionShape.h.

void btCollisionShape::calculateTemporalAabb ( const btTransform curTrans,
const btVector3 &  linvel,
const btVector3 &  angvel,
btScalar  timeStep,
btVector3 &  temporalAabbMin,
btVector3 &  temporalAabbMax 
) const

calculateTemporalAabb calculates the enclosing aabb for the moving object over interval [0..timeStep) result is conservative

virtual void btCollisionShape::getAabb ( const btTransform t,
btVector3 &  aabbMin,
btVector3 &  aabbMax 
) const [pure virtual]

getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t.

Implemented in btEmptyShape, btHeightfieldTerrainShape, btTriangleMeshShape, btGImpactShapeInterface, and btSoftBodyCollisionShape.

virtual btScalar btCollisionShape::getAngularMotionDisc (  )  const [virtual]

getAngularMotionDisc returns the maximus radius needed for Conservative Advancement to handle time-of-impact with rotations.

virtual void btCollisionShape::getBoundingSphere ( btVector3 &  center,
btScalar radius 
) const [virtual]
virtual btScalar btCollisionShape::getContactBreakingThreshold ( btScalar  defaultContactThresholdFactor  )  const [virtual]
virtual const btVector3& btCollisionShape::getLocalScaling (  )  const [pure virtual]
virtual btScalar btCollisionShape::getMargin (  )  const [pure virtual]

Implemented in btConcaveShape, and btGImpactMeshShapePart.

virtual const char* btCollisionShape::getName (  )  const [pure virtual]
int btCollisionShape::getShapeType (  )  const [inline]

Reimplemented in btGImpactShapeInterface.

Definition at line 105 of file btCollisionShape.h.

void* btCollisionShape::getUserPointer (  )  const [inline]

Definition at line 116 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isCompound (  )  const [inline]

Definition at line 78 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isConcave (  )  const [inline]

Definition at line 74 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isConvex (  )  const [inline]

Definition at line 70 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isConvex2d (  )  const [inline]

Definition at line 65 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isInfinite (  )  const [inline]

isInfinite is used to catch simulation error (aabb check)

Definition at line 89 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isPolyhedral (  )  const [inline]

Definition at line 60 of file btCollisionShape.h.

SIMD_FORCE_INLINE bool btCollisionShape::isSoftBody (  )  const [inline]

Definition at line 83 of file btCollisionShape.h.

virtual const char* btCollisionShape::serialize ( void *  dataBuffer,
btSerializer serializer 
) const [virtual]

fills the dataBuffer and returns the struct name (and 0 on failure)

Reimplemented in btGImpactMeshShape.

virtual void btCollisionShape::serializeSingleShape ( btSerializer serializer  )  const [virtual]
virtual void btCollisionShape::setLocalScaling ( const btVector3 &  scaling  )  [pure virtual]
virtual void btCollisionShape::setMargin ( btScalar  margin  )  [pure virtual]
void btCollisionShape::setUserPointer ( void *  userPtr  )  [inline]

optional user data pointer

Definition at line 111 of file btCollisionShape.h.


Member Data Documentation

Definition at line 30 of file btCollisionShape.h.

Definition at line 31 of file btCollisionShape.h.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


bullet
Author(s): Erwin Coumans, ROS package maintained by Tully Foote
autogenerated on Fri Jan 11 10:11:00 2013