Blender  V3.3
Classes | Macros | Typedefs | Enumerations | Functions | Variables
btCollisionObject.h File Reference
#include "LinearMath/btTransform.h"
#include "LinearMath/btMotionState.h"
#include "LinearMath/btAlignedAllocator.h"
#include "LinearMath/btAlignedObjectArray.h"

Go to the source code of this file.

Classes

struct  btCollisionObjectDoubleData
 do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 More...
 
struct  btCollisionObjectFloatData
 do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 More...
 

Macros

#define ACTIVE_TAG   1
 
#define ISLAND_SLEEPING   2
 
#define WANTS_DEACTIVATION   3
 
#define DISABLE_DEACTIVATION   4
 
#define DISABLE_SIMULATION   5
 
#define btCollisionObjectData   btCollisionObjectFloatData
 
#define btCollisionObjectDataName   "btCollisionObjectFloatData"
 

Typedefs

typedef btAlignedObjectArray< class btCollisionObject * > btCollisionObjectArray
 

Enumerations

enum  CollisionFlags {
  CF_STATIC_OBJECT = 1 , CF_KINEMATIC_OBJECT = 2 , CF_NO_CONTACT_RESPONSE = 4 , CF_CUSTOM_MATERIAL_CALLBACK = 8 ,
  CF_CHARACTER_OBJECT = 16 , CF_DISABLE_VISUALIZE_OBJECT = 32 , CF_DISABLE_SPU_COLLISION_PROCESSING = 64 , CF_HAS_CONTACT_STIFFNESS_DAMPING = 128 ,
  CF_HAS_CUSTOM_DEBUG_RENDERING_COLOR = 256 , CF_HAS_FRICTION_ANCHOR = 512 , CF_HAS_COLLISION_SOUND_TRIGGER = 1024
}
 
enum  CollisionObjectTypes {
  CO_COLLISION_OBJECT = 1 , CO_RIGID_BODY = 2 , CO_GHOST_OBJECT = 4 , CO_SOFT_BODY = 8 ,
  CO_HF_FLUID = 16 , CO_USER_TYPE = 32 , CO_FEATHERSTONE_LINK = 64
}
 
enum  AnisotropicFrictionFlags { CF_ANISOTROPIC_FRICTION_DISABLED = 0 , CF_ANISOTROPIC_FRICTION = 1 , CF_ANISOTROPIC_ROLLING_FRICTION = 2 }
 

Functions

 BT_DECLARE_ALIGNED_ALLOCATOR ()
 
SIMD_FORCE_INLINE bool mergesSimulationIslands () const
 
const btVector3getAnisotropicFriction () const
 
void setAnisotropicFriction (const btVector3 &anisotropicFriction, int frictionMode=CF_ANISOTROPIC_FRICTION)
 
bool hasAnisotropicFriction (int frictionMode=CF_ANISOTROPIC_FRICTION) const
 
void setContactProcessingThreshold (btScalar contactProcessingThreshold)
 
btScalar getContactProcessingThreshold () const
 
SIMD_FORCE_INLINE bool isStaticObject () const
 
SIMD_FORCE_INLINE bool isKinematicObject () const
 
SIMD_FORCE_INLINE bool isStaticOrKinematicObject () const
 
SIMD_FORCE_INLINE bool hasContactResponse () const
 
virtual ~btCollisionObject ()
 
virtual void setCollisionShape (btCollisionShape *collisionShape)
 
SIMD_FORCE_INLINE const btCollisionShapegetCollisionShape () const
 
void setIgnoreCollisionCheck (const btCollisionObject *co, bool ignoreCollisionCheck)
 
int getNumObjectsWithoutCollision () const
 
const btCollisionObjectgetObjectWithoutCollision (int index)
 
virtual bool checkCollideWithOverride (const btCollisionObject *co) const
 
voidinternalGetExtensionPointer () const
 
void internalSetExtensionPointer (void *pointer)
 
SIMD_FORCE_INLINE int getActivationState () const
 
void setActivationState (int newState) const
 
void setDeactivationTime (btScalar time)
 
btScalar getDeactivationTime () const
 
void forceActivationState (int newState) const
 
void activate (bool forceActivation=false) const
 
SIMD_FORCE_INLINE bool isActive () const
 
void setRestitution (btScalar rest)
 
btScalar getRestitution () const
 
void setFriction (btScalar frict)
 
btScalar getFriction () const
 
void setRollingFriction (btScalar frict)
 
btScalar getRollingFriction () const
 
void setSpinningFriction (btScalar frict)
 
btScalar getSpinningFriction () const
 
void setContactStiffnessAndDamping (btScalar stiffness, btScalar damping)
 
btScalar getContactStiffness () const
 
btScalar getContactDamping () const
 
int getInternalType () const
 reserved for Bullet internal usage More...
 
btTransformgetWorldTransform ()
 
void setWorldTransform (const btTransform &worldTrans)
 
SIMD_FORCE_INLINE btBroadphaseProxygetBroadphaseHandle ()
 
void setBroadphaseHandle (btBroadphaseProxy *handle)
 
const btTransformgetInterpolationWorldTransform () const
 
void setInterpolationWorldTransform (const btTransform &trans)
 
void setInterpolationLinearVelocity (const btVector3 &linvel)
 
void setInterpolationAngularVelocity (const btVector3 &angvel)
 
const btVector3getInterpolationLinearVelocity () const
 
const btVector3getInterpolationAngularVelocity () const
 
SIMD_FORCE_INLINE int getIslandTag () const
 
void setIslandTag (int tag)
 
SIMD_FORCE_INLINE int getCompanionId () const
 
void setCompanionId (int id)
 
SIMD_FORCE_INLINE int getWorldArrayIndex () const
 
void setWorldArrayIndex (int ix)
 
SIMD_FORCE_INLINE btScalar getHitFraction () const
 
void setHitFraction (btScalar hitFraction)
 
SIMD_FORCE_INLINE int getCollisionFlags () const
 
void setCollisionFlags (int flags)
 
btScalar getCcdSweptSphereRadius () const
 Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm:: More...
 
void setCcdSweptSphereRadius (btScalar radius)
 Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm:: More...
 
btScalar getCcdMotionThreshold () const
 
btScalar getCcdSquareMotionThreshold () const
 
void setCcdMotionThreshold (btScalar ccdMotionThreshold)
 Don't do continuous collision detection if the motion (in one step) is less then m_ccdMotionThreshold. More...
 
voidgetUserPointer () const
 users can point to their objects, userPointer is not used by Bullet More...
 
int getUserIndex () const
 
int getUserIndex2 () const
 
int getUserIndex3 () const
 
void setUserPointer (void *userPointer)
 users can point to their objects, userPointer is not used by Bullet More...
 
void setUserIndex (int index)
 users can point to their objects, userPointer is not used by Bullet More...
 
void setUserIndex2 (int index)
 
void setUserIndex3 (int index)
 
int getUpdateRevisionInternal () const
 
void setCustomDebugColor (const btVector3 &colorRGB)
 
void removeCustomDebugColor ()
 
bool getCustomDebugColor (btVector3 &colorRGB) const
 
bool checkCollideWith (const btCollisionObject *co) const
 
virtual int calculateSerializeBufferSize () const
 
virtual const char * serialize (void *dataBuffer, class btSerializer *serializer) const
 fills the dataBuffer and returns the struct name (and 0 on failure) More...
 
virtual void serializeSingleObject (class btSerializer *serializer) const
 

Variables

 btCollisionObject
 
btTransform m_interpolationWorldTransform
 
btVector3 m_interpolationLinearVelocity
 
btVector3 m_interpolationAngularVelocity
 
btVector3 m_anisotropicFriction
 
int m_hasAnisotropicFriction
 
btScalar m_contactProcessingThreshold
 
btBroadphaseProxym_broadphaseHandle
 
btCollisionShapem_collisionShape
 
voidm_extensionPointer
 m_extensionPointer is used by some internal low-level Bullet extensions. More...
 
btCollisionShapem_rootCollisionShape
 
int m_collisionFlags
 
int m_islandTag1
 
int m_companionId
 
int m_worldArrayIndex
 
int m_activationState1
 
btScalar m_deactivationTime
 
btScalar m_friction
 
btScalar m_restitution
 
btScalar m_rollingFriction
 
btScalar m_spinningFriction
 
btScalar m_contactDamping
 
btScalar m_contactStiffness
 
int m_internalType
 
voidm_userObjectPointer
 users can point to their objects, m_userPointer is not used by Bullet, see setUserPointer/getUserPointer More...
 
int m_userIndex2
 
int m_userIndex
 
int m_userIndex3
 
btScalar m_hitFraction
 time of impact calculation More...
 
btScalar m_ccdSweptSphereRadius
 Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm:: More...
 
btScalar m_ccdMotionThreshold
 Don't do continuous collision detection if the motion (in one step) is less then m_ccdMotionThreshold. More...
 
int m_checkCollideWith
 If some object should have elaborate collision filtering by sub-classes. More...
 
btAlignedObjectArray< const btCollisionObject * > m_objectsWithoutCollisionCheck
 
int m_updateRevision
 internal update revision number. It will be increased when the object changes. This allows some subsystems to perform lazy evaluation. More...
 
btVector3 m_customDebugColorRGB
 

Macro Definition Documentation

◆ ACTIVE_TAG

#define ACTIVE_TAG   1

Definition at line 22 of file btCollisionObject.h.

◆ btCollisionObjectData

#define btCollisionObjectData   btCollisionObjectFloatData

Definition at line 41 of file btCollisionObject.h.

◆ btCollisionObjectDataName

#define btCollisionObjectDataName   "btCollisionObjectFloatData"

Definition at line 42 of file btCollisionObject.h.

◆ DISABLE_DEACTIVATION

#define DISABLE_DEACTIVATION   4

Definition at line 25 of file btCollisionObject.h.

◆ DISABLE_SIMULATION

#define DISABLE_SIMULATION   5

Definition at line 26 of file btCollisionObject.h.

◆ ISLAND_SLEEPING

#define ISLAND_SLEEPING   2

Definition at line 23 of file btCollisionObject.h.

◆ WANTS_DEACTIVATION

#define WANTS_DEACTIVATION   3

Definition at line 24 of file btCollisionObject.h.

Typedef Documentation

◆ btCollisionObjectArray

Definition at line 35 of file btCollisionObject.h.

Enumeration Type Documentation

◆ AnisotropicFrictionFlags

Enumerator
CF_ANISOTROPIC_FRICTION_DISABLED 
CF_ANISOTROPIC_FRICTION 
CF_ANISOTROPIC_ROLLING_FRICTION 

Definition at line 156 of file btCollisionObject.h.

◆ CollisionFlags

Enumerator
CF_STATIC_OBJECT 
CF_KINEMATIC_OBJECT 
CF_NO_CONTACT_RESPONSE 
CF_CUSTOM_MATERIAL_CALLBACK 
CF_CHARACTER_OBJECT 
CF_DISABLE_VISUALIZE_OBJECT 
CF_DISABLE_SPU_COLLISION_PROCESSING 
CF_HAS_CONTACT_STIFFNESS_DAMPING 
CF_HAS_CUSTOM_DEBUG_RENDERING_COLOR 
CF_HAS_FRICTION_ANCHOR 
CF_HAS_COLLISION_SOUND_TRIGGER 

Definition at line 128 of file btCollisionObject.h.

◆ CollisionObjectTypes

Enumerator
CO_COLLISION_OBJECT 
CO_RIGID_BODY 
CO_GHOST_OBJECT 

CO_GHOST_OBJECT keeps track of all objects overlapping its AABB and that pass its collision filter It is useful for collision sensors, explosion objects, character controller etc.

CO_SOFT_BODY 
CO_HF_FLUID 
CO_USER_TYPE 
CO_FEATHERSTONE_LINK 

Definition at line 143 of file btCollisionObject.h.

Function Documentation

◆ activate()

void activate ( bool  forceActivation = false) const

◆ BT_DECLARE_ALIGNED_ALLOCATOR()

BT_DECLARE_ALIGNED_ALLOCATOR ( )

◆ calculateSerializeBufferSize()

virtual int calculateSerializeBufferSize ( ) const
virtual

◆ checkCollideWith()

bool checkCollideWith ( const btCollisionObject co) const
inline

Definition at line 594 of file btCollisionObject.h.

References checkCollideWithOverride(), and m_checkCollideWith.

◆ checkCollideWithOverride()

virtual bool checkCollideWithOverride ( const btCollisionObject co) const
virtual

◆ forceActivationState()

void btCollisionObject::forceActivationState ( int  newState) const

Definition at line 67 of file btCollisionObject.cpp.

References m_activationState1.

◆ getActivationState()

SIMD_FORCE_INLINE int getActivationState ( ) const

◆ getAnisotropicFriction()

const btVector3& getAnisotropicFriction ( ) const

Definition at line 169 of file btCollisionObject.h.

References m_anisotropicFriction.

◆ getBroadphaseHandle()

SIMD_FORCE_INLINE const btBroadphaseProxy * getBroadphaseHandle ( )

◆ getCcdMotionThreshold()

btScalar getCcdMotionThreshold ( ) const

Definition at line 509 of file btCollisionObject.h.

References m_ccdMotionThreshold.

◆ getCcdSquareMotionThreshold()

btScalar getCcdSquareMotionThreshold ( ) const

◆ getCcdSweptSphereRadius()

btScalar getCcdSweptSphereRadius ( ) const

Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm::

Definition at line 498 of file btCollisionObject.h.

References m_ccdSweptSphereRadius.

◆ getCollisionFlags()

SIMD_FORCE_INLINE int getCollisionFlags ( ) const

Definition at line 487 of file btCollisionObject.h.

References m_collisionFlags.

◆ getCollisionShape()

SIMD_FORCE_INLINE btCollisionShape * getCollisionShape ( ) const

◆ getCompanionId()

SIMD_FORCE_INLINE int getCompanionId ( ) const

Definition at line 456 of file btCollisionObject.h.

References m_companionId.

◆ getContactDamping()

btScalar getContactDamping ( ) const

Definition at line 366 of file btCollisionObject.h.

References m_contactDamping.

◆ getContactProcessingThreshold()

btScalar getContactProcessingThreshold ( ) const

Definition at line 190 of file btCollisionObject.h.

References m_contactProcessingThreshold.

◆ getContactStiffness()

btScalar getContactStiffness ( ) const

Definition at line 361 of file btCollisionObject.h.

References m_contactStiffness.

◆ getCustomDebugColor()

bool getCustomDebugColor ( btVector3 colorRGB) const

◆ getDeactivationTime()

btScalar getDeactivationTime ( ) const

Definition at line 295 of file btCollisionObject.h.

References m_deactivationTime.

◆ getFriction()

btScalar getFriction ( ) const

Definition at line 323 of file btCollisionObject.h.

References m_friction.

◆ getHitFraction()

SIMD_FORCE_INLINE btScalar getHitFraction ( ) const

Definition at line 477 of file btCollisionObject.h.

References m_hitFraction.

◆ getInternalType()

int getInternalType ( ) const

reserved for Bullet internal usage

Definition at line 372 of file btCollisionObject.h.

References m_internalType.

◆ getInterpolationAngularVelocity()

const btVector3& getInterpolationAngularVelocity ( ) const

Definition at line 441 of file btCollisionObject.h.

References m_interpolationAngularVelocity.

◆ getInterpolationLinearVelocity()

const btVector3& getInterpolationLinearVelocity ( ) const

Definition at line 436 of file btCollisionObject.h.

References m_interpolationLinearVelocity.

◆ getInterpolationWorldTransform()

btTransform & getInterpolationWorldTransform ( ) const

Definition at line 408 of file btCollisionObject.h.

References m_interpolationWorldTransform.

◆ getIslandTag()

SIMD_FORCE_INLINE int getIslandTag ( ) const

◆ getNumObjectsWithoutCollision()

int getNumObjectsWithoutCollision ( ) const

◆ getObjectWithoutCollision()

const btCollisionObject* getObjectWithoutCollision ( int  index)

Definition at line 259 of file btCollisionObject.h.

References m_objectsWithoutCollisionCheck.

◆ getRestitution()

btScalar getRestitution ( ) const

Definition at line 314 of file btCollisionObject.h.

References m_restitution.

◆ getRollingFriction()

btScalar getRollingFriction ( ) const

Definition at line 333 of file btCollisionObject.h.

References m_rollingFriction.

◆ getSpinningFriction()

btScalar getSpinningFriction ( ) const

Definition at line 342 of file btCollisionObject.h.

References m_spinningFriction.

◆ getUpdateRevisionInternal()

int getUpdateRevisionInternal ( ) const

Definition at line 568 of file btCollisionObject.h.

References m_updateRevision.

◆ getUserIndex()

int getUserIndex ( ) const

Definition at line 531 of file btCollisionObject.h.

References m_userIndex.

◆ getUserIndex2()

int getUserIndex2 ( ) const

Definition at line 536 of file btCollisionObject.h.

References m_userIndex2.

◆ getUserIndex3()

int getUserIndex3 ( ) const

Definition at line 541 of file btCollisionObject.h.

References m_userIndex3.

◆ getUserPointer()

void* getUserPointer ( ) const

users can point to their objects, userPointer is not used by Bullet

Definition at line 526 of file btCollisionObject.h.

References m_userObjectPointer.

Referenced by rbFilterCallback::needBroadphaseCollision().

◆ getWorldArrayIndex()

SIMD_FORCE_INLINE int getWorldArrayIndex ( ) const

Definition at line 466 of file btCollisionObject.h.

References m_worldArrayIndex.

◆ getWorldTransform()

const btTransform & getWorldTransform ( )

◆ hasAnisotropicFriction()

bool hasAnisotropicFriction ( int  frictionMode = CF_ANISOTROPIC_FRICTION) const

Definition at line 179 of file btCollisionObject.h.

References m_hasAnisotropicFriction.

◆ hasContactResponse()

SIMD_FORCE_INLINE bool hasContactResponse ( ) const

Definition at line 210 of file btCollisionObject.h.

References CF_NO_CONTACT_RESPONSE, and m_collisionFlags.

◆ internalGetExtensionPointer()

void* internalGetExtensionPointer ( ) const

Avoid using this internal API call, the extension pointer is used by some Bullet extensions. If you need to store your own user pointer, use 'setUserPointer/getUserPointer' instead.

Definition at line 276 of file btCollisionObject.h.

References m_extensionPointer.

◆ internalSetExtensionPointer()

void internalSetExtensionPointer ( void pointer)

Avoid using this internal API call, the extension pointer is used by some Bullet extensions If you need to store your own user pointer, use 'setUserPointer/getUserPointer' instead.

Definition at line 282 of file btCollisionObject.h.

References m_extensionPointer.

◆ isActive()

SIMD_FORCE_INLINE bool isActive ( ) const

◆ isKinematicObject()

SIMD_FORCE_INLINE bool isKinematicObject ( ) const

Definition at line 200 of file btCollisionObject.h.

References CF_KINEMATIC_OBJECT, and m_collisionFlags.

Referenced by btRigidBody::setCenterOfMassTransform().

◆ isStaticObject()

SIMD_FORCE_INLINE bool isStaticObject ( ) const

Definition at line 195 of file btCollisionObject.h.

References CF_STATIC_OBJECT, and m_collisionFlags.

◆ isStaticOrKinematicObject()

SIMD_FORCE_INLINE bool isStaticOrKinematicObject ( ) const

◆ mergesSimulationIslands()

SIMD_FORCE_INLINE bool mergesSimulationIslands ( ) const

static objects, kinematic and object without contact response don't merge islands

Definition at line 163 of file btCollisionObject.h.

References CF_KINEMATIC_OBJECT, CF_NO_CONTACT_RESPONSE, CF_STATIC_OBJECT, and m_collisionFlags.

Referenced by btSimulationIslandManager::findUnions().

◆ removeCustomDebugColor()

void removeCustomDebugColor ( )

Definition at line 579 of file btCollisionObject.h.

References CF_HAS_CUSTOM_DEBUG_RENDERING_COLOR, and m_collisionFlags.

◆ serialize()

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

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

◆ serializeSingleObject()

virtual void serializeSingleObject ( class btSerializer serializer) const
virtual

◆ setActivationState()

void btCollisionObject::setActivationState ( int  newState) const

◆ setAnisotropicFriction()

void setAnisotropicFriction ( const btVector3 anisotropicFriction,
int  frictionMode = CF_ANISOTROPIC_FRICTION 
)

Definition at line 173 of file btCollisionObject.h.

References m_anisotropicFriction, and m_hasAnisotropicFriction.

◆ setBroadphaseHandle()

void setBroadphaseHandle ( btBroadphaseProxy handle)

Definition at line 403 of file btCollisionObject.h.

References m_broadphaseHandle.

◆ setCcdMotionThreshold()

void setCcdMotionThreshold ( btScalar  ccdMotionThreshold)

Don't do continuous collision detection if the motion (in one step) is less then m_ccdMotionThreshold.

Definition at line 520 of file btCollisionObject.h.

References m_ccdMotionThreshold.

◆ setCcdSweptSphereRadius()

void setCcdSweptSphereRadius ( btScalar  radius)

Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm::

Definition at line 504 of file btCollisionObject.h.

References m_ccdSweptSphereRadius.

◆ setCollisionFlags()

void setCollisionFlags ( int  flags)

Definition at line 492 of file btCollisionObject.h.

References m_collisionFlags.

◆ setCollisionShape()

virtual void setCollisionShape ( btCollisionShape collisionShape)
virtual

◆ setCompanionId()

void setCompanionId ( int  id)

Definition at line 461 of file btCollisionObject.h.

References id, and m_companionId.

◆ setContactProcessingThreshold()

void setContactProcessingThreshold ( btScalar  contactProcessingThreshold)

the constraint solver can discard solving contacts, if the distance is above this threshold. 0 by default. Note that using contacts with positive distance can improve stability. It increases, however, the chance of colliding with degerate contacts, such as 'interior' triangle edges

Definition at line 186 of file btCollisionObject.h.

References m_contactProcessingThreshold.

◆ setContactStiffnessAndDamping()

void setContactStiffnessAndDamping ( btScalar  stiffness,
btScalar  damping 
)

◆ setCustomDebugColor()

void setCustomDebugColor ( const btVector3 colorRGB)

◆ setDeactivationTime()

void setDeactivationTime ( btScalar  time)

Definition at line 291 of file btCollisionObject.h.

References m_deactivationTime, and time.

◆ setFriction()

void setFriction ( btScalar  frict)

Definition at line 318 of file btCollisionObject.h.

References m_friction, and m_updateRevision.

◆ setHitFraction()

void setHitFraction ( btScalar  hitFraction)

Definition at line 482 of file btCollisionObject.h.

References m_hitFraction.

◆ setIgnoreCollisionCheck()

void setIgnoreCollisionCheck ( const btCollisionObject co,
bool  ignoreCollisionCheck 
)

◆ setInterpolationAngularVelocity()

void setInterpolationAngularVelocity ( const btVector3 angvel)

Definition at line 430 of file btCollisionObject.h.

References m_interpolationAngularVelocity, and m_updateRevision.

◆ setInterpolationLinearVelocity()

void setInterpolationLinearVelocity ( const btVector3 linvel)

Definition at line 424 of file btCollisionObject.h.

References m_interpolationLinearVelocity, and m_updateRevision.

◆ setInterpolationWorldTransform()

void setInterpolationWorldTransform ( const btTransform trans)

Definition at line 418 of file btCollisionObject.h.

References m_interpolationWorldTransform, and m_updateRevision.

◆ setIslandTag()

void setIslandTag ( int  tag)

Definition at line 451 of file btCollisionObject.h.

References m_islandTag1.

◆ setRestitution()

void setRestitution ( btScalar  rest)

Definition at line 309 of file btCollisionObject.h.

References m_restitution, and m_updateRevision.

◆ setRollingFriction()

void setRollingFriction ( btScalar  frict)

Definition at line 328 of file btCollisionObject.h.

References m_rollingFriction, and m_updateRevision.

◆ setSpinningFriction()

void setSpinningFriction ( btScalar  frict)

Definition at line 337 of file btCollisionObject.h.

References m_spinningFriction, and m_updateRevision.

◆ setUserIndex()

void setUserIndex ( int  index)

users can point to their objects, userPointer is not used by Bullet

Definition at line 553 of file btCollisionObject.h.

References m_userIndex.

◆ setUserIndex2()

void setUserIndex2 ( int  index)

Definition at line 558 of file btCollisionObject.h.

References m_userIndex2.

◆ setUserIndex3()

void setUserIndex3 ( int  index)

Definition at line 563 of file btCollisionObject.h.

References m_userIndex3.

◆ setUserPointer()

void setUserPointer ( void userPointer)

users can point to their objects, userPointer is not used by Bullet

Definition at line 547 of file btCollisionObject.h.

References m_userObjectPointer.

◆ setWorldArrayIndex()

void setWorldArrayIndex ( int  ix)

Definition at line 472 of file btCollisionObject.h.

References m_worldArrayIndex.

◆ setWorldTransform()

void setWorldTransform ( const btTransform worldTrans)

Definition at line 387 of file btCollisionObject.h.

References m_updateRevision, and m_worldTransform.

◆ ~btCollisionObject()

btCollisionObject::~btCollisionObject ( )
virtual

Variable Documentation

◆ btCollisionObject

btCollisionObject
Initial value:
{
protected:
btTransform m_worldTransform
Definition: btSolverBody.h:107
btTransform
The btTransform class supports rigid transforms with only translation and rotation and no scaling/she...
Definition: btTransform.h:30

btCollisionObject can be used to manage collision detection objects. btCollisionObject maintains all information that is needed for a collision detection: Shape, Transform and AABB proxy. They can be added to the btCollisionWorld.

Definition at line 49 of file btCollisionObject.h.

Referenced by btSimulationIslandManagerMt::addBodiesToIslands(), btRigidBody::addConstraintRef(), btSimulationIslandManagerMt::addManifoldsToIslands(), btPairCachingGhostObject::addOverlappingObjectInternal(), btGhostPairCallback::addOverlappingPair(), btGetConstraintIslandId(), btGetConstraintIslandId1(), btGetConstraintIslandId2(), btSimulationIslandManagerMt::buildAndProcessIslands(), btSimulationIslandManager::buildIslands(), btSimulationIslandManagerMt::buildIslands(), btMultiBodyDynamicsWorld::calculateSimulationIslands(), btCompoundCollisionAlgorithm::calculateTimeOfImpact(), btSoftBodyConcaveCollisionAlgorithm::calculateTimeOfImpact(), btSoftBody::checkDeformableContact(), btSoftBody::checkDeformableFaceContact(), btSimpleDynamicsWorld::clearForces(), btCollisionWorldImporter::convertAllObjects(), convertContact(), convertMultiBodyContact(), btCollisionWorld::convexSweepTest(), btCollisionWorldImporter::createCollisionObject(), createPredictiveContactsInternal(), btCollisionWorld::debugDrawWorld(), btCollisionDispatcher::defaultNearCallback(), btSimulationIslandManager::findUnions(), btCollisionWorldImporter::getCollisionObjectByName(), getIslandId(), btSimpleDynamicsWorld::integrateTransforms(), integrateTransformsInternal(), internalCollectContactManifoldCachedInfo(), internalConvertBodies(), btClosestNotMeConvexResultCallback::needsCollision(), btCollisionWorld::objectQuerySingleInternal(), btSimpleDynamicsWorld::predictUnconstraintMotion(), btSingleRayCallback::process(), btSingleSweepCallback::process(), btSingleContactCallback::process(), btDeformableMultiBodyDynamicsWorld::btDeformableSingleRayCallback::process(), btSoftSingleRayCallback::process(), btSoftBodyConcaveCollisionAlgorithm::processCollision(), InplaceSolverIslandCallback::processConstraints(), MultiBodyInplaceSolverIslandCallback::processConstraints(), DeformableBodyInplaceSolverIslandCallback::processConstraints(), btSimulationIslandManager::processIslands(), btCollisionWorld::rayTestSingleInternal(), recoverFromPenetration(), btRigidBody::removeConstraintRef(), btPairCachingGhostObject::removeOverlappingObjectInternal(), btGhostPairCallback::removeOverlappingPair(), btCollisionWorld::serializeCollisionObjects(), btMultiBodyDynamicsWorld::serializeMultiBodies(), serializeRigidBodies(), btSoftMultiBodyDynamicsWorld::serializeSoftBodies(), btSoftRigidDynamicsWorld::serializeSoftBodies(), btSimpleDynamicsWorld::setGravity(), btDeformableContactProjection::solveSplitImpulse(), btSimulationIslandManager::storeIslandActivationState(), btSimpleDynamicsWorld::synchronizeMotionStates(), btDeformableContactProjection::update(), btCollisionWorld::updateAabbs(), btSimpleDynamicsWorld::updateAabbs(), btSimulationIslandManager::updateActivationState(), and btCollisionWorld::~btCollisionWorld().

◆ m_activationState1

int m_activationState1
mutable

◆ m_anisotropicFriction

btVector3 m_anisotropicFriction

Definition at line 62 of file btCollisionObject.h.

Referenced by getAnisotropicFriction(), and setAnisotropicFriction().

◆ m_broadphaseHandle

btBroadphaseProxy* m_broadphaseHandle

◆ m_ccdMotionThreshold

btScalar m_ccdMotionThreshold

Don't do continuous collision detection if the motion (in one step) is less then m_ccdMotionThreshold.

Definition at line 113 of file btCollisionObject.h.

Referenced by getCcdMotionThreshold(), getCcdSquareMotionThreshold(), and setCcdMotionThreshold().

◆ m_ccdSweptSphereRadius

btScalar m_ccdSweptSphereRadius

Swept sphere radius (0.0 by default), see btConvexConvexAlgorithm::

Definition at line 110 of file btCollisionObject.h.

Referenced by getCcdSweptSphereRadius(), and setCcdSweptSphereRadius().

◆ m_checkCollideWith

int m_checkCollideWith

If some object should have elaborate collision filtering by sub-classes.

Definition at line 116 of file btCollisionObject.h.

Referenced by btMultiBodyLinkCollider::btMultiBodyLinkCollider(), checkCollideWith(), and setIgnoreCollisionCheck().

◆ m_collisionFlags

int m_collisionFlags

◆ m_collisionShape

btCollisionShape* m_collisionShape

◆ m_companionId

int m_companionId

Definition at line 79 of file btCollisionObject.h.

Referenced by getCompanionId(), and setCompanionId().

◆ m_contactDamping

btScalar m_contactDamping

Definition at line 89 of file btCollisionObject.h.

Referenced by getContactDamping(), and setContactStiffnessAndDamping().

◆ m_contactProcessingThreshold

btScalar m_contactProcessingThreshold

◆ m_contactStiffness

btScalar m_contactStiffness

Definition at line 90 of file btCollisionObject.h.

Referenced by getContactStiffness(), and setContactStiffnessAndDamping().

◆ m_customDebugColorRGB

btVector3 m_customDebugColorRGB

Definition at line 123 of file btCollisionObject.h.

Referenced by getCustomDebugColor(), and setCustomDebugColor().

◆ m_deactivationTime

btScalar m_deactivationTime
mutable

◆ m_extensionPointer

void* m_extensionPointer

m_extensionPointer is used by some internal low-level Bullet extensions.

Definition at line 69 of file btCollisionObject.h.

Referenced by internalGetExtensionPointer(), and internalSetExtensionPointer().

◆ m_friction

btScalar m_friction

◆ m_hasAnisotropicFriction

int m_hasAnisotropicFriction

Definition at line 63 of file btCollisionObject.h.

Referenced by hasAnisotropicFriction(), and setAnisotropicFriction().

◆ m_hitFraction

btScalar m_hitFraction

time of impact calculation

Definition at line 107 of file btCollisionObject.h.

Referenced by btSoftBodyConcaveCollisionAlgorithm::calculateTimeOfImpact(), getHitFraction(), and setHitFraction().

◆ m_internalType

int m_internalType

m_internalType is reserved to distinguish Bullet's btCollisionObject, btRigidBody, btSoftBody, btGhostObject etc. do not assign your own m_internalType unless you write a new dynamics object class.

Definition at line 94 of file btCollisionObject.h.

Referenced by btGhostObject(), btMultiBodyLinkCollider::btMultiBodyLinkCollider(), getInternalType(), btSoftBody::initDefaults(), and btRigidBody::setupRigidBody().

◆ m_interpolationAngularVelocity

btVector3 m_interpolationAngularVelocity

◆ m_interpolationLinearVelocity

btVector3 m_interpolationLinearVelocity

◆ m_interpolationWorldTransform

btTransform m_interpolationWorldTransform

m_interpolationWorldTransform is used for CCD and interpolation it can be either previous or future (predicted) transform

Definition at line 56 of file btCollisionObject.h.

Referenced by getInterpolationWorldTransform(), btRigidBody::saveKinematicState(), btRigidBody::setCenterOfMassTransform(), setInterpolationWorldTransform(), and btRigidBody::setupRigidBody().

◆ m_islandTag1

int m_islandTag1

Definition at line 78 of file btCollisionObject.h.

Referenced by getIslandTag(), and setIslandTag().

◆ m_objectsWithoutCollisionCheck

btAlignedObjectArray<const btCollisionObject*> m_objectsWithoutCollisionCheck

◆ m_restitution

btScalar m_restitution

Definition at line 86 of file btCollisionObject.h.

Referenced by getRestitution(), setRestitution(), and btRigidBody::setupRigidBody().

◆ m_rollingFriction

btScalar m_rollingFriction

◆ m_rootCollisionShape

btCollisionShape* m_rootCollisionShape

m_rootCollisionShape is temporarily used to store the original collision shape The m_collisionShape might be temporarily replaced by a child collision shape during collision detection purposes If it is NULL, the m_collisionShape is not temporarily replaced.

Definition at line 74 of file btCollisionObject.h.

Referenced by setCollisionShape().

◆ m_spinningFriction

btScalar m_spinningFriction

◆ m_updateRevision

int m_updateRevision

◆ m_userIndex

int m_userIndex

Definition at line 102 of file btCollisionObject.h.

Referenced by getUserIndex(), and setUserIndex().

◆ m_userIndex2

int m_userIndex2

Definition at line 100 of file btCollisionObject.h.

Referenced by getUserIndex2(), and setUserIndex2().

◆ m_userIndex3

int m_userIndex3

Definition at line 104 of file btCollisionObject.h.

Referenced by getUserIndex3(), and setUserIndex3().

◆ m_userObjectPointer

void* m_userObjectPointer

users can point to their objects, m_userPointer is not used by Bullet, see setUserPointer/getUserPointer

Definition at line 98 of file btCollisionObject.h.

Referenced by getUserPointer(), and setUserPointer().

◆ m_worldArrayIndex

int m_worldArrayIndex

Definition at line 80 of file btCollisionObject.h.

Referenced by getWorldArrayIndex(), and setWorldArrayIndex().