hpp::core::KinodynamicOrientedPath Class Reference

Path with 2 segment of constant acceleration or 3 segments with a constant velocity segment This class is similar to KinodynamicPath exept that the orientation of the robot always follow the direction of the velocity. More...

#include <hpp/core/kinodynamic-oriented-path.hh>

Inheritance diagram for hpp::core::KinodynamicOrientedPath:
[legend]
Collaboration diagram for hpp::core::KinodynamicOrientedPath:
[legend]

Public Types

typedef KinodynamicPath parent_t
 
- Public Types inherited from hpp::core::KinodynamicPath
typedef StraightPath parent_t
 
- Public Types inherited from hpp::core::StraightPath
typedef Path parent_t
 

Public Member Functions

virtual ~KinodynamicOrientedPath () throw ()
 
virtual PathPtr_t copy () const
 Return a shared pointer to this. More...
 
virtual PathPtr_t copy (const ConstraintSetPtr_t &constraints) const
 Return a shared pointer to a copy of this and set constraints. More...
 
- Public Member Functions inherited from hpp::core::KinodynamicPath
virtual ~KinodynamicPath () throw ()
 Destructor. More...
 
vector_t getT0 ()
 
vector_t getT1 ()
 
vector_t getT2 ()
 
vector_t getTv ()
 
vector_t getA1 ()
 
- Public Member Functions inherited from hpp::core::StraightPath
virtual ~StraightPath () throw ()
 Destructor. More...
 
void initialConfig (ConfigurationIn_t initial)
 Modify initial configuration. More...
 
void endConfig (ConfigurationIn_t end)
 Modify end configuration. More...
 
DevicePtr_t device () const
 Return the internal robot. More...
 
Configuration_t initial () const
 Get the initial configuration. More...
 
Configuration_t end () const
 Get the final configuration. More...
 
- Public Member Functions inherited from hpp::core::Path
virtual ~Path () throw ()
 Destructor. More...
 
template<class T >
boost::shared_ptr< T > as (void)
 Static cast into a derived type. More...
 
template<class T >
boost::shared_ptr< const T > as (void) const
 Static cast into a derived type. More...
 
PathPtr_t extract (const interval_t &subInterval) const throw (projection_error)
 
PathPtr_t extract (const value_type &tmin, const value_type &tmax) const throw (projection_error)
 
virtual PathPtr_t reverse () const
 Reversion of a path. More...
 
Configuration_t operator() (const value_type &time) const HPP_CORE_DEPRECATED
 
Configuration_t operator() (const value_type &time, bool &success) const
 
bool operator() (ConfigurationOut_t result, const value_type &time) const throw ()
 
Configuration_t eval (const value_type &time, bool &success) const
 
bool eval (ConfigurationOut_t result, const value_type &time) const throw ()
 
bool at (const value_type &time, ConfigurationOut_t result) const
 Get the configuration at a parameter without applying the constraints. More...
 
void derivative (vectorOut_t result, const value_type &time, size_type order) const
 Get derivative with respect to parameter at given parameter. More...
 
void velocityBound (vectorOut_t result, const value_type &t0, const value_type &t1) const
 Get an upper bound of the velocity on a sub-interval. More...
 
size_type outputSize () const
 Get size of configuration space. More...
 
size_type outputDerivativeSize () const
 Get size of velocity. More...
 
const interval_ttimeRange () const
 Get interval of definition. More...
 
virtual value_type length () const
 Get length of definition interval. More...
 
const ConstraintSetPtr_tconstraints () const
 Get constraints the path is subject to. More...
 
const interval_tparamRange () const
 Get interval of parameters. More...
 
void timeParameterization (const TimeParameterizationPtr_t &tp, const interval_t &tr)
 Set the time parameterization function. More...
 

Static Public Member Functions

static KinodynamicOrientedPathPtr_t create (const DevicePtr_t &device, 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)
 Create instance and return shared pointer. More...
 
static KinodynamicOrientedPathPtr_t create (const DevicePtr_t &device, 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)
 Create instance and return shared pointer. More...
 
static KinodynamicOrientedPathPtr_t createCopy (const KinodynamicOrientedPathPtr_t &path)
 Create copy and return shared pointer. More...
 
static KinodynamicOrientedPathPtr_t create (const KinodynamicPathPtr_t &path)
 
static KinodynamicOrientedPathPtr_t createCopy (const KinodynamicOrientedPathPtr_t &path, const ConstraintSetPtr_t &constraints)
 Create copy and return shared pointer. More...
 
- Static Public Member Functions inherited from hpp::core::KinodynamicPath
static KinodynamicPathPtr_t create (const DevicePtr_t &device, 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)
 Create instance and return shared pointer. More...
 
static KinodynamicPathPtr_t create (const DevicePtr_t &device, 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)
 Create instance and return shared pointer. More...
 
static KinodynamicPathPtr_t createCopy (const KinodynamicPathPtr_t &path)
 Create copy and return shared pointer. More...
 
static KinodynamicPathPtr_t createCopy (const KinodynamicPathPtr_t &path, const ConstraintSetPtr_t &constraints)
 Create copy and return shared pointer. More...
 
- Static Public Member Functions inherited from hpp::core::StraightPath
static StraightPathPtr_t create (const DevicePtr_t &device, ConfigurationIn_t init, ConfigurationIn_t end, value_type length)
 Create instance and return shared pointer. More...
 
static StraightPathPtr_t create (const DevicePtr_t &device, ConfigurationIn_t init, ConfigurationIn_t end, interval_t interval)
 Create instance and return shared pointer. More...
 
static StraightPathPtr_t create (const DevicePtr_t &device, ConfigurationIn_t init, ConfigurationIn_t end, value_type length, ConstraintSetPtr_t constraints)
 Create instance and return shared pointer. More...
 
static StraightPathPtr_t create (const DevicePtr_t &device, ConfigurationIn_t init, ConfigurationIn_t end, interval_t interval, ConstraintSetPtr_t constraints)
 Create instance and return shared pointer. More...
 
static StraightPathPtr_t createCopy (const StraightPathPtr_t &path)
 Create copy and return shared pointer. More...
 
static StraightPathPtr_t createCopy (const StraightPathPtr_t &path, const ConstraintSetPtr_t &constraints)
 Create copy and return shared pointer. More...
 

Protected Member Functions

virtual std::ostream & print (std::ostream &os) const
 Print path in a stream. More...
 
 KinodynamicOrientedPath (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. More...
 
 KinodynamicOrientedPath (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. More...
 
 KinodynamicOrientedPath (const KinodynamicOrientedPath &path)
 Copy constructor. More...
 
 KinodynamicOrientedPath (const KinodynamicPath &path)
 constructor from KinodynamicPath More...
 
 KinodynamicOrientedPath (const KinodynamicOrientedPath &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
void init (KinodynamicOrientedPathPtr_t self)
 
virtual bool impl_compute (ConfigurationOut_t result, value_type t) const
 Function evaluation without applying constraints. More...
 
virtual PathPtr_t impl_extract (const interval_t &subInterval) const throw (projection_error)
 Extraction/Reversion of a sub-path. More...
 
- Protected Member Functions inherited from hpp::core::KinodynamicPath
 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. More...
 
 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. More...
 
 KinodynamicPath (const KinodynamicPath &path)
 Copy constructor. More...
 
 KinodynamicPath (const KinodynamicPath &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
void init (KinodynamicPathPtr_t self)
 
double sgnenum (double val) const
 
int sgn (double d) const
 
double sgnf (double d) const
 
- Protected Member Functions inherited from hpp::core::StraightPath
 StraightPath (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, value_type length)
 Constructor. More...
 
 StraightPath (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, interval_t interval)
 Constructor. More...
 
 StraightPath (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, value_type length, ConstraintSetPtr_t constraints)
 Constructor with constraints. More...
 
 StraightPath (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, interval_t interval, ConstraintSetPtr_t constraints)
 Constructor with constraints. More...
 
 StraightPath (const StraightPath &path)
 Copy constructor. More...
 
 StraightPath (const StraightPath &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
void init (StraightPathPtr_t self)
 
virtual void impl_derivative (vectorOut_t result, const value_type &t, size_type order) const
 Virtual implementation of derivative. More...
 
virtual void impl_velocityBound (vectorOut_t result, const value_type &, const value_type &) const
 Virtual implementation of velocityBound. More...
 
PathPtr_t impl_extract (const interval_t &subInterval) const throw (projection_error)
 Extraction/Reversion of a sub-path. More...
 
- Protected Member Functions inherited from hpp::core::Path
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize, const ConstraintSetPtr_t &constraints)
 Constructor. More...
 
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize)
 Constructor. More...
 
 Path (const Path &path)
 Copy constructor. More...
 
 Path (const Path &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
void init (const PathWkPtr_t &self)
 Store weak pointer to itself. More...
 
void constraints (const ConstraintSetPtr_t &constraint)
 Set the constraints. More...
 
virtual void checkPath () const
 Should be called by child classes after having init. More...
 
void timeRange (const interval_t &timeRange)
 
const TimeParameterizationPtr_ttimeParameterization () const
 
value_type paramLength () const
 
Configuration_t configAtParam (const value_type &param, bool &success) const
 

Additional Inherited Members

- Protected Attributes inherited from hpp::core::StraightPath
DevicePtr_t device_
 
Configuration_t initial_
 
Configuration_t end_
 
- Protected Attributes inherited from hpp::core::Path
interval_t paramRange_
 Interval of parameters. More...
 

Detailed Description

Path with 2 segment of constant acceleration or 3 segments with a constant velocity segment This class is similar to KinodynamicPath exept that the orientation of the robot always follow the direction of the velocity.

Member Typedef Documentation

Constructor & Destructor Documentation

virtual hpp::core::KinodynamicOrientedPath::~KinodynamicOrientedPath ( )
throw (
)
inlinevirtual
hpp::core::KinodynamicOrientedPath::KinodynamicOrientedPath ( 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 
)
protected

Constructor.

hpp::core::KinodynamicOrientedPath::KinodynamicOrientedPath ( 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 
)
protected

Constructor with constraints.

hpp::core::KinodynamicOrientedPath::KinodynamicOrientedPath ( const KinodynamicOrientedPath path)
protected

Copy constructor.

hpp::core::KinodynamicOrientedPath::KinodynamicOrientedPath ( const KinodynamicPath path)
protected

constructor from KinodynamicPath

hpp::core::KinodynamicOrientedPath::KinodynamicOrientedPath ( const KinodynamicOrientedPath path,
const ConstraintSetPtr_t constraints 
)
protected

Copy constructor with constraints.

Member Function Documentation

virtual PathPtr_t hpp::core::KinodynamicOrientedPath::copy ( ) const
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::KinodynamicPath.

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

Return a shared pointer to a copy of this and set constraints.

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

Reimplemented from hpp::core::KinodynamicPath.

static KinodynamicOrientedPathPtr_t hpp::core::KinodynamicOrientedPath::create ( const DevicePtr_t device,
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 
)
inlinestatic

Create instance and return shared pointer.

Parameters
deviceRobot corresponding to configurations
init,endStart and end configurations of the path
lengthDistance between the configurations.

References hpp::core::Path::checkPath(), and init().

static KinodynamicOrientedPathPtr_t hpp::core::KinodynamicOrientedPath::create ( const DevicePtr_t device,
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 
)
inlinestatic

Create instance and return shared pointer.

Parameters
deviceRobot corresponding to configurations
init,endStart and end configurations of the path
lengthDistance between the configurations.
constraintsthe path is subject to

References hpp::core::Path::checkPath(), and init().

static KinodynamicOrientedPathPtr_t hpp::core::KinodynamicOrientedPath::create ( const KinodynamicPathPtr_t path)
inlinestatic
static KinodynamicOrientedPathPtr_t hpp::core::KinodynamicOrientedPath::createCopy ( const KinodynamicOrientedPathPtr_t path)
inlinestatic

Create copy and return shared pointer.

Parameters
pathpath to copy

References hpp::core::Path::checkPath(), and init().

static KinodynamicOrientedPathPtr_t hpp::core::KinodynamicOrientedPath::createCopy ( const KinodynamicOrientedPathPtr_t path,
const ConstraintSetPtr_t constraints 
)
inlinestatic

Create copy and return shared pointer.

Parameters
pathpath to copy
constraintsthe path is subject to

References hpp::core::Path::checkPath(), and init().

virtual bool hpp::core::KinodynamicOrientedPath::impl_compute ( ConfigurationOut_t  configuration,
value_type  param 
) const
protectedvirtual

Function evaluation without applying constraints.

Returns
true if everything went good.

Reimplemented from hpp::core::KinodynamicPath.

virtual PathPtr_t hpp::core::KinodynamicOrientedPath::impl_extract ( const interval_t paramInterval) const
throw (projection_error
)
protectedvirtual

Extraction/Reversion of a sub-path.

Parameters
subIntervalinterval of definition of the extract path If upper bound of subInterval is smaller than lower bound, return an empty path

Reimplemented from hpp::core::KinodynamicPath.

void hpp::core::KinodynamicOrientedPath::init ( KinodynamicOrientedPathPtr_t  self)
inlineprotected

Referenced by create(), and createCopy().

virtual std::ostream& hpp::core::KinodynamicOrientedPath::print ( std::ostream &  os) const
inlineprotectedvirtual

Print path in a stream.

Reimplemented from hpp::core::KinodynamicPath.

References hpp::pinocchio::displayConfig().