hpp-core 6.0.0
Implement basic classes for canonical path planning for kinematic chains.
|
#include <hpp/core/kinodynamic-path.hh>
Public Types | |
typedef StraightPath | parent_t |
![]() | |
typedef Path | parent_t |
Public Member Functions | |
virtual | ~KinodynamicPath () |
Destructor. | |
virtual PathPtr_t | copy () const |
virtual PathPtr_t | copy (const ConstraintSetPtr_t &constraints) const |
virtual PathPtr_t | impl_extract (const interval_t ¶mInterval) const |
vector_t | getT0 () |
vector_t | getT1 () |
vector_t | getT2 () |
vector_t | getTv () |
vector_t | getA1 () |
![]() | |
virtual | ~StraightPath () |
Destructor. | |
void | initialConfig (ConfigurationIn_t initial) |
void | endConfig (ConfigurationIn_t end) |
Configuration_t | initial () const |
Get the initial configuration. | |
Configuration_t | end () const |
Get the final configuration. | |
![]() | |
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_t & | timeRange () const |
Get interval of definition. | |
virtual value_type | length () const |
Get length of definition interval. | |
const ConstraintSetPtr_t & | constraints () const |
Get constraints the path is subject to. | |
const interval_t & | paramRange () const |
const TimeParameterizationPtr_t & | timeParameterization () 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. | |
KinodynamicPath (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, value_type length, ConfigurationIn_t a1, ConfigurationIn_t t0, ConfigurationIn_t t1, ConfigurationIn_t tv, ConfigurationIn_t t2, ConfigurationIn_t vLim) | |
Constructor. | |
KinodynamicPath (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, value_type length, ConfigurationIn_t a1, ConfigurationIn_t t0, ConfigurationIn_t t1, ConfigurationIn_t tv, ConfigurationIn_t t2, ConfigurationIn_t vLim, ConstraintSetPtr_t constraints) | |
Constructor with constraints. | |
KinodynamicPath (const KinodynamicPath &path) | |
Copy constructor. | |
KinodynamicPath (const KinodynamicPath &path, const ConstraintSetPtr_t &constraints) | |
Copy constructor with constraints. | |
void | init (KinodynamicPathPtr_t self) |
virtual bool | impl_compute (ConfigurationOut_t result, value_type t) const |
Function evaluation without applying constraints. | |
double | sgnenum (double val) const |
int | sgn (double d) const |
double | sgnf (double d) const |
const DevicePtr_t & | device () const |
![]() | |
StraightPath (LiegroupSpacePtr_t space, vectorIn_t init, vectorIn_t end, interval_t interval) | |
Constructor. | |
StraightPath (LiegroupSpacePtr_t space, vectorIn_t init, vectorIn_t end, interval_t interval, ConstraintSetPtr_t constraints) | |
Constructor. | |
StraightPath (const StraightPath &path) | |
Copy constructor. | |
StraightPath (const StraightPath &path, const ConstraintSetPtr_t &constraints) | |
Copy constructor with constraints. | |
void | init (StraightPathPtr_t self) |
virtual void | impl_derivative (vectorOut_t result, const value_type &t, size_type order) const |
Virtual implementation of derivative. | |
virtual void | impl_velocityBound (vectorOut_t result, const value_type &, const value_type &) const |
PathPtr_t | impl_extract (const interval_t &subInterval) const |
StraightPath () | |
![]() | |
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 ¶m, bool &success) const |
Path () | |
Additional Inherited Members | |
![]() | |
LiegroupSpacePtr_t | space_ |
Configuration_t | initial_ |
Configuration_t | end_ |
![]() | |
interval_t | paramRange_ |
Interval of parameters. | |
Kino-dynamic straight path
This Path has the same behavior as the StraightPath class except for the translation part of the free-flyer. For the translation part of the free-flyer KinodynamicPath store a "bang-bang" trajectory dependent on time with either 2 segment of constant acceleration or 3 segments with a constant velocity segment
In current implementation, only the translation part of the freeflyer joint is considered by this class. The value of all other joint are interpolated between the initial and end value using the interpolate() method.
The current implementation assume that :
|
inlinevirtual |
Destructor.
|
protected |
Constructor.
|
protected |
Constructor with constraints.
|
protected |
Copy constructor.
|
protected |
Copy constructor with constraints.
|
inlinevirtual |
Return a shared pointer to this
As StaightPath are immutable, and refered to by shared pointers, they do not need to be copied.
Reimplemented from hpp::core::StraightPath.
Reimplemented in hpp::core::KinodynamicOrientedPath.
|
inlinevirtual |
Return a shared pointer to a copy of this and set constraints
constraints | constraints to apply to the copy |
Reimplemented from hpp::core::StraightPath.
Reimplemented in hpp::core::KinodynamicOrientedPath.
|
inlinestatic |
Create instance and return shared pointer
device | Robot corresponding to configurations |
init,end | Start and end configurations of the path |
length | Distance between the configurations. |
|
inlinestatic |
Create instance and return shared pointer
device | Robot corresponding to configurations |
init,end | Start and end configurations of the path |
length | Distance between the configurations. |
constraints | the path is subject to |
|
inlinestatic |
Create copy and return shared pointer
path | path to copy |
|
inlinestatic |
Create copy and return shared pointer
path | path to copy |
constraints | the path is subject to |
|
inlineprotected |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protectedvirtual |
Function evaluation without applying constraints.
Reimplemented from hpp::core::StraightPath.
Reimplemented in hpp::core::KinodynamicOrientedPath.
|
virtual |
Extraction/Reversion of a sub-path
subInterval | interval of definition of the extract path If upper bound of subInterval is smaller than lower bound, return an empty path |
Reimplemented from hpp::core::Path.
Reimplemented in hpp::core::KinodynamicOrientedPath.
|
inlineprotected |
|
inlineprotectedvirtual |
Print path in a stream.
Reimplemented from hpp::core::StraightPath.
Reimplemented in hpp::core::KinodynamicOrientedPath.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |