My Project: dgBilateralConstraint Class Reference

My Project

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

`#include <dgBilateralConstraint.h>`

Inheritance diagram for dgBilateralConstraint:

## Public Member Functions

virtual void | SetDestructorCallback (OnConstraintDestroy destructor)
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
virtual void | ResetMaxDOF ()
dgInt32 | GetMaxDOF () const
void | SetUserData (void *userData)
void | SetCollidable (bool state)
virtual void | GetInfo (dgConstraintInfo *const info) const

## Protected Member Functions

| dgBilateralConstraint ()
virtual | ~dgBilateralConstraint ()
virtual void | Init ()
virtual void | Remove (dgWorld *world)
virtual bool | IsBilateral () const
virtual dgFloat32 | GetStiffness () const
virtual void | SetStiffness (dgFloat32 stiffness)
void | SetPivotAndPinDir (const dgVector &pivot, const dgVector &pinDirection)
void | SetPivotAndPinDir (const dgVector &pivot, const dgVector &pinDirection0, const dgVector &pinDirection1)
dgVector | CalculateGlobalMatrixAndAngle (dgMatrix &globalMatrix0, dgMatrix &globalMatrix1) const
void | CalculateMatrixOffset (const dgVector &pivot, const dgVector &dir, dgMatrix &matrix0, dgMatrix &matrix1)
virtual void | JointAccelerations (dgJointAccelerationDecriptor *const params)
virtual void | JointVelocityCorrection (dgJointAccelerationDecriptor *const params)
void | SetMotorAcceleration (dgInt32 index, dgFloat32 accelration, dgContraintDescritor &desc)
void | SetJacobianDerivative (dgInt32 index, dgContraintDescritor &desc, const dgFloat32 *const jacobianA, const dgFloat32 *const jacobianB, dgForceImpactPair *const jointForce)
void | CalculatePointDerivative (dgInt32 index, dgContraintDescritor &desc, const dgVector &normalGlobal, const dgPointParam &param, dgForceImpactPair *const jointForce)
void | CalculateAngularDerivative (dgInt32 index, dgContraintDescritor &desc, const dgVector &normalGlobal, dgFloat32 stiffness, dgFloat32 jointAngle, dgForceImpactPair *const jointForce)
dgFloat32 | CalculateSpringDamperAcceleration (dgInt32 index, const dgContraintDescritor &desc, dgFloat32 jointAngle, const dgVector &p0Global, const dgVector &p1Global, dgFloat32 springK, dgFloat32 springD)
void | SetMaxContactsForExactSolver (bool mode, dgInt32 MaxCount)
Protected Member Functions inherited from dgConstraint
| dgConstraint ()
virtual | ~dgConstraint ()
virtual dgUnsigned32 | JacobianDerivative (dgContraintDescritor &params)=0
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

dgMatrix | m_localMatrix0
dgMatrix | m_localMatrix1
dgFloat32 | m_stiffness
dgForceImpactPair | m_jointForce [DG_BILATERAL_CONTRAINT_DOF]
dgInt32 | m_rowIsMotor [DG_BILATERAL_CONTRAINT_DOF]
dgFloat32 | m_motorAcceleration [DG_BILATERAL_CONTRAINT_DOF]
dgInt32 | m_useExactSolverContactLimit
OnConstraintDestroy | m_destructor
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 | dgWorldDynamicUpdate

## 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

## § dgBilateralConstraint()

dgBilateralConstraint::dgBilateralConstraint | ( |  | ) |

protected

## § ~dgBilateralConstraint()

dgBilateralConstraint::~dgBilateralConstraint | ( |  | ) |

protectedvirtual

## Member Function Documentation

## § CalculateAngularDerivative()

void dgBilateralConstraint::CalculateAngularDerivative | ( | dgInt32 | index,
|  | dgContraintDescritor & | desc,
|  | const dgVector & | normalGlobal,
|  | dgFloat32 | stiffness,
|  | dgFloat32 | jointAngle,
|  | dgForceImpactPair *const | jointForce
| ) |  |

protected

## § CalculateGlobalMatrixAndAngle()

dgVector dgBilateralConstraint::CalculateGlobalMatrixAndAngle | ( | dgMatrix & | globalMatrix0,
|  | dgMatrix & | globalMatrix1
| ) |  | const

protected

## § CalculateMatrixOffset()

void dgBilateralConstraint::CalculateMatrixOffset | ( | const dgVector & | pivot,
|  | const dgVector & | dir,
|  | dgMatrix & | matrix0,
|  | dgMatrix & | matrix1
| ) |  |

protected

## § CalculatePointDerivative()

void dgBilateralConstraint::CalculatePointDerivative | ( | dgInt32 | index,
|  | dgContraintDescritor & | desc,
|  | const dgVector & | normalGlobal,
|  | const dgPointParam & | param,
|  | dgForceImpactPair *const | jointForce
| ) |  |

protected

## § CalculateSpringDamperAcceleration()

dgFloat32 dgBilateralConstraint::CalculateSpringDamperAcceleration | ( | dgInt32 | index,
|  | const dgContraintDescritor & | desc,
|  | dgFloat32 | jointAngle,
|  | const dgVector & | p0Global,
|  | const dgVector & | p1Global,
|  | dgFloat32 | springK,
|  | dgFloat32 | springD
| ) |  |

protected

## § GetStiffness()

dgFloat32 dgBilateralConstraint::GetStiffness | ( |  | ) | const

protectedvirtual

Reimplemented from dgConstraint.

## § Init()

virtual void dgBilateralConstraint::Init | ( |  | ) |

inlineprotectedvirtual

## § IsBilateral()

bool dgBilateralConstraint::IsBilateral | ( |  | ) | const

protectedvirtual

Reimplemented from dgConstraint.

Reimplemented in dgUpVectorConstraint.

## § JointAccelerations()

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

protectedvirtual

Implements dgConstraint.

## § JointVelocityCorrection()

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

protectedvirtual

Implements dgConstraint.

## § Remove()

virtual void dgBilateralConstraint::Remove | ( | dgWorld * | world | ) |

inlineprotectedvirtual

## § SetDestructorCallback()

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

virtual

Implements dgConstraint.

## § SetJacobianDerivative()

void dgBilateralConstraint::SetJacobianDerivative | ( | dgInt32 | index,
|  | dgContraintDescritor & | desc,
|  | const dgFloat32 *const | jacobianA,
|  | const dgFloat32 *const | jacobianB,
|  | dgForceImpactPair *const | jointForce
| ) |  |

protected

## § SetMaxContactsForExactSolver()

void dgBilateralConstraint::SetMaxContactsForExactSolver | ( | bool | mode,
|  | dgInt32 | MaxCount
| ) |  |

protected

## § SetMotorAcceleration()

void dgBilateralConstraint::SetMotorAcceleration | ( | dgInt32 | index,
|  | dgFloat32 | accelration,
|  | dgContraintDescritor & | desc
| ) |  |

protected

## § SetPivotAndPinDir() [1/2]

void dgBilateralConstraint::SetPivotAndPinDir | ( | const dgVector & | pivot,
|  | const dgVector & | pinDirection
| ) |  |

protected

## § SetPivotAndPinDir() [2/2]

void dgBilateralConstraint::SetPivotAndPinDir | ( | const dgVector & | pivot,
|  | const dgVector & | pinDirection0,
|  | const dgVector & | pinDirection1
| ) |  |

protected

## § SetStiffness()

void dgBilateralConstraint::SetStiffness | ( | dgFloat32 | stiffness | ) |

protectedvirtual

Reimplemented from dgConstraint.

## Friends And Related Function Documentation

## § dgWorldDynamicUpdate

friend class dgWorldDynamicUpdate

friend

## Member Data Documentation

## § m_destructor

OnConstraintDestroy dgBilateralConstraint::m_destructor

protected

## § m_jointForce

dgForceImpactPair dgBilateralConstraint::m_jointForce[DG_BILATERAL_CONTRAINT_DOF]

protected

## § m_localMatrix0

dgMatrix dgBilateralConstraint::m_localMatrix0

protected

## § m_localMatrix1

dgMatrix dgBilateralConstraint::m_localMatrix1

protected

## § m_motorAcceleration

dgFloat32 dgBilateralConstraint::m_motorAcceleration[DG_BILATERAL_CONTRAINT_DOF]

protected

## § m_rowIsMotor

dgInt32 dgBilateralConstraint::m_rowIsMotor[DG_BILATERAL_CONTRAINT_DOF]

protected

## § m_stiffness

dgFloat32 dgBilateralConstraint::m_stiffness

protected

## § m_useExactSolverContactLimit

dgInt32 dgBilateralConstraint::m_useExactSolverContactLimit

protected

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

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