btScalar fillMultiBodyConstraint(btMultiBodySolverConstraint &solverConstraint, btMultiBodyJacobianData &data, btScalar *jacOrgA, btScalar *jacOrgB, const btVector3 &contactNormalOnB, const btVector3 &posAworld, const btVector3 &posBworld, btScalar posError, const btContactSolverInfo &infoGlobal, btScalar lowerLimit, btScalar upperLimit, btScalar relaxation=1.f, bool isFriction=false, btScalar desiredVelocity=0, btScalar cfmSlip=0)
btScalar * jacobianB(int row)
1D constraint along a normal axis between bodyA and bodyB. It can be combined to solve contact and fr...
virtual ~btMultiBodyJointMotor()
const btMultiBodyLinkCollider * getBaseCollider() const
btScalar m_maxAppliedImpulse
class btMultiBodyLinkCollider * m_collider
btScalar * jacobianA(int row)
virtual int getIslandIdA() const
btMultiBodyJointMotor(btMultiBody *body, int link, btScalar desiredVelocity, btScalar maxMotorImpulse)
This file was written by Erwin Coumans.
virtual void createConstraintRows(btMultiBodyConstraintArray &constraintRows, btMultiBodyJacobianData &data, const btContactSolverInfo &infoGlobal)
const btMultibodyLink & getLink(int index) const
virtual int getIslandIdB() const
btScalar m_desiredVelocity