btCapsuleShape Class Reference

The btCapsuleShape represents a capsule around the Y axis, there is also the btCapsuleShapeX aligned around the X axis and btCapsuleShapeZ around the Z axis. More...

#include <btCapsuleShape.h>

Inheritance diagram for btCapsuleShape:
Inheritance graph
[legend]
Collaboration diagram for btCapsuleShape:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 btCapsuleShape (btScalar radius, btScalar height)
virtual void calculateLocalInertia (btScalar mass, btVector3 &inertia) const
 CollisionShape Interface.
virtual btVector3 localGetSupportingVertexWithoutMargin (const btVector3 &vec) const
 btConvexShape Interface
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin (const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const
virtual void getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
 getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version
virtual const char * getName () const
int getUpAxis () const
btScalar getRadius () const
btScalar getHalfHeight () const
virtual void setLocalScaling (const btVector3 &scaling)
virtual int calculateSerializeBufferSize () const
virtual const char * serialize (void *dataBuffer, btSerializer *serializer) const
 fills the dataBuffer and returns the struct name (and 0 on failure)

Protected Member Functions

 btCapsuleShape ()
 only used for btCapsuleShapeZ and btCapsuleShapeX subclasses.

Protected Attributes

int m_upAxis

Detailed Description

The btCapsuleShape represents a capsule around the Y axis, there is also the btCapsuleShapeX aligned around the X axis and btCapsuleShapeZ around the Z axis.

The total height is height+2*radius, so the height is just the height between the center of each 'sphere' of the capsule caps. The btCapsuleShape is a convex hull of two spheres. The btMultiSphereShape is a more general collision shape that takes the convex hull of multiple sphere, so it can also represent a capsule when just using two spheres.

Definition at line 26 of file btCapsuleShape.h.


Constructor & Destructor Documentation

btCapsuleShape::btCapsuleShape (  )  [inline, protected]

only used for btCapsuleShapeZ and btCapsuleShapeX subclasses.

Definition at line 33 of file btCapsuleShape.h.

btCapsuleShape::btCapsuleShape ( btScalar  radius,
btScalar  height 
)

Definition at line 22 of file btCapsuleShape.cpp.


Member Function Documentation

void btCapsuleShape::batchedUnitVectorGetSupportingVertexWithoutMargin ( const btVector3 vectors,
btVector3 supportVerticesOut,
int  numVectors 
) const [virtual]

Implements btConvexShape.

Definition at line 83 of file btCapsuleShape.cpp.

void btCapsuleShape::calculateLocalInertia ( btScalar  mass,
btVector3 inertia 
) const [virtual]

CollisionShape Interface.

Implements btCollisionShape.

Definition at line 123 of file btCapsuleShape.cpp.

SIMD_FORCE_INLINE int btCapsuleShape::calculateSerializeBufferSize (  )  const [virtual]

Reimplemented from btConvexInternalShape.

Definition at line 144 of file btCapsuleShape.h.

virtual void btCapsuleShape::getAabb ( const btTransform t,
btVector3 aabbMin,
btVector3 aabbMax 
) const [inline, virtual]

getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version

Reimplemented from btConvexInternalShape.

Definition at line 46 of file btCapsuleShape.h.

btScalar btCapsuleShape::getHalfHeight (  )  const [inline]

Definition at line 75 of file btCapsuleShape.h.

virtual const char* btCapsuleShape::getName (  )  const [inline, virtual]

Implements btCollisionShape.

Reimplemented in btCapsuleShapeX, and btCapsuleShapeZ.

Definition at line 59 of file btCapsuleShape.h.

btScalar btCapsuleShape::getRadius (  )  const [inline]

Definition at line 69 of file btCapsuleShape.h.

int btCapsuleShape::getUpAxis (  )  const [inline]

Definition at line 64 of file btCapsuleShape.h.

btVector3 btCapsuleShape::localGetSupportingVertexWithoutMargin ( const btVector3 vec  )  const [virtual]

btConvexShape Interface

Implements btConvexShape.

Definition at line 30 of file btCapsuleShape.cpp.

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

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

Reimplemented from btConvexInternalShape.

Definition at line 150 of file btCapsuleShape.h.

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

Reimplemented from btConvexInternalShape.

Definition at line 80 of file btCapsuleShape.h.


Member Data Documentation

int btCapsuleShape::m_upAxis [protected]

Definition at line 29 of file btCapsuleShape.h.


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

Generated on Mon Feb 15 22:21:54 2010 for Bullet Collision Detection & Physics Library by  doxygen 1.6.1