hpp-manipulation  6.0.0
Classes for manipulation planning.
hpp::manipulation::pathPlanner::TransitionPlanner Class Reference

#include <hpp/manipulation/path-planner/transition-planner.hh>

Inheritance diagram for hpp::manipulation::pathPlanner::TransitionPlanner:
Collaboration diagram for hpp::manipulation::pathPlanner::TransitionPlanner:

Public Types

typedef core::PathPlannerPtr_t PathPlannerPtr_t
 
typedef core::PathProjectorPtr_t PathProjectorPtr_t
 
typedef core::PathPtr_t PathPtr_t
 
typedef core::PathOptimizerPtr_t PathOptimizerPtr_t
 
typedef core::PathVector PathVector
 
typedef core::PathVectorPtr_t PathVectorPtr_t
 
typedef core::Parameter Parameter
 

Public Member Functions

PathPlannerPtr_t innerPlanner () const
 Get the inner planner. More...
 
void innerPlanner (const PathPlannerPtr_t &planner)
 Set the inner planner. More...
 
core::ProblemPtr_t innerProblem () const
 Get the inner problem. More...
 
virtual void startSolve ()
 
virtual void oneStep ()
 
PathVectorPtr_t planPath (const Configuration_t qInit, matrixIn_t qGoals, bool resetRoadmap)
 
PathPtr_t directPath (ConfigurationIn_t q1, ConfigurationIn_t q2, bool validate, bool &success, std::string &status)
 
bool validateConfiguration (ConfigurationIn_t q, std::size_t id, core::ValidationReportPtr_t &report) const
 
PathVectorPtr_t optimizePath (const PathPtr_t &path)
 
PathVectorPtr_t timeParameterization (const PathVectorPtr_t &path)
 
void setEdge (std::size_t id)
 
void setReedsAndSheppSteeringMethod (double turningRadius)
 Create a Reeds and Shepp steering method and path it to the problem. More...
 
void pathProjector (const PathProjectorPtr_t pathProjector)
 Set the path projector. More...
 
void clearPathOptimizers ()
 Clear path optimizers. More...
 
void addPathOptimizer (const PathOptimizerPtr_t &pathOptimizer)
 Add a path optimizer. More...
 
void setParameter (const std::string &key, const Parameter &value)
 Set parameter to the inner problem. More...
 

Static Public Member Functions

static TransitionPlannerPtr_t createWithRoadmap (const core::ProblemConstPtr_t &problem, const core::RoadmapPtr_t &roadmap)
 Create instance and return share pointer. More...
 

Protected Member Functions

 TransitionPlanner (const core::ProblemConstPtr_t &problem, const core::RoadmapPtr_t &roadmap)
 
void init (TransitionPlannerWkPtr_t weak)
 store weak pointer to itself More...
 

Detailed Description

Plan paths in a leaf of a transition

In many manipulation applications, the sequence of actions is knwown in advance or computed by a task planner. There is a need then to connect configurations that lie on the same leaf of a transition. This class performs this computation.

The constraint graph is stored in the Problem instance of the planner. To select the transition, call method setEdge with the index of the transition.

At construction, a core::Problem instance is created, as well as a core::PathPlanner instance. They are respectively called the inner problem and the inner planner.

The leaf of the transition is defined by the initial configuration passed to method planPath . The right hand side of the inner problem constraints is initialized with this configuration.

The class stores path optimizers that are called when invoking method optimizePath .

Method timeParameterization computes a time parameterization of a given path.


The documentation for this class was generated from the following file: