The btCollisionShape class provides an interface for collision shapes that can be shared among btCollisionObjects. More...
#include <btCollisionShape.h>
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 ¢er, 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 | isNonMoving () const |
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 |
The btCollisionShape class provides an interface for collision shapes that can be shared among btCollisionObjects.
Definition at line 27 of file btCollisionShape.h.
btCollisionShape::btCollisionShape | ( | ) | [inline] |
Definition at line 35 of file btCollisionShape.h.
virtual btCollisionShape::~btCollisionShape | ( | ) | [inline, virtual] |
Definition at line 39 of file btCollisionShape.h.
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 142 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 btHeightfieldTerrainShape, btGImpactShapeInterface, btSoftBodyCollisionShape, btTriangleMeshShape, and btEmptyShape.
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 btGImpactMeshShapePart, and btConcaveShape.
virtual const char* btCollisionShape::getName | ( | ) | const [pure virtual] |
int btCollisionShape::getShapeType | ( | ) | const [inline] |
Reimplemented in btGImpactShapeInterface.
Definition at line 109 of file btCollisionShape.h.
void* btCollisionShape::getUserPointer | ( | ) | const [inline] |
Definition at line 120 of file btCollisionShape.h.
SIMD_FORCE_INLINE bool btCollisionShape::isCompound | ( | ) | const [inline] |
Definition at line 82 of file btCollisionShape.h.
SIMD_FORCE_INLINE bool btCollisionShape::isConcave | ( | ) | const [inline] |
Definition at line 78 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 93 of file btCollisionShape.h.
SIMD_FORCE_INLINE bool btCollisionShape::isNonMoving | ( | ) | const [inline] |
Definition at line 74 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 87 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] |
Implemented in btGImpactMeshShape, btGImpactMeshShapePart, btGImpactShapeInterface, and btConcaveShape.
void btCollisionShape::setUserPointer | ( | void * | userPtr | ) | [inline] |
optional user data pointer
Definition at line 115 of file btCollisionShape.h.
int btCollisionShape::m_shapeType [protected] |
Definition at line 30 of file btCollisionShape.h.
void* btCollisionShape::m_userPointer [protected] |
Definition at line 31 of file btCollisionShape.h.