PatternGeneratorJRL::FootConstraintsAsLinearSystem Class Reference

#include <Mathematics/FootConstraintsAsLinearSystem.hh>

Inheritance diagram for PatternGeneratorJRL::FootConstraintsAsLinearSystem:
[legend]
Collaboration diagram for PatternGeneratorJRL::FootConstraintsAsLinearSystem:
[legend]

Public Member Functions

 FootConstraintsAsLinearSystem (SimplePluginManager *aSPM, PinocchioRobot *aPR)
 
 ~FootConstraintsAsLinearSystem ()
 
int ComputeLinearSystem (std::vector< CH_Point > aVecOfPoints, Eigen::MatrixXd &A, Eigen::MatrixXd &B, Eigen::VectorXd &C)
 
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 (Eigen::MatrixXd &A, std::vector< int > &SimilarConstraints)
 
virtual void CallMethod (std::string &Method, std::istringstream &Args)
 

Detailed Description

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.

Constructor & Destructor Documentation

FootConstraintsAsLinearSystem::FootConstraintsAsLinearSystem ( SimplePluginManager *  aSPM,
PinocchioRobot aPR 
)

Constructor

FootConstraintsAsLinearSystem::~FootConstraintsAsLinearSystem ( )

Destructor

Member Function Documentation

int FootConstraintsAsLinearSystem::BuildLinearConstraintInequalities ( std::deque< FootAbsolutePosition > &  LeftFootAbsolutePositions,
std::deque< FootAbsolutePosition > &  RightFootAbsolutePositions,
std::deque< LinearConstraintInequality_t * > &  QueueOfLConstraintInequalities,
double  ConstraintOnX,
double  ConstraintOnY 
)
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.

void FootConstraintsAsLinearSystem::CallMethod ( std::string &  Method,
std::istringstream &  Args 
)
virtual

Reimplement the interface of SimplePluginManager

Parameters
[in]MethodThe method to be called.
[in]ArgsArguments of the methods.
int FootConstraintsAsLinearSystem::ComputeLinearSystem ( std::vector< CH_Point aVecOfPoints,
Eigen::MatrixXd &  A,
Eigen::MatrixXd &  B,
Eigen::VectorXd &  C 
)

Compute the linear system \({\bf A}{\bf x} \geq {\bf b}\) associated with the set of points specified by aVecOfPoints. aVecOfPoints is supposed to represent the convex hull of the robot contact points with the ground.

References a, b, c, i, and n.

int FootConstraintsAsLinearSystem::FindSimilarConstraints ( Eigen::MatrixXd &  A,
std::vector< int > &  SimilarConstraints 
)

Find Similar Constraints

References i.