7 #include "BlRigidBody.h"
8 #include "BlSimulator.h"
17 BlAnimatCollisionDispatcher::BlAnimatCollisionDispatcher(btCollisionConfiguration* collisionConfiguration,
BlSimulator *lpSim) :
24 BlAnimatCollisionDispatcher::~BlAnimatCollisionDispatcher()
32 {
Std_TraceMsg(0,
"Caught Error in desctructor of BlAnimatCollisionDispatcher\r\n",
"", -1,
false,
true);}
35 bool BlAnimatCollisionDispatcher::needsCollision(
const btCollisionObject* body0,
const btCollisionObject* body1)
41 if (!(m_dispatcherFlags & btCollisionDispatcher::CD_STATIC_STATIC_REPORTED))
44 if (body0->isStaticOrKinematicObject() && body1->isStaticOrKinematicObject())
46 m_dispatcherFlags |= btCollisionDispatcher::CD_STATIC_STATIC_REPORTED;
47 printf(
"warning btCollisionDispatcher::needsCollision: static-static collision!\n");
52 if ((!body0->isActive()) && (!body1->isActive()))
54 else if (!body0->checkCollideWith(body1))
60 if(lpData1 && lpData2)
66 if(lpData1->m_bExclusionProcessing && lpData1->m_lpBody && lpData2->m_lpBody && !lpData1->m_lpBody->NeedCollision(lpData2->m_lpBody))
69 if(lpData2->m_bExclusionProcessing && lpData2->m_lpBody && lpData1->m_lpBody && !lpData2->m_lpBody->NeedCollision(lpData1->m_lpBody))
Classes for implementing the cm-labs vortex physics engine for AnimatLab.
void Std_TraceMsg(const int iLevel, std::string strMessage, std::string strSourceFile, int iSourceLine, bool bLogToFile, bool bPrintHeader)
Traces a message to the debugger window.