Bullet Collision Detection & Physics Library
btMultiBodyGearConstraint Class Reference

This file was written by Erwin Coumans. More...

#include <btMultiBodyGearConstraint.h>

Inheritance diagram for btMultiBodyGearConstraint:
Collaboration diagram for btMultiBodyGearConstraint:

Public Member Functions

 btMultiBodyGearConstraint (btMultiBody *bodyA, int linkA, btMultiBody *bodyB, int linkB, const btVector3 &pivotInA, const btVector3 &pivotInB, const btMatrix3x3 &frameInA, const btMatrix3x3 &frameInB)
 This file was written by Erwin Coumans.
virtual ~btMultiBodyGearConstraint ()
virtual void finalizeMultiDof ()
virtual int getIslandIdA () const
virtual int getIslandIdB () const
virtual void createConstraintRows (btMultiBodyConstraintArray &constraintRows, btMultiBodyJacobianData &data, const btContactSolverInfo &infoGlobal)
const btVector3 & getPivotInA () const
void setPivotInA (const btVector3 &pivotInA)
const btVector3 & getPivotInB () const
virtual void setPivotInB (const btVector3 &pivotInB)
const btMatrix3x3 & getFrameInA () const
void setFrameInA (const btMatrix3x3 &frameInA)
const btMatrix3x3 & getFrameInB () const
virtual void setFrameInB (const btMatrix3x3 &frameInB)
virtual void debugDraw (class btIDebugDraw *drawer)
virtual void setGearRatio (btScalar gearRatio)
virtual void setGearAuxLink (int gearAuxLink)
virtual void setRelativePositionTarget (btScalar relPosTarget)
virtual void setErp (btScalar erp)
Public Member Functions inherited from btMultiBodyConstraint
 BT_DECLARE_ALIGNED_ALLOCATOR ()
 btMultiBodyConstraint (btMultiBody *bodyA, btMultiBody *bodyB, int linkA, int linkB, int numRows, bool isUnilateral)
virtual ~btMultiBodyConstraint ()
void updateJacobianSizes ()
void allocateJacobiansMultiDof ()
int getNumRows () const
btMultiBody * getMultiBodyA ()
btMultiBody * getMultiBodyB ()
void internalSetAppliedImpulse (int dof, btScalar appliedImpulse)
btScalar getAppliedImpulse (int dof)
btScalar getPosition (int row) const
void setPosition (int row, btScalar pos)
bool isUnilateral () const
btScalar * jacobianA (int row)
const btScalar * jacobianA (int row) const
btScalar * jacobianB (int row)
const btScalar * jacobianB (int row) const
btScalar getMaxAppliedImpulse () const
void setMaxAppliedImpulse (btScalar maxImp)

Protected Attributes

btRigidBody * m_rigidBodyA
btRigidBody * m_rigidBodyB
btVector3 m_pivotInA
btVector3 m_pivotInB
btMatrix3x3 m_frameInA
btMatrix3x3 m_frameInB
btScalar m_gearRatio
int m_gearAuxLink
btScalar m_erp
btScalar m_relativePositionTarget
Protected Attributes inherited from btMultiBodyConstraint
btMultiBody * m_bodyA
btMultiBody * m_bodyB
int m_linkA
int m_linkB
int m_numRows
int m_jacSizeA
int m_jacSizeBoth
int m_posOffset
bool m_isUnilateral
int m_numDofsFinalized
btScalar m_maxAppliedImpulse
btAlignedObjectArray< btScalar > m_data

Additional Inherited Members

Protected Member Functions inherited from btMultiBodyConstraint
void applyDeltaVee (btMultiBodyJacobianData &data, btScalar *delta_vee, btScalar impulse, int velocityIndex, int ndof)
btScalar fillMultiBodyConstraint (btMultiBodySolverConstraint &solverConstraint, btMultiBodyJacobianData &data, btScalar *jacOrgA, btScalar *jacOrgB, const btVector3 &constraintNormalAng, const btVector3 &constraintNormalLin, const btVector3 &posAworld, const btVector3 &posBworld, btScalar posError, const btContactSolverInfo &infoGlobal, btScalar lowerLimit, btScalar upperLimit, bool angConstraint=false, btScalar relaxation=1.f, bool isFriction=false, btScalar desiredVelocity=0, btScalar cfmSlip=0)

Detailed Description

This file was written by Erwin Coumans.

Definition at line 23 of file btMultiBodyGearConstraint.h.

Constructor & Destructor Documentation

◆ btMultiBodyGearConstraint()

btMultiBodyGearConstraint::btMultiBodyGearConstraint ( btMultiBody * bodyA,
int linkA,
btMultiBody * bodyB,
int linkB,
const btVector3 & pivotInA,
const btVector3 & pivotInB,
const btMatrix3x3 & frameInA,
const btMatrix3x3 & frameInB )

This file was written by Erwin Coumans.

Definition at line 23 of file btMultiBodyGearConstraint.cpp.

◆ ~btMultiBodyGearConstraint()

btMultiBodyGearConstraint::~btMultiBodyGearConstraint ( )
virtual

Definition at line 41 of file btMultiBodyGearConstraint.cpp.

Member Function Documentation

◆ createConstraintRows()

void btMultiBodyGearConstraint::createConstraintRows ( btMultiBodyConstraintArray & constraintRows,
btMultiBodyJacobianData & data,
const btContactSolverInfo & infoGlobal )
virtual

Implements btMultiBodyConstraint.

Definition at line 82 of file btMultiBodyGearConstraint.cpp.

◆ debugDraw()

virtual void btMultiBodyGearConstraint::debugDraw ( class btIDebugDraw * drawer)
inlinevirtual

Implements btMultiBodyConstraint.

Definition at line 94 of file btMultiBodyGearConstraint.h.

◆ finalizeMultiDof()

void btMultiBodyGearConstraint::finalizeMultiDof ( )
virtual

Implements btMultiBodyConstraint.

Definition at line 33 of file btMultiBodyGearConstraint.cpp.

◆ getFrameInA()

const btMatrix3x3 & btMultiBodyGearConstraint::getFrameInA ( ) const
inline

Definition at line 74 of file btMultiBodyGearConstraint.h.

◆ getFrameInB()

const btMatrix3x3 & btMultiBodyGearConstraint::getFrameInB ( ) const
inline

Definition at line 84 of file btMultiBodyGearConstraint.h.

◆ getIslandIdA()

int btMultiBodyGearConstraint::getIslandIdA ( ) const
virtual

Implements btMultiBodyConstraint.

Definition at line 46 of file btMultiBodyGearConstraint.cpp.

◆ getIslandIdB()

int btMultiBodyGearConstraint::getIslandIdB ( ) const
virtual

Implements btMultiBodyConstraint.

Definition at line 63 of file btMultiBodyGearConstraint.cpp.

◆ getPivotInA()

const btVector3 & btMultiBodyGearConstraint::getPivotInA ( ) const
inline

Definition at line 54 of file btMultiBodyGearConstraint.h.

◆ getPivotInB()

const btVector3 & btMultiBodyGearConstraint::getPivotInB ( ) const
inline

Definition at line 64 of file btMultiBodyGearConstraint.h.

◆ setErp()

virtual void btMultiBodyGearConstraint::setErp ( btScalar erp)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 111 of file btMultiBodyGearConstraint.h.

◆ setFrameInA()

void btMultiBodyGearConstraint::setFrameInA ( const btMatrix3x3 & frameInA)
inline

Definition at line 79 of file btMultiBodyGearConstraint.h.

◆ setFrameInB()

virtual void btMultiBodyGearConstraint::setFrameInB ( const btMatrix3x3 & frameInB)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 89 of file btMultiBodyGearConstraint.h.

◆ setGearAuxLink()

virtual void btMultiBodyGearConstraint::setGearAuxLink ( int gearAuxLink)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 103 of file btMultiBodyGearConstraint.h.

◆ setGearRatio()

virtual void btMultiBodyGearConstraint::setGearRatio ( btScalar gearRatio)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 99 of file btMultiBodyGearConstraint.h.

◆ setPivotInA()

void btMultiBodyGearConstraint::setPivotInA ( const btVector3 & pivotInA)
inline

Definition at line 59 of file btMultiBodyGearConstraint.h.

◆ setPivotInB()

virtual void btMultiBodyGearConstraint::setPivotInB ( const btVector3 & pivotInB)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 69 of file btMultiBodyGearConstraint.h.

◆ setRelativePositionTarget()

virtual void btMultiBodyGearConstraint::setRelativePositionTarget ( btScalar relPosTarget)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 107 of file btMultiBodyGearConstraint.h.

Member Data Documentation

◆ m_erp

btScalar btMultiBodyGearConstraint::m_erp
protected

Definition at line 35 of file btMultiBodyGearConstraint.h.

◆ m_frameInA

btMatrix3x3 btMultiBodyGearConstraint::m_frameInA
protected

Definition at line 31 of file btMultiBodyGearConstraint.h.

◆ m_frameInB

btMatrix3x3 btMultiBodyGearConstraint::m_frameInB
protected

Definition at line 32 of file btMultiBodyGearConstraint.h.

◆ m_gearAuxLink

int btMultiBodyGearConstraint::m_gearAuxLink
protected

Definition at line 34 of file btMultiBodyGearConstraint.h.

◆ m_gearRatio

btScalar btMultiBodyGearConstraint::m_gearRatio
protected

Definition at line 33 of file btMultiBodyGearConstraint.h.

◆ m_pivotInA

btVector3 btMultiBodyGearConstraint::m_pivotInA
protected

Definition at line 29 of file btMultiBodyGearConstraint.h.

◆ m_pivotInB

btVector3 btMultiBodyGearConstraint::m_pivotInB
protected

Definition at line 30 of file btMultiBodyGearConstraint.h.

◆ m_relativePositionTarget

btScalar btMultiBodyGearConstraint::m_relativePositionTarget
protected

Definition at line 36 of file btMultiBodyGearConstraint.h.

◆ m_rigidBodyA

btRigidBody* btMultiBodyGearConstraint::m_rigidBodyA
protected

Definition at line 27 of file btMultiBodyGearConstraint.h.

◆ m_rigidBodyB

btRigidBody* btMultiBodyGearConstraint::m_rigidBodyB
protected

Definition at line 28 of file btMultiBodyGearConstraint.h.


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