#include <physics.h>
Collaboration diagram for ContactNode:
Public Types | |
enum | CONTACTMODE { COLLISION, CONTACT, SHOCKPROPAGATION } |
Public Member Functions | |
ContactNode (RigidBody *pkBody) | |
virtual | ~ContactNode () |
bool | Solve (CONTACTMODE eMode, unsigned int uiPass, unsigned int uiNumPasses) |
void | ResetVisited () |
void | AddContact (ContactNode *pkParent, ContactSet *pkSet) |
void | Clear () |
Public Attributes | |
RigidBody * | m_pkBody |
std::vector< ContactNode * > | m_vpkParents |
std::vector< ContactSet * > | m_vpkContactSets |
std::vector< Matrix * > | m_vpkCollisionMatrix |
std::vector< Matrix * > | m_vpkInvCollisionMatrix |
std::vector< ContactNode * > | m_vpkChildren |
bool | m_bVisited |
bool | m_bFree |
|
Contact resolution mode |
|
|
|
|
|
Sweep the contact DAG and solve contacts
|
|
Reset visited flag |
|
Add a contact
|
|
Clear all data |
|
Rigid body |
|
Parent nodes for each contact |
|
Contact sets for each parent contact |
|
Collision matrices for each parent contact's points |
|
Inverse collision matrices for each parent contact's points |
|
Children |
|
Visited flag |
|
Free (no parent node contact) |