|
| QuasiStaticConstraint (RigidBodyTree *robot, const Eigen::Vector2d &tspan=DrakeRigidBodyConstraint::default_tspan, const std::set< int > &robotnumset=QuasiStaticConstraint::defaultRobotNumSet) |
|
virtual | ~QuasiStaticConstraint (void) |
|
bool | isTimeValid (const double *t) const |
|
int | getNumConstraint (const double *t) const |
|
void | eval (const double *t, KinematicsCache< double > &cache, const double *weights, Eigen::VectorXd &c, Eigen::MatrixXd &dc) const |
|
void | bounds (const double *t, Eigen::VectorXd &lb, Eigen::VectorXd &ub) const |
|
void | name (const double *t, std::vector< std::string > &name_str) const |
|
bool | isActive () const |
|
int | getNumWeights () const |
|
void | addContact (int num_new_bodies, const int *body, const Eigen::Matrix3Xd *body_pts) |
|
void | setShrinkFactor (double factor) |
|
void | setActive (bool flag) |
|
void | updateRobot (RigidBodyTree *robot) |
|
void | updateRobotnum (std::set< int > &robotnumset) |
|
Public Member Functions inherited from RigidBodyConstraint |
| RigidBodyConstraint (int category, RigidBodyTree *robot, const Eigen::Vector2d &tspan=DrakeRigidBodyConstraint::default_tspan) |
|
int | getType () const |
|
int | getCategory () const |
|
RigidBodyTree * | getRobotPointer () const |
|
virtual | ~RigidBodyConstraint (void)=0 |
|
the Center of Mass (CoM) is within the support polygon.
The support polygon is a shrunk area of the contact polygon
- Parameters
-
robot | |
tspan | – The time span of this constraint being active |
robotnumset | – The set of the robots in the RigidBodyTree for which the CoM is computed |
shrinkFactor | – The factor to shrink the contact polygon. The shrunk area is the support polygon. |
active | – Whether the constraint is on/off. If active = false, even the time t is within tspan, the constraint is still inactive |
num_bodies | – The total number of ground contact bodies/frames |
num_pts | – The total number of ground contact points |
bodies | – The index of ground contact bodies/frames |
num_body_pts | – The number of contact points on each contact body/frame |
body_pts | – The contact points on each contact body/frame |
Function: eval –evaluate the constraint
- Parameters
-
t | –the time to evaluate the constraint |
weights | –the weight associate with each ground contact point |
c | – c = CoM-weights'*support_vertex |
dc | – dc = [dcdq dcdweiths] addContact – add contact body and points |
num_new_bodies | – number of new contact bodies |
body | – the index of new contact bodies/frames |
body_pts | – body_pts[i] are the contact points on body[i] |