My Project: dgContact Class Reference

My Project

Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
dgContact Class Reference

`#include <dgContact.h>`

Inheritance diagram for dgContact:

## Public Member Functions

dgFloat32 | GetClosestDistance () const
dgFloat32 | GetTimeOfImpact () const
void | SetTimeOfImpact (dgFloat32 timetoImpact)
const dgContactMaterial * | GetMaterial () const
Public Member Functions inherited from dgConstraint
dgUnsigned32 | GetId () const
dgBody * | GetBody0 () const
dgBody * | GetBody1 () const
void | SetBodies (dgBody *const body0, dgBody *const body1)
dgBodyMasterListRow::dgListNode * | GetLink0 () const
dgBodyMasterListRow::dgListNode * | GetLink1 () const
void * | GetUserData () const
bool | IsActive () const
bool | IsCollidable () const
dgInt32 | GetMaxDOF () const
void | SetUserData (void *userData)
void | SetCollidable (bool state)
virtual dgFloat32 | GetStiffness () const
virtual void | SetStiffness (dgFloat32 stiffness)
Public Member Functions inherited from dgList< dgContactMaterial >
| dgList (dgMemoryAllocator *const allocator)
virtual | ~dgList ()
dgMemoryAllocator * | GetAllocator () const
void | SetAllocator (dgMemoryAllocator *const allocator)
| operator dgInt32 () const
dgInt32 | GetCount () const
dgListNode * | GetLast () const
dgListNode * | GetFirst () const
dgListNode * | Append ()
dgListNode * | Append (dgListNode *const node)
dgListNode * | Append (const dgContactMaterial &element)
dgListNode * | Addtop ()
dgListNode * | Addtop (dgListNode *const node)
dgListNode * | Addtop (const dgContactMaterial &element)
void | RotateToEnd (dgListNode *const node)
void | RotateToBegin (dgListNode *const node)
void | InsertAfter (dgListNode *const root, dgListNode *const node)
void | InsertBefore (dgListNode *const root, dgListNode *const node)
dgListNode * | Find (const dgContactMaterial &element) const
dgListNode * | GetNodeFromInfo (dgContactMaterial &m_info) const
void | Remove (dgListNode *const node)
void | Remove (const dgContactMaterial &element)
void | RemoveAll ()
void | Merge (dgList< dgContactMaterial > &list)
void | Unlink (dgListNode *const node)
bool | SanityCheck () const

## Protected Member Functions

| dgContact (dgWorld *const world, const dgContactMaterial *const material)
virtual | ~dgContact ()
virtual void | ResetMaxDOF ()
virtual void | GetInfo (dgConstraintInfo *const info) const
virtual dgUnsigned32 | JacobianDerivative (dgContraintDescritor &params)
virtual void | JointAccelerations (dgJointAccelerationDecriptor *const params)
virtual void | JointVelocityCorrection (dgJointAccelerationDecriptor *const params)
virtual bool | IsDeformable () const
virtual void | SetDestructorCallback (OnConstraintDestroy destructor)
void | JacobianContactDerivative (dgContraintDescritor &params, const dgContactMaterial &contact, dgInt32 normalIndex, dgInt32 &frictionIndex)
void | CalculatePointDerivative (dgInt32 index, dgContraintDescritor &desc, const dgVector &dir, const dgPointParam &param) const
void | AppendToActiveList ()
void | SwapBodies ()
Protected Member Functions inherited from dgConstraint
| dgConstraint ()
virtual | ~dgConstraint ()
virtual bool | IsBilateral () const
void | SetUpdateFeedbackFunction (ConstraintsForceFeeback function)
void | InitPointParam (dgPointParam &param, dgFloat32 stiffness, const dgVector &p0Global, const dgVector &p1Global) const
void | InitInfo (dgConstraintInfo *const info) const

## Protected Attributes

dgVector | m_positAcc
dgQuaternion | m_rotationAcc
dgVector | m_separtingVector
dgFloat32 | m_closestDistance
dgFloat32 | m_timeOfImpact
dgWorld * | m_world
const dgContactMaterial * | m_material
dgActiveContacts::dgListNode * | m_contactNode
dgUnsigned32 | m_broadphaseLru
dgUnsigned32 | m_isNewContact: 1
Protected Attributes inherited from dgConstraint
void * | m_userData
dgBody * | m_body0
dgBody * | m_body1
dgBodyMasterListRow::dgListNode * | m_link0
dgBodyMasterListRow::dgListNode * | m_link1
ConstraintsForceFeeback | m_updaFeedbackCallback
dgUnsigned32 | m_dynamicsLru
dgUnsigned32 | m_index
dgUnsigned32 | m_maxDOF: 6
dgUnsigned32 | m_constId: 6
dgUnsigned32 | m_enableCollision: 1
dgUnsigned32 | m_useExactSolver: 1
dgUnsigned32 | m_solverActive: 1
dgUnsigned32 | m_contactActive: 1

## Friends

class | dgBody
class | dgWorld
class | dgBroadPhase
class | dgContactSolver
class | dgActiveContacts
class | dgCollisionScene
class | dgCollisionConvex
class | dgCollisionCompound
class | dgWorldDynamicUpdate
class | dgSolverWorlkerThreads
class | dgCollisionConvexPolygon
class | dgCollidingPairCollector

## Additional Inherited Members

Public Types inherited from dgConstraint
enum | dgConstraintID { m_ballConstraint, m_hingeConstraint, m_sliderConstraint, m_contactConstraint, m_upVectorConstraint, m_universalConstraint, m_corkScrewConstraint, m_unknownConstraint }

## Constructor & Destructor Documentation

## § dgContact()

dgContact::dgContact | ( | dgWorld *const | world,
|  | const dgContactMaterial *const | material
| ) |  |

protected

## § ~dgContact()

dgContact::~dgContact | ( |  | ) |

protectedvirtual

## Member Function Documentation

## § AppendToActiveList()

void dgContact::AppendToActiveList | ( |  | ) |

protected

## § CalculatePointDerivative()

void dgContact::CalculatePointDerivative | ( | dgInt32 | index,
|  | dgContraintDescritor & | desc,
|  | const dgVector & | dir,
|  | const dgPointParam & | param
| ) |  | const

protected

## § GetClosestDistance()

dgFloat32 dgContact::GetClosestDistance | ( |  | ) | const

inline

## § GetInfo()

void dgContact::GetInfo | ( | dgConstraintInfo *const | info | ) | const

protectedvirtual

Reimplemented from dgConstraint.

Reimplemented in dgDeformableContact.

## § GetMaterial()

const dgContactMaterial * dgContact::GetMaterial | ( |  | ) | const

inline

## § GetTimeOfImpact()

dgFloat32 dgContact::GetTimeOfImpact | ( |  | ) | const

inline

## § IsDeformable()

bool dgContact::IsDeformable | ( |  | ) | const

inlineprotectedvirtual

Reimplemented in dgDeformableContact.

## § JacobianContactDerivative()

void dgContact::JacobianContactDerivative | ( | dgContraintDescritor & | params,
|  | const dgContactMaterial & | contact,
|  | dgInt32 | normalIndex,
|  | dgInt32 & | frictionIndex
| ) |  |

protected

## § JacobianDerivative()

dgUnsigned32 dgContact::JacobianDerivative | ( | dgContraintDescritor & | params | ) |

protectedvirtual

Implements dgConstraint.

## § JointAccelerations()

void dgContact::JointAccelerations | ( | dgJointAccelerationDecriptor *const | params | ) |

protectedvirtual

Implements dgConstraint.

## § JointVelocityCorrection()

void dgContact::JointVelocityCorrection | ( | dgJointAccelerationDecriptor *const | params | ) |

protectedvirtual

Implements dgConstraint.

## § ResetMaxDOF()

void dgContact::ResetMaxDOF | ( |  | ) |

inlineprotectedvirtual

Reimplemented from dgConstraint.

## § SetDestructorCallback()

void dgContact::SetDestructorCallback | ( | OnConstraintDestroy | destructor | ) |

inlineprotectedvirtual

Implements dgConstraint.

## § SetTimeOfImpact()

void dgContact::SetTimeOfImpact | ( | dgFloat32 | timetoImpact | ) |

inline

## § SwapBodies()

void dgContact::SwapBodies | ( |  | ) |

protected

## Friends And Related Function Documentation

## § dgActiveContacts

friend class dgActiveContacts

friend

## § dgBody

friend class dgBody

friend

## § dgBroadPhase

friend class dgBroadPhase

friend

## § dgCollidingPairCollector

friend class dgCollidingPairCollector

friend

## § dgCollisionCompound

friend class dgCollisionCompound

friend

## § dgCollisionConvex

friend class dgCollisionConvex

friend

## § dgCollisionConvexPolygon

friend class dgCollisionConvexPolygon

friend

## § dgCollisionScene

friend class dgCollisionScene

friend

## § dgContactSolver

friend class dgContactSolver

friend

## § dgSolverWorlkerThreads

friend class dgSolverWorlkerThreads

friend

## § dgWorld

friend class dgWorld

friend

## § dgWorldDynamicUpdate

friend class dgWorldDynamicUpdate

friend

## Member Data Documentation

## § m_broadphaseLru

dgUnsigned32 dgContact::m_broadphaseLru

protected

## § m_closestDistance

dgFloat32 dgContact::m_closestDistance

protected

## § m_contactNode

dgActiveContacts::dgListNode* dgContact::m_contactNode

protected

## § m_isNewContact

dgUnsigned32 dgContact::m_isNewContact

protected

## § m_material

const dgContactMaterial* dgContact::m_material

protected

## § m_positAcc

dgVector dgContact::m_positAcc

protected

## § m_rotationAcc

dgQuaternion dgContact::m_rotationAcc

protected

## § m_separtingVector

dgVector dgContact::m_separtingVector

protected

## § m_timeOfImpact

dgFloat32 dgContact::m_timeOfImpact

protected

## § m_world

dgWorld* dgContact::m_world

protected

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

- dynamics.mod/NewtonDynamics/source/physics/dgContact.h
- dynamics.mod/NewtonDynamics/source/physics/dgContact.cpp