|
hpp-manipulation
9.0.2
Classes for manipulation planning.
|
#include <hpp/manipulation/path-optimization/enforce-transition-semantic.hh>


Public Types | |
| typedef hpp::core::PathVectorPtr_t | PathVectorPtr_t |
| typedef shared_ptr< EnforceTransitionSemantic > | Ptr_t |
Public Member Functions | |
| virtual PathVectorPtr_t | optimize (const PathVectorPtr_t &path) |
Public Member Functions inherited from hpp::core::PathOptimizer | |
| virtual | ~PathOptimizer () |
| ProblemConstPtr_t | problem () const |
| void | interrupt () |
| void | maxIterations (const unsigned long int &n) |
| void | timeOut (const double &timeOut) |
Static Public Member Functions | |
| static Ptr_t | create (const core::ProblemConstPtr_t &problem) |
Protected Member Functions | |
| EnforceTransitionSemantic (const ProblemConstPtr_t &problem) | |
| Constructor. More... | |
Protected Member Functions inherited from hpp::core::PathOptimizer | |
| PathOptimizer (const ProblemConstPtr_t &problem) | |
| PathPtr_t | steer (ConfigurationIn_t q1, ConfigurationIn_t q2) const |
| void | monitorExecution () |
| void | endIteration () |
| bool | shouldStop () const |
| void | initFromParameters () |
Additional Inherited Members | |
Public Attributes inherited from hpp::core::PathOptimizer | |
| bool | enabled |
| size_type | iteration |
| boost::posix_time::ptime | timeStart |
Protected Attributes inherited from hpp::core::PathOptimizer | |
| bool | interrupt_ |
Recompute the transition relative to each element of the path vector
When executing a sequence of direct paths on a real robot, it is useful to know which transition of the graph each direct path corresponds to. For example, in a manipulation motion, before grasping an object, the robot needs to open the gripper. This information is contained in the transition that leads to a pregrasp waypoint state. The direct path should therefore have access to the transition.
The information is stored in the constraint set of the path and is accessible via method edge .
If the path vector is produced by a manipulation planner, each direct path has been created by a transition. However, the path may later be cut by random shortcut or due to collision and the associated transition become irrelevant. For example if a path is created by a transition that leads to a pre-grasp, and cut due to a collision, the path does not reach the target state and the relevant transition is not the one that built the path.
This class takes a path vector as input an relabel each direct path with the correct transition.
| typedef hpp::core::PathVectorPtr_t hpp::manipulation::pathOptimization::EnforceTransitionSemantic::PathVectorPtr_t |
| typedef shared_ptr<EnforceTransitionSemantic> hpp::manipulation::pathOptimization::EnforceTransitionSemantic::Ptr_t |
|
inlineprotected |
Constructor.
|
inlinestatic |
|
virtual |
Implements hpp::core::PathOptimizer.