ompl::multilevel::PathSection Class Reference

Representation of a path section (not necessarily feasible). More...

#include <ompl/multilevel/datastructures/pathrestriction/PathSection.h>

Public Types

using Configuration = ompl::multilevel::BundleSpaceGraph::Configuration

Public Member Functions

 PathSection (PathRestriction *)
void interpolateL2 (HeadPtr &)
void interpolateL1FiberFirst (HeadPtr &)
 Interpolate along restriction using L1 metric. More...
void interpolateL1FiberLast (HeadPtr &)
bool checkMotion (HeadPtr &)
 Checks if section is feasible. More...
void sanityCheck ()
 checks if section is feasible
void sanityCheck (HeadPtr &)
base::Stateat (int k) const
 Methods to access sections like std::vector.
const base::Stateback () const
const base::Statefront () const
unsigned int size () const
ConfigurationaddFeasibleSegment (Configuration *xLast, base::State *sNext)
 Add vertex for sNext and edge to xLast by assuming motion is valid

void addFeasibleGoalSegment (Configuration *xLast, Configuration *xGoal)
void print (std::ostream &) const

Protected Attributes

std::vector< base::State * > section_
 Interpolated section along restriction.
std::vector< int > sectionBaseStateIndices_
std::pair< base::State *, double > lastValid_
 Last valid state on feasible segment.
int lastValidIndexOnBasePath_
base::StatexBaseTmp_ {nullptr}
base::StatexBundleTmp_ {nullptr}
base::StatexFiberStart_ {nullptr}
base::StatexFiberGoal_ {nullptr}
base::StatexFiberTmp_ {nullptr}


std::ostream & operator<< (std::ostream &, const PathSection &)

Detailed Description

Representation of a path section (not necessarily feasible).

This class provides convenience methods to interpolate different path section over a given path restriction

Definition at line 128 of file PathSection.h.

Member Function Documentation

◆ checkMotion()

bool PathSection::checkMotion ( HeadPtr &  head)

Checks if section is feasible.

Return values
Trueif feasible and false if only partially feasible
BasepathheadptrReturn last valid

Definition at line 91 of file PathSection.cpp.

◆ interpolateL1FiberFirst()

void PathSection::interpolateL1FiberFirst ( HeadPtr &  head)

Interpolate along restriction using L1 metric.

(Fiber first)

_____________x | |


Definition at line 162 of file PathSection.cpp.

◆ interpolateL1FiberLast()

void PathSection::interpolateL1FiberLast ( HeadPtr &  head)

\brief Interpolate along restriction using L1 metric (Fiber Last)

x | |


Definition at line 208 of file PathSection.cpp.

◆ interpolateL2()

void PathSection::interpolateL2 ( HeadPtr &  head)

\brief Interpolate along restriction using L2 metric

____x ____/ ___/


Definition at line 250 of file PathSection.cpp.

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