robotoc
robotoc - efficient ROBOT Optimal Control solvers
|
Base interface of contact planners. More...
#include <contact_planner_base.hpp>
Public Member Functions | |
ContactPlannerBase () | |
Default constructor. More... | |
virtual | ~ContactPlannerBase () |
Destructor. More... | |
ContactPlannerBase (const ContactPlannerBase &)=default | |
Default copy constructor. More... | |
ContactPlannerBase & | operator= (const ContactPlannerBase &)=default |
Default copy assign operator. More... | |
ContactPlannerBase (ContactPlannerBase &&) noexcept=default | |
Default move constructor. More... | |
ContactPlannerBase & | operator= (ContactPlannerBase &&) noexcept=default |
Default move assign operator. More... | |
virtual void | init (const Eigen::VectorXd &q)=0 |
Initializes the planner. More... | |
virtual bool | plan (const double t, const Eigen::VectorXd &q, const Eigen::VectorXd &v, const ContactStatus &contact_status, const int planning_steps)=0 |
Plans the foot steps in the MPC (receding-horizon) fashion. More... | |
virtual const aligned_vector< SE3 > & | contactPlacements (const int step) const =0 |
Gets the contact placements of a specified step. More... | |
virtual const std::vector< Eigen::Vector3d > & | contactPositions (const int step) const =0 |
Gets the contact positions of a specified step. More... | |
virtual const std::vector< Eigen::Matrix3d > & | contactSurfaces (const int step) const =0 |
Gets the contact surfaces of a specified step. More... | |
virtual const Eigen::Vector3d & | CoM (const int step) const =0 |
Gets the CoM position of a specified step. More... | |
virtual const Eigen::Matrix3d & | R (const int step) const =0 |
Gets the rotation matrix of the base at a specified step. More... | |
virtual int | size () const =0 |
Gets the size of each planned quantities. More... | |
void | disp (std::ostream &os) const |
Base interface of contact planners.
|
inline |
Default constructor.
|
inlinevirtual |
Destructor.
|
default |
Default copy constructor.
|
defaultnoexcept |
Default move constructor.
|
pure virtual |
Gets the CoM position of a specified step.
[in] | step | Step of interest. |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
|
pure virtual |
Gets the contact placements of a specified step.
[in] | step | Step of interest. |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
|
pure virtual |
Gets the contact positions of a specified step.
[in] | step | Step of interest. |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
|
pure virtual |
Gets the contact surfaces of a specified step.
[in] | step | Step of interest. |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
void robotoc::ContactPlannerBase::disp | ( | std::ostream & | os | ) | const |
|
pure virtual |
Initializes the planner.
[in] | q | Initial configuration. Size must be Robot::dimq(). |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
|
default |
Default copy assign operator.
|
defaultnoexcept |
Default move assign operator.
|
pure virtual |
Plans the foot steps in the MPC (receding-horizon) fashion.
[in] | t | Initial time. |
[in] | q | Initial configuration. Size must be Robot::dimq(). |
[in] | v | Initial velocity. Size must be Robot::dimv(). |
[in] | contact_status | Initial contact status. |
[in] | planning_steps | Number of planning steps. Must be non-negative. |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
|
pure virtual |
Gets the rotation matrix of the base at a specified step.
[in] | step | Step of interest. |
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.
|
pure virtual |
Gets the size of each planned quantities.
Implemented in robotoc::BipedWalkFootStepPlanner, robotoc::CrawlFootStepPlanner, robotoc::FlyingTrotFootStepPlanner, robotoc::JumpFootStepPlanner, robotoc::PaceFootStepPlanner, and robotoc::TrotFootStepPlanner.