libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
BaseExpansion Class Reference

The expansion class holds the method and local variables allowing to expand a Tree in a given configuration space methods such as chose a direction, check the validity in that direction and add nodes to the tree. More...

#include <BaseExpansion.hpp>

Inheritance diagram for BaseExpansion:
TreeExpansion ESTExpansion RRTExpansion DirectedExpansion StarExpansion TransitionEdgeExpansion TransitionExpansion HRICS_rrtExpansion HRICS_rrtPlanExpansion ThresholdExpansion

Public Member Functions

 BaseExpansion ()
 Constructor.
 
 BaseExpansion (Graph *prtGraph)
 
 ~BaseExpansion ()
 Destructor.
 
void setGraph (Graph *G)
 Set the graph that is beeing expanded.
 
GraphgetGraph ()
 Get the graph that is beeing expanded.
 
int getDirectionMethod ()
 Get Node Expansion Method.
 
void setDirectionMethod (int directionExpansion)
 Set Expansion node Method.
 
int getNodeMethod ()
 Get Node Expansion Method.
 
void setNodeMethod (int nodeExpansion)
 Set Expansion node Method.
 
void setFromComp (Node *fromComp)
 Set the From Connected Component.
 
NodegetFromComp ()
 Get the From Connected Component.
 
void setToComp (Node *toComp)
 Set the To Connected Component.
 
NodegetToComp ()
 Get the To Connected Component.
 
double step ()
 Expansion Step (Delta) More...
 
double getDMax ()
 
double computeInterpolationFactor (double pathLength)
 Compute the interpolation factor along the path, based on the extension step.
 
confPtr_t interpolate (confPtr_t conf, LocalPath *path, double factor)
 Interpolation along the given path.
 
double positionAlongPath (LocalPath &path, double param)
 Position on localpath in [0,1].
 
double pathDelta (LocalPath &path)
 Return the path parameter that is the closest to step()
 
LocalPath getExtensiontPath (std::tr1::shared_ptr< Configuration > qi, std::tr1::shared_ptr< Configuration > qf)
 Computes a localpath parameter used for expansion of at max step() of length. More...
 
void expansionFailed (Node &node)
 Function called when a node can not be connected. More...
 
virtual NodeaddNode (Node *currentNode, LocalPath &path, double pathDelta, Node *directionNode, unsigned &nbCreatedNodes)
 Adds a node to a connected component. More...
 
bool refinementControl (LocalPath &path, double rho, Node &compNode)
 Function that balances the ratio of exploration towards refinement.
 
bool nextStep (LocalPath &path, std::tr1::shared_ptr< Configuration > &directionConfig, double &pathDelta, std::tr1::shared_ptr< LocalPath > &newPath, Env::expansionMethod method)
 Returns a valid configuration on the local path.
 
bool nextStep (LocalPath &path, Node *directionNode, double &pathDelta, std::tr1::shared_ptr< LocalPath > &newPath, Env::expansionMethod method)
 Returns a valid configuration on the local path.
 
virtual NodegetExpansionNode (Node *compNode, confPtr_t direction, int distance)
 Gets the nearest node in the graph. More...
 
std::tr1::shared_ptr
< Configuration
getExpansionDirection (Node *expandComp, Node *goalComp, bool samplePassive, Node *&directionNode)
 
NodegetLasAddedNode ()
 Return last added node.
 
void addConnectibleNode ()
 
unsigned int getNbConnectibleNodes ()
 

Protected Attributes

int m_ExpansionNodeMethod
 
int m_MaxExpandNodeFailure
 
int m_kNearestPercent
 
int m_ExpansionDirectionMethod
 
bool m_IsDirSampleWithRlg
 
Graphm_Graph
 
Nodem_last_added_node
 
Nodem_fromComp
 
Nodem_toComp
 
unsigned int _nbConnectibleNodes
 

Detailed Description

The expansion class holds the method and local variables allowing to expand a Tree in a given configuration space methods such as chose a direction, check the validity in that direction and add nodes to the tree.

Member Function Documentation

Node * BaseExpansion::addNode ( Node currentNode,
LocalPath path,
double  pathDelta,
Node directionNode,
unsigned &  nbCreatedNodes 
)
virtual

Adds a node to a connected component.

Function that adds a node to the graph.

Reimplemented in HRICS_rrtExpansion, and HRICS_rrtPlanExpansion.

void BaseExpansion::expansionFailed ( Node node)

Function called when a node can not be connected.

Function called when an expansion fails.

Parameters
thenode which has not been connected
Node * BaseExpansion::getExpansionNode ( Node compNode,
confPtr_t  direction,
int  distance 
)
virtual

Gets the nearest node in the graph.

Parameters
compNodeExpanding component
directionDirection of expansion
Samplingpassive mode
LocalPath BaseExpansion::getExtensiontPath ( std::tr1::shared_ptr< Configuration qi,
std::tr1::shared_ptr< Configuration qf 
)

Computes a localpath parameter used for expansion of at max step() of length.

Returns the localpath of length equal or inferior to step.

double BaseExpansion::step ( )

Expansion Step (Delta)

Returns a distance define by the environement.


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