JointLimitConstraint handles joint position and velocity limits.  
 More...
#include <JointLimitConstraint.hpp>
|  | 
| std::size_t | mDim | 
|  | Dimension of constraint. 
 | 
|  | 
|  | 
| dynamics::Joint * | mJoint | 
|  | The Joint that this constraint is associated with. 
 | 
|  | 
| dynamics::BodyNode * | mBodyNode | 
|  | The child BodyNode of the Joint that this constraint is associated with. 
 | 
|  | 
| std::size_t | mAppliedImpulseIndex | 
|  | Index of applied impulse. 
 | 
|  | 
| Eigen::Matrix< std::size_t, 6, 1 > | mLifeTime | 
|  | Life time of constraint of each DOF. 
 | 
|  | 
| Eigen::Matrix< bool, 6, 1 > | mIsPositionLimitViolated | 
|  | Whether joint value exceeds the position limit. 
 | 
|  | 
| Eigen::Matrix< bool, 6, 1 > | mIsVelocityLimitViolated | 
|  | Whether joint value exceeds the velocity limit. 
 | 
|  | 
| Eigen::Matrix< double, 6, 1 > | mViolation | 
|  | How much current joint values are exceeded from the limits. 
 | 
|  | 
| Eigen::Matrix< double, 6, 1 > | mNegativeVel | 
|  | The desired delta velocity to satisfy the joint limit constraint. 
 | 
|  | 
| Eigen::Matrix< double, 6, 1 > | mOldX | 
|  | Constraint impulse of the previous step. 
 | 
|  | 
| Eigen::Matrix< double, 6, 1 > | mUpperBound | 
|  | Upper limit of the constraint impulse. 
 | 
|  | 
| Eigen::Matrix< double, 6, 1 > | mLowerBound | 
|  | Lower limit of the constraint impulse. 
 | 
|  | 
JointLimitConstraint handles joint position and velocity limits. 
◆ JointLimitConstraint()
  
  | 
        
          | dart::constraint::JointLimitConstraint::JointLimitConstraint | ( | dynamics::Joint * | joint | ) |  |  | explicit | 
 
 
◆ ~JointLimitConstraint()
  
  | 
        
          | dart::constraint::JointLimitConstraint::~JointLimitConstraint | ( |  | ) |  |  | overridedefault | 
 
 
◆ applyImpulse()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::applyImpulse | ( | double * | lambda | ) |  |  | overrideprotectedvirtual | 
 
 
◆ applyUnitImpulse()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::applyUnitImpulse | ( | std::size_t | index | ) |  |  | overrideprotectedvirtual | 
 
 
◆ compressPath()
◆ excite()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::excite | ( |  | ) |  |  | overrideprotectedvirtual | 
 
 
◆ getConstraintForceMixing()
  
  | 
        
          | double dart::constraint::JointLimitConstraint::getConstraintForceMixing | ( |  | ) |  |  | static | 
 
Get global constraint force mixing parameter. 
 
 
◆ getDimension()
  
  | 
        
          | std::size_t dart::constraint::ConstraintBase::getDimension | ( |  | ) | const |  | inherited | 
 
Return dimesion of this constranit. 
 
 
◆ getErrorAllowance()
  
  | 
        
          | double dart::constraint::JointLimitConstraint::getErrorAllowance | ( |  | ) |  |  | static | 
 
Get global error reduction parameter. 
 
 
◆ getErrorReductionParameter()
  
  | 
        
          | double dart::constraint::JointLimitConstraint::getErrorReductionParameter | ( |  | ) |  |  | static | 
 
Get global error reduction parameter. 
 
 
◆ getInformation()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::getInformation | ( | ConstraintInfo * | info | ) |  |  | overrideprotectedvirtual | 
 
 
◆ getMaxErrorReductionVelocity()
  
  | 
        
          | double dart::constraint::JointLimitConstraint::getMaxErrorReductionVelocity | ( |  | ) |  |  | static | 
 
Get global error reduction parameter. 
 
 
◆ getRootSkeleton() [1/2]
◆ getRootSkeleton() [2/2]
◆ getStaticType()
  
  | 
        
          | const std::string & dart::constraint::JointLimitConstraint::getStaticType | ( |  | ) |  |  | static | 
 
Returns constraint type for this class. 
 
 
◆ getType()
  
  | 
        
          | const std::string & dart::constraint::JointLimitConstraint::getType | ( |  | ) | const |  | overridevirtual | 
 
 
◆ getVelocityChange()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::getVelocityChange | ( | double * | vel, |  
          |  |  | bool | withCfm |  
          |  | ) |  |  |  | overrideprotectedvirtual | 
 
 
◆ isActive()
  
  | 
        
          | bool dart::constraint::JointLimitConstraint::isActive | ( |  | ) | const |  | overrideprotectedvirtual | 
 
 
◆ setConstraintForceMixing()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::setConstraintForceMixing | ( | double | cfm | ) |  |  | static | 
 
Set global constraint force mixing parameter. 
 
 
◆ setErrorAllowance()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::setErrorAllowance | ( | double | allowance | ) |  |  | static | 
 
Set global error reduction parameter. 
 
 
◆ setErrorReductionParameter()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::setErrorReductionParameter | ( | double | erp | ) |  |  | static | 
 
Set global error reduction parameter. 
 
 
◆ setMaxErrorReductionVelocity()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::setMaxErrorReductionVelocity | ( | double | erv | ) |  |  | static | 
 
Set global error reduction parameter. 
 
 
◆ unexcite()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::unexcite | ( |  | ) |  |  | overrideprotectedvirtual | 
 
 
◆ uniteSkeletons()
  
  | 
        
          | void dart::constraint::ConstraintBase::uniteSkeletons | ( |  | ) |  |  | virtualinherited | 
 
 
◆ update()
  
  | 
        
          | void dart::constraint::JointLimitConstraint::update | ( |  | ) |  |  | overrideprotectedvirtual | 
 
 
◆ ConstrainedGroup
◆ ConstraintSolver
◆ mAppliedImpulseIndex
  
  | 
        
          | std::size_t dart::constraint::JointLimitConstraint::mAppliedImpulseIndex |  | private | 
 
Index of applied impulse. 
 
 
◆ mBodyNode
The child BodyNode of the Joint that this constraint is associated with. 
 
 
◆ mConstraintForceMixing
  
  | 
        
          | double dart::constraint::JointLimitConstraint::mConstraintForceMixing = 1e-9 |  | staticprivate | 
 
 
◆ mDim
  
  | 
        
          | std::size_t dart::constraint::ConstraintBase::mDim |  | protectedinherited | 
 
 
◆ mErrorAllowance
  
  | 
        
          | double dart::constraint::JointLimitConstraint::mErrorAllowance = 0.0 |  | staticprivate | 
 
Global constraint error allowance. 
 
 
◆ mErrorReductionParameter
  
  | 
        
          | double dart::constraint::JointLimitConstraint::mErrorReductionParameter = 0.01 |  | staticprivate | 
 
Global constraint error redection parameter in the range of [0, 1]. 
The default is 0.01. 
 
 
◆ mIsPositionLimitViolated
  
  | 
        
          | Eigen::Matrix<bool, 6, 1> dart::constraint::JointLimitConstraint::mIsPositionLimitViolated |  | private | 
 
Whether joint value exceeds the position limit. 
 
 
◆ mIsVelocityLimitViolated
  
  | 
        
          | Eigen::Matrix<bool, 6, 1> dart::constraint::JointLimitConstraint::mIsVelocityLimitViolated |  | private | 
 
Whether joint value exceeds the velocity limit. 
 
 
◆ mJoint
The Joint that this constraint is associated with. 
 
 
◆ mLifeTime
  
  | 
        
          | Eigen::Matrix<std::size_t, 6, 1> dart::constraint::JointLimitConstraint::mLifeTime |  | private | 
 
Life time of constraint of each DOF. 
 
 
◆ mLowerBound
  
  | 
        
          | Eigen::Matrix<double, 6, 1> dart::constraint::JointLimitConstraint::mLowerBound |  | private | 
 
Lower limit of the constraint impulse. 
 
 
◆ mMaxErrorReductionVelocity
  
  | 
        
          | double dart::constraint::JointLimitConstraint::mMaxErrorReductionVelocity = 1e+1 |  | staticprivate | 
 
Maximum error reduction velocity. 
 
 
◆ mNegativeVel
  
  | 
        
          | Eigen::Matrix<double, 6, 1> dart::constraint::JointLimitConstraint::mNegativeVel |  | private | 
 
The desired delta velocity to satisfy the joint limit constraint. 
 
 
◆ mOldX
  
  | 
        
          | Eigen::Matrix<double, 6, 1> dart::constraint::JointLimitConstraint::mOldX |  | private | 
 
Constraint impulse of the previous step. 
 
 
◆ mUpperBound
  
  | 
        
          | Eigen::Matrix<double, 6, 1> dart::constraint::JointLimitConstraint::mUpperBound |  | private | 
 
Upper limit of the constraint impulse. 
 
 
◆ mViolation
  
  | 
        
          | Eigen::Matrix<double, 6, 1> dart::constraint::JointLimitConstraint::mViolation |  | private | 
 
How much current joint values are exceeded from the limits.