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

#include <btMultiBodySphericalJointLimit.h>

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

Public Member Functions

 btMultiBodySphericalJointLimit (btMultiBody *body, int link, btScalar swingxRange, btScalar swingyRange, btScalar twistRange, btScalar maxAppliedImpulse)
 This file was written by Erwin Coumans. More...
 
virtual ~btMultiBodySphericalJointLimit ()
 
virtual void finalizeMultiDof ()
 
virtual int getIslandIdA () const
 
virtual int getIslandIdB () const
 
virtual void createConstraintRows (btMultiBodyConstraintArray &constraintRows, btMultiBodyJacobianData &data, const btContactSolverInfo &infoGlobal)
 
virtual void setVelocityTarget (const btVector3 &velTarget, btScalar kd=1.0)
 
virtual void setVelocityTargetMultiDof (const btVector3 &velTarget, const btVector3 &kd=btVector3(1.0, 1.0, 1.0))
 
virtual void setPositionTarget (const btQuaternion &posTarget, btScalar kp=1.f)
 
virtual void setPositionTargetMultiDof (const btQuaternion &posTarget, const btVector3 &kp=btVector3(1.f, 1.f, 1.f))
 
virtual void setErp (btScalar erp)
 
virtual btScalar getErp () const
 
virtual void setRhsClamp (btScalar rhsClamp)
 
btScalar getMaxAppliedImpulseMultiDof (int i) const
 
void setMaxAppliedImpulseMultiDof (const btVector3 &maxImp)
 
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, int type)
 
virtual ~btMultiBodyConstraint ()
 
void updateJacobianSizes ()
 
void allocateJacobiansMultiDof ()
 
int getConstraintType () const
 
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
 
btMultiBodygetMultiBodyA ()
 
btMultiBodygetMultiBodyB ()
 
int getLinkA () const
 
int getLinkB () const
 
void internalSetAppliedImpulse (int dof, btScalar appliedImpulse)
 
btScalar getAppliedImpulse (int dof)
 
btScalar getPosition (int row) const
 
void setPosition (int row, btScalar pos)
 
bool isUnilateral () const
 
btScalarjacobianA (int row)
 
const btScalarjacobianA (int row) const
 
btScalarjacobianB (int row)
 
const btScalarjacobianB (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

btVector3 m_desiredVelocity
 
btQuaternion m_desiredPosition
 
bool m_use_multi_dof_params
 
btVector3 m_kd
 
btVector3 m_kp
 
btScalar m_erp
 
btScalar m_rhsClamp
 
btVector3 m_maxAppliedImpulseMultiDof
 
btVector3 m_pivotA
 
btVector3 m_pivotB
 
btScalar m_swingxRange
 
btScalar m_swingyRange
 
btScalar m_twistRange
 
- Protected Attributes inherited from btMultiBodyConstraint
btMultiBodym_bodyA
 
btMultiBodym_bodyB
 
int m_linkA
 
int m_linkB
 
int m_type
 
int m_numRows
 
int m_jacSizeA
 
int m_jacSizeBoth
 
int m_posOffset
 
bool m_isUnilateral
 
int m_numDofsFinalized
 
btScalar m_maxAppliedImpulse
 
btAlignedObjectArray< btScalarm_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, btScalar damping=1.0)
 

Detailed Description

Definition at line 24 of file btMultiBodySphericalJointLimit.h.

Constructor & Destructor Documentation

◆ btMultiBodySphericalJointLimit()

btMultiBodySphericalJointLimit::btMultiBodySphericalJointLimit ( btMultiBody body,
int  link,
btScalar  swingxRange,
btScalar  swingyRange,
btScalar  twistRange,
btScalar  maxAppliedImpulse 
)

This file was written by Erwin Coumans.

Definition at line 26 of file btMultiBodySphericalJointLimit.cpp.

◆ ~btMultiBodySphericalJointLimit()

btMultiBodySphericalJointLimit::~btMultiBodySphericalJointLimit ( )
virtual

Definition at line 70 of file btMultiBodySphericalJointLimit.cpp.

Member Function Documentation

◆ createConstraintRows()

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

twist axis/angle

Implements btMultiBodyConstraint.

Definition at line 110 of file btMultiBodySphericalJointLimit.cpp.

◆ debugDraw()

void btMultiBodySphericalJointLimit::debugDraw ( class btIDebugDraw drawer)
virtual

Implements btMultiBodyConstraint.

Definition at line 260 of file btMultiBodySphericalJointLimit.cpp.

◆ finalizeMultiDof()

void btMultiBodySphericalJointLimit::finalizeMultiDof ( )
virtual

Implements btMultiBodyConstraint.

Definition at line 52 of file btMultiBodySphericalJointLimit.cpp.

◆ getErp()

virtual btScalar btMultiBodySphericalJointLimit::getErp ( ) const
inlinevirtual

Definition at line 90 of file btMultiBodySphericalJointLimit.h.

◆ getIslandIdA()

int btMultiBodySphericalJointLimit::getIslandIdA ( ) const
virtual

Implements btMultiBodyConstraint.

Definition at line 74 of file btMultiBodySphericalJointLimit.cpp.

◆ getIslandIdB()

int btMultiBodySphericalJointLimit::getIslandIdB ( ) const
virtual

Implements btMultiBodyConstraint.

Definition at line 92 of file btMultiBodySphericalJointLimit.cpp.

◆ getMaxAppliedImpulseMultiDof()

btScalar btMultiBodySphericalJointLimit::getMaxAppliedImpulseMultiDof ( int  i) const
inline

Definition at line 99 of file btMultiBodySphericalJointLimit.h.

◆ setErp()

virtual void btMultiBodySphericalJointLimit::setErp ( btScalar  erp)
inlinevirtual

Reimplemented from btMultiBodyConstraint.

Definition at line 86 of file btMultiBodySphericalJointLimit.h.

◆ setMaxAppliedImpulseMultiDof()

void btMultiBodySphericalJointLimit::setMaxAppliedImpulseMultiDof ( const btVector3 maxImp)
inline

Definition at line 104 of file btMultiBodySphericalJointLimit.h.

◆ setPositionTarget()

virtual void btMultiBodySphericalJointLimit::setPositionTarget ( const btQuaternion posTarget,
btScalar  kp = 1.f 
)
inlinevirtual

Definition at line 72 of file btMultiBodySphericalJointLimit.h.

◆ setPositionTargetMultiDof()

virtual void btMultiBodySphericalJointLimit::setPositionTargetMultiDof ( const btQuaternion posTarget,
const btVector3 kp = btVector3(1.f, 1.f, 1.f) 
)
inlinevirtual

Definition at line 79 of file btMultiBodySphericalJointLimit.h.

◆ setRhsClamp()

virtual void btMultiBodySphericalJointLimit::setRhsClamp ( btScalar  rhsClamp)
inlinevirtual

Definition at line 94 of file btMultiBodySphericalJointLimit.h.

◆ setVelocityTarget()

virtual void btMultiBodySphericalJointLimit::setVelocityTarget ( const btVector3 velTarget,
btScalar  kd = 1.0 
)
inlinevirtual

Definition at line 58 of file btMultiBodySphericalJointLimit.h.

◆ setVelocityTargetMultiDof()

virtual void btMultiBodySphericalJointLimit::setVelocityTargetMultiDof ( const btVector3 velTarget,
const btVector3 kd = btVector3(1.0, 1.0, 1.0) 
)
inlinevirtual

Definition at line 65 of file btMultiBodySphericalJointLimit.h.

Member Data Documentation

◆ m_desiredPosition

btQuaternion btMultiBodySphericalJointLimit::m_desiredPosition
protected

Definition at line 28 of file btMultiBodySphericalJointLimit.h.

◆ m_desiredVelocity

btVector3 btMultiBodySphericalJointLimit::m_desiredVelocity
protected

Definition at line 27 of file btMultiBodySphericalJointLimit.h.

◆ m_erp

btScalar btMultiBodySphericalJointLimit::m_erp
protected

Definition at line 32 of file btMultiBodySphericalJointLimit.h.

◆ m_kd

btVector3 btMultiBodySphericalJointLimit::m_kd
protected

Definition at line 30 of file btMultiBodySphericalJointLimit.h.

◆ m_kp

btVector3 btMultiBodySphericalJointLimit::m_kp
protected

Definition at line 31 of file btMultiBodySphericalJointLimit.h.

◆ m_maxAppliedImpulseMultiDof

btVector3 btMultiBodySphericalJointLimit::m_maxAppliedImpulseMultiDof
protected

Definition at line 34 of file btMultiBodySphericalJointLimit.h.

◆ m_pivotA

btVector3 btMultiBodySphericalJointLimit::m_pivotA
protected

Definition at line 35 of file btMultiBodySphericalJointLimit.h.

◆ m_pivotB

btVector3 btMultiBodySphericalJointLimit::m_pivotB
protected

Definition at line 36 of file btMultiBodySphericalJointLimit.h.

◆ m_rhsClamp

btScalar btMultiBodySphericalJointLimit::m_rhsClamp
protected

Definition at line 33 of file btMultiBodySphericalJointLimit.h.

◆ m_swingxRange

btScalar btMultiBodySphericalJointLimit::m_swingxRange
protected

Definition at line 37 of file btMultiBodySphericalJointLimit.h.

◆ m_swingyRange

btScalar btMultiBodySphericalJointLimit::m_swingyRange
protected

Definition at line 38 of file btMultiBodySphericalJointLimit.h.

◆ m_twistRange

btScalar btMultiBodySphericalJointLimit::m_twistRange
protected

Definition at line 39 of file btMultiBodySphericalJointLimit.h.

◆ m_use_multi_dof_params

bool btMultiBodySphericalJointLimit::m_use_multi_dof_params
protected

Definition at line 29 of file btMultiBodySphericalJointLimit.h.


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