Blender V4.3
btCapsuleShape.h File Reference

Go to the source code of this file.

Classes

class  btCapsuleShapeX
 
class  btCapsuleShapeZ
 
struct  btCapsuleShapeData
 do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 More...
 

Functions

 btCapsuleShape ()
 only used for btCapsuleShapeZ and btCapsuleShapeX subclasses.
 
 BT_DECLARE_ALIGNED_ALLOCATOR ()
 
 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 setMargin (btScalar collisionMargin)
 
virtual void getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
 getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t.
 
virtual const char * getName () const
 
int getUpAxis () const
 
btScalar getRadius () const
 
btScalar getHalfHeight () const
 
virtual void setLocalScaling (const btVector3 &scaling)
 in case we receive negative scaling
 
virtual btVector3 getAnisotropicRollingFrictionDirection () 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)
 
SIMD_FORCE_INLINE void deSerializeFloat (struct btCapsuleShapeData *dataBuffer)
 

Variables

btCapsuleShape __pad0__
 

Function Documentation

◆ batchedUnitVectorGetSupportingVertexWithoutMargin()

virtual void batchedUnitVectorGetSupportingVertexWithoutMargin ( const btVector3 * vectors,
btVector3 * supportVerticesOut,
int numVectors ) const
virtual

Definition at line 71 of file btBox2dShape.h.

◆ BT_DECLARE_ALIGNED_ALLOCATOR()

BT_DECLARE_ALIGNED_ALLOCATOR ( )

◆ btCapsuleShape() [1/2]

btCapsuleShape ( )
protected

only used for btCapsuleShapeZ and btCapsuleShapeX subclasses.

Definition at line 33 of file btCapsuleShape.h.

References CAPSULE_SHAPE_PROXYTYPE.

Referenced by btCollisionWorldImporter::createCapsuleShapeY().

◆ btCapsuleShape() [2/2]

btCapsuleShape::btCapsuleShape ( btScalar radius,
btScalar height )

◆ calculateLocalInertia()

virtual void calculateLocalInertia ( btScalar mass,
btVector3 & inertia ) const
virtual

CollisionShape Interface.

Definition at line 54 of file btConeShape.h.

◆ calculateSerializeBufferSize()

virtual int calculateSerializeBufferSize ( ) const
virtual

◆ deSerializeFloat()

SIMD_FORCE_INLINE void deSerializeFloat ( struct btCapsuleShapeData * dataBuffer)

◆ getAabb()

virtual void getAabb ( const btTransform & t,
btVector3 & aabbMin,
btVector3 & aabbMax ) const
virtual

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

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

Definition at line 54 of file btCapsuleShape.h.

◆ getAnisotropicRollingFrictionDirection()

virtual btVector3 getAnisotropicRollingFrictionDirection ( ) const
virtual

Definition at line 97 of file btCapsuleShape.h.

References getUpAxis().

◆ getHalfHeight()

btScalar getHalfHeight ( ) const

Definition at line 82 of file btCapsuleShape.h.

References m_implicitShapeDimensions, and m_upAxis.

Referenced by getAabb().

◆ getName()

virtual const char * getName ( ) const
virtual

Definition at line 66 of file btCapsuleShape.h.

◆ getRadius()

btScalar getRadius ( ) const

Definition at line 76 of file btCapsuleShape.h.

References m_implicitShapeDimensions, and m_upAxis.

Referenced by getAabb().

◆ getUpAxis()

int getUpAxis ( ) const

Definition at line 71 of file btCapsuleShape.h.

References m_upAxis.

Referenced by getAnisotropicRollingFrictionDirection().

◆ localGetSupportingVertexWithoutMargin()

virtual btVector3 localGetSupportingVertexWithoutMargin ( const btVector3 & vec) const
virtual

btConvexShape Interface

Definition at line 62 of file btBox2dShape.h.

◆ serialize()

virtual const char * serialize ( void * dataBuffer,
btSerializer * serializer ) const
virtual

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

◆ setLocalScaling()

virtual void setLocalScaling ( const btVector3 & scaling)
virtual

in case we receive negative scaling

Definition at line 87 of file btCapsuleShape.h.

References m_collisionMargin, m_implicitShapeDimensions, m_localScaling, and m_upAxis.

◆ setMargin()

virtual void setMargin ( btScalar collisionMargin)
virtual

Definition at line 48 of file btCapsuleShape.h.

Variable Documentation

◆ __pad0__

btCapsuleShape __pad0__

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.