#include <Mathematics/FootConstraintsAsLinearSystem.hh>


Public Member Functions | |
| FootConstraintsAsLinearSystem (SimplePluginManager *aSPM, CjrlHumanoidDynamicRobot *aHS) | |
| ~FootConstraintsAsLinearSystem () | |
| int | ComputeLinearSystem (std::vector< CH_Point > aVecOfPoints, MAL_MATRIX(&A, double), MAL_MATRIX(&B, double), MAL_VECTOR(&C, double)) |
| int | BuildLinearConstraintInequalities (std::deque< FootAbsolutePosition > &LeftFootAbsolutePositions, std::deque< FootAbsolutePosition > &RightFootAbsolutePositions, std::deque< LinearConstraintInequality_t * > &QueueOfLConstraintInequalities, double ConstraintOnX, double ConstraintOnY) |
| int | BuildLinearConstraintInequalities2 (std::deque< FootAbsolutePosition > &LeftFootAbsolutePositions, std::deque< FootAbsolutePosition > &RightFootAbsolutePositions, std::deque< LinearConstraintInequality_t * > &QueueOfLConstraintInequalities, double ConstraintOnX, double ConstraintOnY) |
| int | FindSimilarConstraints (MAL_MATRIX(&A, double), std::vector< int > &SimilarConstraints) |
| virtual void | CallMethod (std::string &Method, std::istringstream &Args) |
This class generates matrix representation of linear constraint based on foot position. It handles a stack of constraint on a sliding mode for QP solving.
| FootConstraintsAsLinearSystem::FootConstraintsAsLinearSystem | ( | SimplePluginManager * | aSPM, |
| CjrlHumanoidDynamicRobot * | aHS | ||
| ) |
Constructor
| FootConstraintsAsLinearSystem::~FootConstraintsAsLinearSystem | ( | ) |
Destructor
| int FootConstraintsAsLinearSystem::BuildLinearConstraintInequalities | ( | std::deque< FootAbsolutePosition > & | LeftFootAbsolutePositions, |
| std::deque< FootAbsolutePosition > & | RightFootAbsolutePositions, | ||
| std::deque< LinearConstraintInequality_t * > & | QueueOfLConstraintInequalities, | ||
| double | ConstraintOnX, | ||
| double | ConstraintOnY | ||
| ) |
Build a queue of constraint Inequalities based on a list of Foot Absolute Position.
References ComputeLinearSystem(), PatternGeneratorJRL::ComputeConvexHull::DoComputeConvexHull(), FindSimilarConstraints(), CjrlFoot::getAnklePositionInLocalFrame(), CjrlFoot::getSoleSize(), i, j, CjrlHumanoidDynamicRobot::leftFoot(), CjrlHumanoidDynamicRobot::rightFoot(), PatternGeneratorJRL::LinearConstraintInequality_s::SimilarConstraints, and PatternGeneratorJRL::LinearConstraintInequality_s::StartingTime.
| int PatternGeneratorJRL::FootConstraintsAsLinearSystem::BuildLinearConstraintInequalities2 | ( | std::deque< FootAbsolutePosition > & | LeftFootAbsolutePositions, |
| std::deque< FootAbsolutePosition > & | RightFootAbsolutePositions, | ||
| std::deque< LinearConstraintInequality_t * > & | QueueOfLConstraintInequalities, | ||
| double | ConstraintOnX, | ||
| double | ConstraintOnY | ||
| ) |
Build a queue of constraint Inequalities based on a list of Foot Absolute Position.
References MAL_MATRIX.
|
virtual |
Reimplement the interface of SimplePluginManager
| [in] | Method | The method to be called. |
| [in] | Args | Arguments of the methods. |
| int FootConstraintsAsLinearSystem::ComputeLinearSystem | ( | std::vector< CH_Point > | aVecOfPoints, |
| MAL_MATRIX &, double | , | ||
| MAL_MATRIX &, double | , | ||
| MAL_VECTOR &, double | |||
| ) |
Compute the linear system 
References a, b, c, i, MAL_MATRIX, MAL_MATRIX_RESIZE, MAL_RET_A_by_B, MAL_VECTOR, MAL_VECTOR_DIM, MAL_VECTOR_RESIZE, and n.
Referenced by BuildLinearConstraintInequalities().
| int FootConstraintsAsLinearSystem::FindSimilarConstraints | ( | MAL_MATRIX &, double | , |
| std::vector< int > & | SimilarConstraints | ||
| ) |
Find Similar Constraints
References i, MAL_MATRIX, and MAL_MATRIX_NB_ROWS.
Referenced by BuildLinearConstraintInequalities().