Bullet Collision Detection & Physics Library
Public Member Functions | Protected Attributes | List of all members
btMultiBodyFixedConstraint Class Reference

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

#include <btMultiBodyFixedConstraint.h>

Inheritance diagram for btMultiBodyFixedConstraint:
Inheritance graph
[legend]
Collaboration diagram for btMultiBodyFixedConstraint:
Collaboration graph
[legend]

Public Member Functions

 btMultiBodyFixedConstraint (btMultiBody *body, int link, btRigidBody *bodyB, const btVector3 &pivotInA, const btVector3 &pivotInB, const btMatrix3x3 &frameInA, const btMatrix3x3 &frameInB)
 
 btMultiBodyFixedConstraint (btMultiBody *bodyA, int linkA, btMultiBody *bodyB, int linkB, const btVector3 &pivotInA, const btVector3 &pivotInB, const btMatrix3x3 &frameInA, const btMatrix3x3 &frameInB)
 
virtual ~btMultiBodyFixedConstraint ()
 
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)
 
- 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 ()
 
virtual void setFrameInB (const btMatrix3x3 &frameInB)
 
virtual void setPivotInB (const btVector3 &pivotInB)
 
virtual void finalizeMultiDof ()=0
 
virtual int getIslandIdA () const =0
 
virtual int getIslandIdB () const =0
 
virtual void createConstraintRows (btMultiBodyConstraintArray &constraintRows, btMultiBodyJacobianData &data, const btContactSolverInfo &infoGlobal)=0
 
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)
 
virtual void debugDraw (class btIDebugDraw *drawer)=0
 
virtual void setGearRatio (btScalar ratio)
 
virtual void setGearAuxLink (int gearAuxLink)
 
virtual void setRelativePositionTarget (btScalar relPosTarget)
 
virtual void setErp (btScalar erp)
 

Protected Attributes

btRigidBody * m_rigidBodyA
 
btRigidBody * m_rigidBodyB
 
btVector3 m_pivotInA
 
btVector3 m_pivotInB
 
btMatrix3x3 m_frameInA
 
btMatrix3x3 m_frameInB
 
- 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 btMultiBodyFixedConstraint.h.

Constructor & Destructor Documentation

◆ btMultiBodyFixedConstraint() [1/2]

btMultiBodyFixedConstraint::btMultiBodyFixedConstraint ( btMultiBody *  body,
int  link,
btRigidBody *  bodyB,
const btVector3 &  pivotInA,
const btVector3 &  pivotInB,
const btMatrix3x3 &  frameInA,
const btMatrix3x3 &  frameInB 
)

Definition at line 26 of file btMultiBodyFixedConstraint.cpp.

◆ btMultiBodyFixedConstraint() [2/2]

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

Definition at line 38 of file btMultiBodyFixedConstraint.cpp.

◆ ~btMultiBodyFixedConstraint()

btMultiBodyFixedConstraint::~btMultiBodyFixedConstraint ( )
virtual

Definition at line 56 of file btMultiBodyFixedConstraint.cpp.

Member Function Documentation

◆ createConstraintRows()

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

Implements btMultiBodyConstraint.

Definition at line 100 of file btMultiBodyFixedConstraint.cpp.

◆ debugDraw()

void btMultiBodyFixedConstraint::debugDraw ( class btIDebugDraw *  drawer)
virtual

Implements btMultiBodyConstraint.

Definition at line 181 of file btMultiBodyFixedConstraint.cpp.

◆ finalizeMultiDof()

void btMultiBodyFixedConstraint::finalizeMultiDof ( )
virtual

Implements btMultiBodyConstraint.

Definition at line 50 of file btMultiBodyFixedConstraint.cpp.

◆ getFrameInA()

const btMatrix3x3 & btMultiBodyFixedConstraint::getFrameInA ( ) const
inline

Definition at line 70 of file btMultiBodyFixedConstraint.h.

◆ getFrameInB()

const btMatrix3x3 & btMultiBodyFixedConstraint::getFrameInB ( ) const
inline

Definition at line 80 of file btMultiBodyFixedConstraint.h.

◆ getIslandIdA()

int btMultiBodyFixedConstraint::getIslandIdA ( ) const
virtual

Implements btMultiBodyConstraint.

Definition at line 61 of file btMultiBodyFixedConstraint.cpp.

◆ getIslandIdB()

int btMultiBodyFixedConstraint::getIslandIdB ( ) const
virtual

Implements btMultiBodyConstraint.

Definition at line 80 of file btMultiBodyFixedConstraint.cpp.

◆ getPivotInA()

const btVector3 & btMultiBodyFixedConstraint::getPivotInA ( ) const
inline

Definition at line 50 of file btMultiBodyFixedConstraint.h.

◆ getPivotInB()

const btVector3 & btMultiBodyFixedConstraint::getPivotInB ( ) const
inline

Definition at line 60 of file btMultiBodyFixedConstraint.h.

◆ setFrameInA()

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

Definition at line 75 of file btMultiBodyFixedConstraint.h.

◆ setFrameInB()

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

Reimplemented from btMultiBodyConstraint.

Definition at line 85 of file btMultiBodyFixedConstraint.h.

◆ setPivotInA()

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

Definition at line 55 of file btMultiBodyFixedConstraint.h.

◆ setPivotInB()

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

Reimplemented from btMultiBodyConstraint.

Definition at line 65 of file btMultiBodyFixedConstraint.h.

Member Data Documentation

◆ m_frameInA

btMatrix3x3 btMultiBodyFixedConstraint::m_frameInA
protected

Definition at line 31 of file btMultiBodyFixedConstraint.h.

◆ m_frameInB

btMatrix3x3 btMultiBodyFixedConstraint::m_frameInB
protected

Definition at line 32 of file btMultiBodyFixedConstraint.h.

◆ m_pivotInA

btVector3 btMultiBodyFixedConstraint::m_pivotInA
protected

Definition at line 29 of file btMultiBodyFixedConstraint.h.

◆ m_pivotInB

btVector3 btMultiBodyFixedConstraint::m_pivotInB
protected

Definition at line 30 of file btMultiBodyFixedConstraint.h.

◆ m_rigidBodyA

btRigidBody* btMultiBodyFixedConstraint::m_rigidBodyA
protected

Definition at line 27 of file btMultiBodyFixedConstraint.h.

◆ m_rigidBodyB

btRigidBody* btMultiBodyFixedConstraint::m_rigidBodyB
protected

Definition at line 28 of file btMultiBodyFixedConstraint.h.


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