hpp-core 7.0.0
Implement basic classes for canonical path planning for kinematic chains.
Loading...
Searching...
No Matches
hpp::core::PathVector Class Reference

Concatenation of several paths. More...

#include <hpp/core/path-vector.hh>

Inheritance diagram for hpp::core::PathVector:
Collaboration diagram for hpp::core::PathVector:

Public Types

typedef Path parent_t

Public Member Functions

std::size_t numberPaths () const
 Get the number of sub paths.
PathPtr_t pathAtRank (std::size_t rank) const
std::size_t rankAtParam (const value_type &param, value_type &localParam) const
void appendPath (const PathPtr_t &path)
 Append a path at the end of the vector.
void concatenate (const PathVectorPtr_t &path)
virtual Configuration_t initial () const
 Get the initial configuration.
virtual Configuration_t end () const
 Get the final configuration.
void flatten (PathVectorPtr_t flattenedPath) const
Public Member Functions inherited from hpp::core::Path
virtual ~Path ()
 Destructor.
template<class T>
shared_ptr< T > as (void)
 Static cast into a derived type.
template<class T>
shared_ptr< const T > as (void) const
 Static cast into a derived type.
PathPtr_t extract (const interval_t &subInterval) const
PathPtr_t extract (const value_type &tmin, const value_type &tmax) const
virtual PathPtr_t reverse () const
Configuration_t eval (const value_type &time, bool &success) const
 Configuration at time.
bool eval (ConfigurationOut_t result, const value_type &time) const
 Configuration at time.
bool at (const value_type &time, ConfigurationOut_t result) const
 Get the configuration at a parameter without applying the constraints.
void derivative (vectorOut_t result, const value_type &time, size_type order) const
void velocityBound (vectorOut_t result, const value_type &t0, const value_type &t1) const
size_type outputSize () const
 Get size of configuration space.
size_type outputDerivativeSize () const
 Get size of velocity.
const interval_ttimeRange () const
 Get interval of definition.
virtual value_type length () const
 Get length of definition interval.
const ConstraintSetPtr_tconstraints () const
 Get constraints the path is subject to.
const interval_tparamRange () const
const TimeParameterizationPtr_ttimeParameterization () const
 Get the time parameterization function.
void timeParameterization (const TimeParameterizationPtr_t &tp, const interval_t &tr)
 Set the time parameterization function.

Protected Member Functions

virtual std::ostream & print (std::ostream &os) const
 Print path in a stream.
 PathVector (std::size_t outputSize, std::size_t outputDerivativeSize)
 Constructor.
 PathVector (std::size_t outputSize, std::size_t outputDerivativeSize, const ConstraintSetPtr_t &constraint)
 Constructor.
 PathVector (const PathVector &path)
 Copy constructor.
 PathVector (const PathVector &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints.
void init (PathVectorPtr_t self)
virtual bool impl_compute (ConfigurationOut_t result, value_type t) const
 Function evaluation without applying constraints.
virtual void impl_derivative (vectorOut_t result, const value_type &t, size_type order) const
 Virtual implementation of derivative.
virtual PathPtr_t impl_extract (const interval_t &subInterval) const
virtual void impl_velocityBound (vectorOut_t bound, const value_type &param0, const value_type &param1) const
 Virtual implementation of velocity bound.
 PathVector ()
Protected Member Functions inherited from hpp::core::Path
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize, const ConstraintSetPtr_t &constraints)
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize)
 Path (const Path &path)
 Copy constructor.
 Path (const Path &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints.
void init (const PathWkPtr_t &self)
void constraints (const ConstraintSetPtr_t &constraint)
virtual void checkPath () const
 Should be called by child classes after having init.
void timeRange (const interval_t &timeRange)
value_type paramLength () const
Configuration_t configAtParam (const value_type &param, bool &success) const
 Path ()

Construction, destruction, copy

static PathVectorPtr_t create (size_type outputSize, size_type outputDerivativeSize)
 Create instance and return shared pointer.
static PathVectorPtr_t create (size_type outputSize, size_type outputDerivativeSize, const ConstraintSetPtr_t &constraint)
 Create instance and return shared pointer.
static PathVectorPtr_t createCopy (const PathVectorPtr_t &original)
 Create instance and return shared pointer.
static PathVectorPtr_t createCopy (const PathVectorPtr_t &original, const ConstraintSetPtr_t &constraints)
 Create instance and return shared pointer.
virtual PathPtr_t copy () const
 Return a shared pointer to a copy of this.
virtual PathPtr_t copy (const ConstraintSetPtr_t &constraints) const
virtual ~PathVector ()
 Destructor.

Additional Inherited Members

Protected Attributes inherited from hpp::core::Path
interval_t paramRange_
 Interval of parameters.

Detailed Description

Concatenation of several paths.

Member Typedef Documentation

◆ parent_t

Constructor & Destructor Documentation

◆ ~PathVector()

virtual hpp::core::PathVector::~PathVector()
inlinevirtual

Destructor.

◆ PathVector() [1/5]

hpp::core::PathVector::PathVector(std::size_toutputSize,
std::size_toutputDerivativeSize )
inlineprotected

Constructor.

◆ PathVector() [2/5]

hpp::core::PathVector::PathVector(std::size_toutputSize,
std::size_toutputDerivativeSize,
const ConstraintSetPtr_t &constraint )
inlineprotected

Constructor.

◆ PathVector() [3/5]

hpp::core::PathVector::PathVector(const PathVector &path)
inlineprotected

Copy constructor.

◆ PathVector() [4/5]

hpp::core::PathVector::PathVector(const PathVector &path,
const ConstraintSetPtr_t &constraints )
inlineprotected

Copy constructor with constraints.

◆ PathVector() [5/5]

hpp::core::PathVector::PathVector()
inlineprotected

Member Function Documentation

◆ appendPath()

void hpp::core::PathVector::appendPath(const PathPtr_t &path)

Append a path at the end of the vector.

◆ concatenate()

void hpp::core::PathVector::concatenate(const PathVectorPtr_t &path)

Concatenate two vectors of path

Parameters
pathpath to append at the end of this one

Each element of path is appended to this one.

◆ copy() [1/2]

virtual PathPtr_t hpp::core::PathVector::copy()const
inlinevirtual

Return a shared pointer to a copy of this.

Implements hpp::core::Path.

Reimplemented in hpp::core::DubinsPath.

◆ copy() [2/2]

virtual PathPtr_t hpp::core::PathVector::copy(const ConstraintSetPtr_t &constraints)const
inlinevirtual

Return a shared pointer to a copy of this with constraints

Parameters
constraintsconstraints to apply to the copy
Precondition
*this should not have constraints.

Implements hpp::core::Path.

Reimplemented in hpp::core::DubinsPath.

◆ create() [1/2]

PathVectorPtr_t hpp::core::PathVector::create(size_typeoutputSize,
size_typeoutputDerivativeSize )
inlinestatic

Create instance and return shared pointer.

◆ create() [2/2]

PathVectorPtr_t hpp::core::PathVector::create(size_typeoutputSize,
size_typeoutputDerivativeSize,
const ConstraintSetPtr_t &constraint )
inlinestatic

Create instance and return shared pointer.

◆ createCopy() [1/2]

PathVectorPtr_t hpp::core::PathVector::createCopy(const PathVectorPtr_t &original)
inlinestatic

Create instance and return shared pointer.

◆ createCopy() [2/2]

PathVectorPtr_t hpp::core::PathVector::createCopy(const PathVectorPtr_t &original,
const ConstraintSetPtr_t &constraints )
inlinestatic

Create instance and return shared pointer.

◆ end()

virtual Configuration_t hpp::core::PathVector::end()const
inlinevirtual

Get the final configuration.

Implements hpp::core::Path.

Reimplemented in hpp::core::DubinsPath.

◆ flatten()

void hpp::core::PathVector::flatten(PathVectorPtr_tflattenedPath)const

Return the a path vector representing the same path but ensuring that there is no PathVector in the PathVector.

◆ impl_compute()

virtual bool hpp::core::PathVector::impl_compute(ConfigurationOut_tconfiguration,
value_typeparam ) const
protectedvirtual

Function evaluation without applying constraints.

Returns
true if everything went good.

Implements hpp::core::Path.

◆ impl_derivative()

virtual void hpp::core::PathVector::impl_derivative(vectorOut_tresult,
const value_type &t,
size_typeorder ) const
protectedvirtual

Virtual implementation of derivative.

Reimplemented from hpp::core::Path.

◆ impl_extract()

virtual PathPtr_t hpp::core::PathVector::impl_extract(const interval_t &subInterval)const
protectedvirtual

Extraction of a sub-path

Parameters
subIntervalinterval of definition of the extract path

Reimplemented from hpp::core::Path.

◆ impl_velocityBound()

virtual void hpp::core::PathVector::impl_velocityBound(vectorOut_tbound,
const value_type &param0,
const value_type &param1 ) const
protectedvirtual

Virtual implementation of velocity bound.

Reimplemented from hpp::core::Path.

◆ init()

void hpp::core::PathVector::init(PathVectorPtr_tself)
inlineprotected

◆ initial()

virtual Configuration_t hpp::core::PathVector::initial()const
inlinevirtual

Get the initial configuration.

Implements hpp::core::Path.

Reimplemented in hpp::core::DubinsPath.

◆ numberPaths()

std::size_t hpp::core::PathVector::numberPaths()const
inline

Get the number of sub paths.

◆ pathAtRank()

PathPtr_t hpp::core::PathVector::pathAtRank(std::size_trank)const

Get a path in the vector

Parameters
rankrank of the path in the vector. Should be between 0 and numberPaths ().
Returns
shared pointer to a copy of the path at requested rank with constraints applicable to the PathVector.

◆ print()

virtual std::ostream & hpp::core::PathVector::print(std::ostream &os)const
protectedvirtual

Print path in a stream.

Reimplemented from hpp::core::Path.

Reimplemented in hpp::core::DubinsPath.

◆ rankAtParam()

std::size_t hpp::core::PathVector::rankAtParam(const value_type &param,
value_type &localParam ) const

Get rank of direct path in vector at param

Parameters
paramparameter in interval of definition,
Return values
localParamparameter on sub-path
Returns
rank of direct path in vector

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