Tekkotsu Homepage | Demos | Overview | Downloads | Dev. Resources | Reference | Credits |
GenericRRT< NODE, N > Class Template ReferenceGeneric RRT implementation that makes no assumptions about the nature of the state space; those details are handled by the NODE template argument, which must be a subclass of RRTNodeBase. More...
Inheritance diagram for GenericRRT< NODE, N >:
Detailed Descriptiontemplate<typename NODE, size_t N>
|
Public Types | |
typedef NODE::NodeValue_t | NodeValue_t |
Public Member Functions | |
GenericRRT (typename NODE::CollisionChecker *collCheck, AdmissibilityPredicate< NODE > *predicate=NULL) | |
Constructor; will delete collCheck argument when destructed. | |
GenericRRT (const GenericRRT &other) | |
Copy constructor. | |
virtual | ~GenericRRT () |
Destructor: deletes the collision checker. | |
void | setLimits (const NodeValue_t &_lowerLimits, const NodeValue_t &_upperLimits) |
Set lower and upper value limits for each dimension of the space. | |
virtual void | setInterpolation (const NodeValue_t &_interpolationStep) |
Set interpolation step size for each dimension of the space for both extending and smoothing. | |
virtual void | setExtendingInterpolation (const NodeValue_t &_extendingInterpolationStep) |
Set interpolation step size for each dimension of the space for extending. | |
virtual void | setSmoothingInterpolation (const NodeValue_t &_smoothingInterpolationStep) |
Set interpolation step size for each dimension of the space for smoothing. | |
virtual PlannerResult< N > | planPath (const NodeValue_t &start, const NodeValue_t &end, unsigned int maxIterations, std::vector< NodeValue_t > *pathResult=NULL, std::vector< NODE > *treeStartResult=NULL, std::vector< NODE > *treeEndResult=NULL) |
Plan a path from start to end. | |
NODE::CollisionChecker * | getCC () |
virtual void | dumpTree (const std::vector< NODE > &tree, const std::string &header="") |
void | addObstaclesToShapeSpace (ShapeSpace &space, const fmat::Transform &t=fmat::Transform()) const |
Protected Member Functions | |
virtual void | initialize (const NodeValue_t &start, std::vector< NODE > &treeStartResult, const NodeValue_t &end, std::vector< NODE > &treeEndResult) |
Set up initial search trees. | |
virtual void | buildPath (const std::vector< NODE > *treeStart, const std::vector< NODE > *treeEnd, std::vector< NodeValue_t > &path) |
void | addNode (std::vector< NODE > *tree, const NodeValue_t &q, unsigned int parent) |
Protected Attributes | |
NodeValue_t | lowerLimits |
lower limits on state q | |
NodeValue_t | upperLimits |
upper limits on state q | |
NodeValue_t | extendingInterpolationStep |
interpolation steps for q while extending | |
NodeValue_t | smoothingInterpolationStep |
interpolation steps for q while smoothing | |
NODE::CollisionChecker * | cc |
collision checker | |
AdmissibilityPredicate< NODE > * | predicate |
admissibility predicate | |
Private Member Functions | |
unsigned int | nearestNode (std::vector< NODE > *tree, const NodeValue_t &target) |
RRTNodeBase::Interp_t | extend (std::vector< NODE > *tree, const NodeValue_t &q, bool truncate, bool searchingBackwards) |
GenericRRT & | operator= (const GenericRRT &) |
Don't call this. |
typedef NODE::NodeValue_t GenericRRT< NODE, N >::NodeValue_t |
Reimplemented in ShapeSpacePlanner2DR< N >, ShapeSpacePlanner3DR< N >, ShapeSpacePlannerXY, and ShapeSpacePlannerXYTheta.
Definition at line 104 of file GenericRRT.h.
GenericRRT< NODE, N >::GenericRRT | ( | typename NODE::CollisionChecker * | collCheck, | |
AdmissibilityPredicate< NODE > * | predicate = NULL | |||
) |
Constructor; will delete collCheck argument when destructed.
Definition at line 190 of file GenericRRT.h.
GenericRRT< NODE, N >::GenericRRT | ( | const GenericRRT< NODE, N > & | other | ) |
Copy constructor.
Definition at line 124 of file GenericRRT.h.
virtual GenericRRT< NODE, N >::~GenericRRT | ( | ) | [virtual] |
Destructor: deletes the collision checker.
Definition at line 133 of file GenericRRT.h.
void GenericRRT< NODE, N >::addNode | ( | std::vector< NODE > * | tree, | |
const NodeValue_t & | q, | |||
unsigned int | parent | |||
) | [protected] |
Definition at line 311 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::extend(), and GenericRRT< NODE, N >::initialize().
void GenericRRT< NODE, N >::addObstaclesToShapeSpace | ( | ShapeSpace & | space, | |
const fmat::Transform & | t = fmat::Transform() | |||
) | const |
Definition at line 375 of file GenericRRT.h.
Referenced by Grasper::PlanArmApproach::doStart(), and Grasper::planBodyPath().
void GenericRRT< NODE, N >::buildPath | ( | const std::vector< NODE > * | treeStart, | |
const std::vector< NODE > * | treeEnd, | |||
std::vector< NodeValue_t > & | path | |||
) | [protected, virtual] |
Reimplemented in ShapeSpacePlannerXYTheta.
Definition at line 317 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::planPath().
void GenericRRT< NODE, N >::dumpTree | ( | const std::vector< NODE > & | tree, | |
const std::string & | header = "" | |||
) | [virtual] |
Definition at line 366 of file GenericRRT.h.
RRTNodeBase::Interp_t GenericRRT< NODE, N >::extend | ( | std::vector< NODE > * | tree, | |
const NodeValue_t & | q, | |||
bool | truncate, | |||
bool | searchingBackwards | |||
) | [private] |
Definition at line 293 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::planPath().
NODE::CollisionChecker* GenericRRT< NODE, N >::getCC | ( | ) |
Definition at line 165 of file GenericRRT.h.
void GenericRRT< NODE, N >::initialize | ( | const NodeValue_t & | start, | |
std::vector< NODE > & | treeStartResult, | |||
const NodeValue_t & | end, | |||
std::vector< NODE > & | treeEndResult | |||
) | [protected, virtual] |
Set up initial search trees.
Reimplemented in ShapeSpacePlannerXYTheta.
Definition at line 195 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::planPath().
unsigned int GenericRRT< NODE, N >::nearestNode | ( | std::vector< NODE > * | tree, | |
const NodeValue_t & | target | |||
) | [private] |
Definition at line 274 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::extend(), and GenericRRT< NODE, N >::planPath().
GenericRRT& GenericRRT< NODE, N >::operator= | ( | const GenericRRT< NODE, N > & | ) | [private] |
Don't call this.
GenericRRTBase::PlannerResult< N > GenericRRT< NODE, N >::planPath | ( | const NodeValue_t & | start, | |
const NodeValue_t & | end, | |||
unsigned int | maxIterations, | |||
std::vector< NodeValue_t > * | pathResult = NULL , |
|||
std::vector< NODE > * | treeStartResult = NULL , |
|||
std::vector< NODE > * | treeEndResult = NULL | |||
) | [virtual] |
Plan a path from start to end.
Definition at line 203 of file GenericRRT.h.
virtual void GenericRRT< NODE, N >::setExtendingInterpolation | ( | const NodeValue_t & | _extendingInterpolationStep | ) | [virtual] |
Set interpolation step size for each dimension of the space for extending.
Definition at line 148 of file GenericRRT.h.
Referenced by GenericRRT< RRTNode3DR< N >, 3 >::setInterpolation().
virtual void GenericRRT< NODE, N >::setInterpolation | ( | const NodeValue_t & | _interpolationStep | ) | [virtual] |
Set interpolation step size for each dimension of the space for both extending and smoothing.
Definition at line 142 of file GenericRRT.h.
void GenericRRT< NODE, N >::setLimits | ( | const NodeValue_t & | _lowerLimits, | |
const NodeValue_t & | _upperLimits | |||
) |
Set lower and upper value limits for each dimension of the space.
Definition at line 136 of file GenericRRT.h.
virtual void GenericRRT< NODE, N >::setSmoothingInterpolation | ( | const NodeValue_t & | _smoothingInterpolationStep | ) | [virtual] |
Set interpolation step size for each dimension of the space for smoothing.
Definition at line 153 of file GenericRRT.h.
Referenced by GenericRRT< RRTNode3DR< N >, 3 >::setInterpolation().
NODE::CollisionChecker* GenericRRT< NODE, N >::cc [protected] |
collision checker
Definition at line 115 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::addObstaclesToShapeSpace(), GenericRRT< NODE, N >::buildPath(), GenericRRT< NODE, N >::extend(), GenericRRT< RRTNode3DR< N >, 3 >::getCC(), GenericRRT< NODE, N >::planPath(), and GenericRRT< RRTNode3DR< N >, 3 >::~GenericRRT().
NodeValue_t GenericRRT< NODE, N >::extendingInterpolationStep [protected] |
interpolation steps for q while extending
Definition at line 111 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::extend(), and GenericRRT< RRTNode3DR< N >, 3 >::setExtendingInterpolation().
NodeValue_t GenericRRT< NODE, N >::lowerLimits [protected] |
lower limits on state q
Definition at line 107 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::planPath(), and GenericRRT< RRTNode3DR< N >, 3 >::setLimits().
AdmissibilityPredicate<NODE>* GenericRRT< NODE, N >::predicate [protected] |
admissibility predicate
Definition at line 117 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::extend(), and GenericRRT< RRTNode3DR< N >, 3 >::~GenericRRT().
NodeValue_t GenericRRT< NODE, N >::smoothingInterpolationStep [protected] |
interpolation steps for q while smoothing
Definition at line 113 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::buildPath(), and GenericRRT< RRTNode3DR< N >, 3 >::setSmoothingInterpolation().
NodeValue_t GenericRRT< NODE, N >::upperLimits [protected] |
upper limits on state q
Definition at line 109 of file GenericRRT.h.
Referenced by GenericRRT< NODE, N >::planPath(), and GenericRRT< RRTNode3DR< N >, 3 >::setLimits().
Tekkotsu v5.1CVS |
Generated Mon May 9 04:59:08 2016 by Doxygen 1.6.3 |