Public Member Functions | Protected Attributes

btCylinderShape Class Reference

The btCylinderShape class implements a cylinder shape primitive, centered around the origin. Its central axis aligned with the Y axis. btCylinderShapeX is aligned with the X axis and btCylinderShapeZ around the Z axis. More...

#include <btCylinderShape.h>

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

List of all members.

Public Member Functions

 BT_DECLARE_ALIGNED_ALLOCATOR ()
btVector3 getHalfExtentsWithMargin () const
const btVector3getHalfExtentsWithoutMargin () const
 btCylinderShape (const btVector3 &halfExtents)
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 void calculateLocalInertia (btScalar mass, btVector3 &inertia) const
virtual btVector3 localGetSupportingVertexWithoutMargin (const btVector3 &vec) const
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin (const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const
virtual void setMargin (btScalar collisionMargin)
virtual btVector3 localGetSupportingVertex (const btVector3 &vec) const
int getUpAxis () const
virtual btVector3 getAnisotropicRollingFrictionDirection () const
 the getAnisotropicRollingFrictionDirection can be used in combination with setAnisotropicFriction See Bullet/Demos/RollingFrictionDemo for an example
virtual btScalar getRadius () const
virtual void setLocalScaling (const btVector3 &scaling)
virtual const char * getName () const
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 Attributes

int m_upAxis

Detailed Description

The btCylinderShape class implements a cylinder shape primitive, centered around the origin. Its central axis aligned with the Y axis. btCylinderShapeX is aligned with the X axis and btCylinderShapeZ around the Z axis.

Definition at line 24 of file btCylinderShape.h.


Constructor & Destructor Documentation

btCylinderShape::btCylinderShape ( const btVector3 halfExtents  ) 

Definition at line 18 of file btCylinderShape.cpp.


Member Function Documentation

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

Implements btConvexShape.

Reimplemented in btCylinderShapeX, and btCylinderShapeZ.

Definition at line 254 of file btCylinderShape.cpp.

btCylinderShape::BT_DECLARE_ALIGNED_ALLOCATOR (  ) 

Reimplemented from btConvexInternalShape.

Reimplemented in btCylinderShapeX, and btCylinderShapeZ.

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

Implements btCollisionShape.

Definition at line 50 of file btCylinderShape.cpp.

int btCylinderShape::calculateSerializeBufferSize (  )  const [inline, virtual]

Reimplemented from btConvexInternalShape.

Definition at line 193 of file btCylinderShape.h.

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

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

Reimplemented from btConvexInternalShape.

Definition at line 45 of file btCylinderShape.cpp.

virtual btVector3 btCylinderShape::getAnisotropicRollingFrictionDirection (  )  const [inline, virtual]

the getAnisotropicRollingFrictionDirection can be used in combination with setAnisotropicFriction See Bullet/Demos/RollingFrictionDemo for an example

Reimplemented from btCollisionShape.

Definition at line 100 of file btCylinderShape.h.

btVector3 btCylinderShape::getHalfExtentsWithMargin (  )  const [inline]

Definition at line 36 of file btCylinderShape.h.

const btVector3& btCylinderShape::getHalfExtentsWithoutMargin (  )  const [inline]

Definition at line 44 of file btCylinderShape.h.

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

Implements btCollisionShape.

Reimplemented in btCylinderShapeX, and btCylinderShapeZ.

Definition at line 125 of file btCylinderShape.h.

virtual btScalar btCylinderShape::getRadius (  )  const [inline, virtual]

Reimplemented in btCylinderShapeX, and btCylinderShapeZ.

Definition at line 107 of file btCylinderShape.h.

int btCylinderShape::getUpAxis (  )  const [inline]

Definition at line 95 of file btCylinderShape.h.

virtual btVector3 btCylinderShape::localGetSupportingVertex ( const btVector3 vec  )  const [inline, virtual]

Reimplemented from btConvexInternalShape.

Definition at line 71 of file btCylinderShape.h.

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

Implements btConvexShape.

Reimplemented in btCylinderShapeX, and btCylinderShapeZ.

Definition at line 249 of file btCylinderShape.cpp.

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

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

Reimplemented from btConvexInternalShape.

Definition at line 199 of file btCylinderShape.h.

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

Reimplemented from btConvexInternalShape.

Definition at line 112 of file btCylinderShape.h.

virtual void btCylinderShape::setMargin ( btScalar  collisionMargin  )  [inline, virtual]

Reimplemented from btConvexInternalShape.

Definition at line 59 of file btCylinderShape.h.


Member Data Documentation

int btCylinderShape::m_upAxis [protected]

Definition at line 30 of file btCylinderShape.h.


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