Bullet Collision Detection & Physics Library
Public Member Functions | Protected Attributes | List of all members
btConcaveShape Class Referenceabstract

The btConcaveShape class provides an interface for non-moving (static) concave shapes. More...

#include <btConcaveShape.h>

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

Public Member Functions

 BT_DECLARE_ALIGNED_ALLOCATOR ()
 
 btConcaveShape ()
 
virtual ~btConcaveShape ()
 
virtual void processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const =0
 
virtual btScalar getMargin () const
 
virtual void setMargin (btScalar collisionMargin)
 
- Public Member Functions inherited from btCollisionShape
 BT_DECLARE_ALIGNED_ALLOCATOR ()
 
 btCollisionShape ()
 
virtual ~btCollisionShape ()
 
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. More...
 
virtual void getBoundingSphere (btVector3 &center, btScalar &radius) const
 
virtual btScalar getAngularMotionDisc () const
 getAngularMotionDisc returns the maximus radius needed for Conservative Advancement to handle time-of-impact with rotations. More...
 
virtual btScalar getContactBreakingThreshold (btScalar defaultContactThresholdFactor) const
 
void 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 More...
 
bool isPolyhedral () const
 
bool isConvex2d () const
 
bool isConvex () const
 
bool isNonMoving () const
 
bool isConcave () const
 
bool isCompound () const
 
bool isSoftBody () const
 
bool isInfinite () const
 isInfinite is used to catch simulation error (aabb check) More...
 
virtual void setLocalScaling (const btVector3 &scaling)=0
 
virtual const btVector3getLocalScaling () const =0
 
virtual void calculateLocalInertia (btScalar mass, btVector3 &inertia) const =0
 
virtual const char * getName () const =0
 
int getShapeType () const
 
virtual btVector3 getAnisotropicRollingFrictionDirection () const
 the getAnisotropicRollingFrictionDirection can be used in combination with setAnisotropicFriction See Bullet/Demos/RollingFrictionDemo for an example More...
 
void setUserPointer (void *userPtr)
 optional user data pointer More...
 
void * getUserPointer () const
 
void setUserIndex (int index)
 
int getUserIndex () 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) More...
 
virtual void serializeSingleShape (btSerializer *serializer) const
 

Protected Attributes

btScalar m_collisionMargin
 
- Protected Attributes inherited from btCollisionShape
int m_shapeType
 
void * m_userPointer
 
int m_userIndex
 

Detailed Description

The btConcaveShape class provides an interface for non-moving (static) concave shapes.

It has been implemented by the btStaticPlaneShape, btBvhTriangleMeshShape and btHeightfieldTerrainShape.

Definition at line 36 of file btConcaveShape.h.

Constructor & Destructor Documentation

btConcaveShape::btConcaveShape ( )

Definition at line 19 of file btConcaveShape.cpp.

btConcaveShape::~btConcaveShape ( )
virtual

Definition at line 24 of file btConcaveShape.cpp.

Member Function Documentation

btConcaveShape::BT_DECLARE_ALIGNED_ALLOCATOR ( )
virtual btScalar btConcaveShape::getMargin ( ) const
inlinevirtual

Implements btCollisionShape.

Reimplemented in btGImpactMeshShapePart.

Definition at line 50 of file btConcaveShape.h.

virtual void btConcaveShape::processAllTriangles ( btTriangleCallback callback,
const btVector3 aabbMin,
const btVector3 aabbMax 
) const
pure virtual
virtual void btConcaveShape::setMargin ( btScalar  collisionMargin)
inlinevirtual

Implements btCollisionShape.

Reimplemented in btGImpactMeshShape, btGImpactMeshShapePart, and btGImpactShapeInterface.

Definition at line 53 of file btConcaveShape.h.

Member Data Documentation

btScalar btConcaveShape::m_collisionMargin
protected

Definition at line 39 of file btConcaveShape.h.


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