hpp::rbprm::TimedParabolaPath Class Reference

ballistic path between 2 configurations More...

#include <hpp/rbprm/planner/timed-parabola-path.hh>

Inheritance diagram for hpp::rbprm::TimedParabolaPath:
[legend]
Collaboration diagram for hpp::rbprm::TimedParabolaPath:
[legend]

Public Types

typedef ParabolaPath parent_t
 
- Public Types inherited from hpp::rbprm::ParabolaPath
typedef Path parent_t
 

Public Member Functions

virtual ~TimedParabolaPath () throw ()
 Destructor. More...
 
virtual core::PathPtr_t copy () const
 Return a shared pointer to this. More...
 
virtual core::PathPtr_t copy (const core::ConstraintSetPtr_t &constraints) const
 Return a shared pointer to a copy of this and set constraints. More...
 
virtual core::PathPtr_t extract (const core::interval_t &subInterval) const throw (core::projection_error)
 Extraction/Reversion of a sub-path. More...
 
virtual core::PathPtr_t reverse () const
 Reversion of a path. More...
 
void initialConfig (core::ConfigurationIn_t initial)
 Modify initial configuration. More...
 
void endConfig (core::ConfigurationIn_t end)
 Modify end configuration. More...
 
core::DevicePtr_t device () const
 Return the internal robot. More...
 
core::Configuration_t initial () const
 Get the initial configuration. More...
 
core::Configuration_t end () const
 Get the final configuration. More...
 
virtual core::value_type length () const
 Get previously computed length. More...
 
- Public Member Functions inherited from hpp::rbprm::ParabolaPath
virtual ~ParabolaPath () throw ()
 Destructor. More...
 
void initialConfig (core::ConfigurationIn_t initial)
 Modify initial configuration. More...
 
void endConfig (core::ConfigurationIn_t end)
 Modify end configuration. More...
 
core::DevicePtr_t device () const
 Return the internal robot. More...
 
core::Configuration_t initial () const
 Get the initial configuration. More...
 
core::Configuration_t end () const
 Get the final configuration. More...
 
void coefficients (core::vector_t coefs) const
 Set the three parabola coefficients. More...
 
core::vector_t coefficients () const
 Get path coefficients. More...
 
virtual core::value_type computeLength (const core::ConfigurationIn_t q1, const core::ConfigurationIn_t q2) const
 
core::vector_t evaluateVelocity (const core::value_type t) const
 Evaluate velocity vector at path abcissa t. More...
 

Static Public Member Functions

static TimedParabolaPathPtr_t create (const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, ParabolaPathPtr_t parabolaPath)
 Create instance and return shared pointer. More...
 
static TimedParabolaPathPtr_t create (const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients)
 Create instance and return shared pointer. More...
 
static TimedParabolaPathPtr_t create (const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients, core::vector_t V0, core::vector_t Vimp, std::vector< std::string > initialROMnames, std::vector< std::string > endROMnames)
 Create instance and return shared pointer. More...
 
static TimedParabolaPathPtr_t createCopy (const TimedParabolaPathPtr_t &path)
 Create copy and return shared pointer. More...
 
static TimedParabolaPathPtr_t createCopy (const TimedParabolaPathPtr_t &path, const core::ConstraintSetPtr_t &)
 Create copy and return shared pointer. More...
 
- Static Public Member Functions inherited from hpp::rbprm::ParabolaPath
static ParabolaPathPtr_t create (const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients)
 Create instance and return shared pointer. More...
 
static ParabolaPathPtr_t create (const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients, core::vector_t V0, core::vector_t Vimp, std::vector< std::string > initialROMnames, std::vector< std::string > endROMnames)
 Create instance and return shared pointer. More...
 
static ParabolaPathPtr_t createCopy (const ParabolaPathPtr_t &path)
 Create copy and return shared pointer. More...
 
static ParabolaPathPtr_t createCopy (const ParabolaPathPtr_t &path, const core::ConstraintSetPtr_t &)
 Create copy and return shared pointer. More...
 

Protected Member Functions

 TimedParabolaPath (const core::DevicePtr_t &robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end, ParabolaPathPtr_t parabolaPath)
 Constructor. More...
 
 TimedParabolaPath (const core::DevicePtr_t &robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients)
 Constructor. More...
 
 TimedParabolaPath (const core::DevicePtr_t &robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefs, core::vector_t V0, core::vector_t Vimp, std::vector< std::string > initialROMnames, std::vector< std::string > endROMnames)
 Constructor with velocities and ROMnames. More...
 
 TimedParabolaPath (const TimedParabolaPath &path)
 Copy constructor. More...
 
void init (TimedParabolaPathPtr_t self)
 
virtual bool impl_compute (core::ConfigurationOut_t result, core::value_type t) const
 Param is the time. More...
 
virtual double computeTimedLength (double x_theta, double v0, double alpha0)
 
virtual double computeTimedLength (ParabolaPathPtr_t parabolaPath)
 
virtual std::ostream & print (std::ostream &os) const
 Print path in a stream. More...
 
- Protected Member Functions inherited from hpp::rbprm::ParabolaPath
 ParabolaPath (const core::DevicePtr_t &robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients)
 Constructor. More...
 
 ParabolaPath (const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefs, core::vector_t V0_, core::vector_t Vimp, std::vector< std::string > initialROMnames, std::vector< std::string > endROMnames)
 Constructor with velocities and ROMnames. More...
 
 ParabolaPath (const ParabolaPath &path)
 Copy constructor. More...
 
core::value_type lengthFunction (const core::value_type x) const
 
void init (ParabolaPathPtr_t self)
 

Additional Inherited Members

- Public Attributes inherited from hpp::rbprm::ParabolaPath
core::value_type alpha_
 
core::value_type alphaMin_
 
core::value_type alphaMax_
 
core::value_type Xtheta_
 
core::value_type Z_
 
core::vector_t V0_
 
core::vector_t Vimp_
 
std::vector< std::string > initialROMnames_
 
std::vector< std::string > endROMnames_
 

Detailed Description

ballistic path between 2 configurations

call parabola-path but work with the time as parameter instead of x_theta

Member Typedef Documentation

◆ parent_t

Constructor & Destructor Documentation

◆ ~TimedParabolaPath()

virtual hpp::rbprm::TimedParabolaPath::~TimedParabolaPath ( )
throw (
)
inlinevirtual

Destructor.

◆ TimedParabolaPath() [1/4]

hpp::rbprm::TimedParabolaPath::TimedParabolaPath ( const core::DevicePtr_t robot,
core::ConfigurationIn_t  init,
core::ConfigurationIn_t  end,
ParabolaPathPtr_t  parabolaPath 
)
protected

Constructor.

Referenced by create(), createCopy(), and length().

◆ TimedParabolaPath() [2/4]

hpp::rbprm::TimedParabolaPath::TimedParabolaPath ( const core::DevicePtr_t robot,
core::ConfigurationIn_t  init,
core::ConfigurationIn_t  end,
core::value_type  length,
core::vector_t  coefficients 
)
protected

Constructor.

◆ TimedParabolaPath() [3/4]

hpp::rbprm::TimedParabolaPath::TimedParabolaPath ( const core::DevicePtr_t robot,
core::ConfigurationIn_t  init,
core::ConfigurationIn_t  end,
core::value_type  length,
core::vector_t  coefs,
core::vector_t  V0,
core::vector_t  Vimp,
std::vector< std::string >  initialROMnames,
std::vector< std::string >  endROMnames 
)
protected

Constructor with velocities and ROMnames.

◆ TimedParabolaPath() [4/4]

hpp::rbprm::TimedParabolaPath::TimedParabolaPath ( const TimedParabolaPath path)
protected

Copy constructor.

Member Function Documentation

◆ computeTimedLength() [1/2]

virtual double hpp::rbprm::TimedParabolaPath::computeTimedLength ( double  x_theta,
double  v0,
double  alpha0 
)
protectedvirtual

Referenced by init().

◆ computeTimedLength() [2/2]

virtual double hpp::rbprm::TimedParabolaPath::computeTimedLength ( ParabolaPathPtr_t  parabolaPath)
protectedvirtual

◆ copy() [1/2]

virtual core::PathPtr_t hpp::rbprm::TimedParabolaPath::copy ( ) const
inlinevirtual

Return a shared pointer to this.

As TimedParabolaPath are immutable, and refered to by shared pointers, they do not need to be copied.

Reimplemented from hpp::rbprm::ParabolaPath.

References createCopy().

◆ copy() [2/2]

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

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

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

Reimplemented from hpp::rbprm::ParabolaPath.

References createCopy(), extract(), and reverse().

◆ create() [1/3]

static TimedParabolaPathPtr_t hpp::rbprm::TimedParabolaPath::create ( const core::DevicePtr_t device,
core::ConfigurationIn_t  init,
core::ConfigurationIn_t  end,
ParabolaPathPtr_t  parabolaPath 
)
inlinestatic

Create instance and return shared pointer.

Parameters
deviceRobot corresponding to configurations
init,endStart and end configurations of the path
parabolaPath: the path used to compute the position at given time

References init(), and TimedParabolaPath().

◆ create() [2/3]

static TimedParabolaPathPtr_t hpp::rbprm::TimedParabolaPath::create ( const core::DevicePtr_t device,
core::ConfigurationIn_t  init,
core::ConfigurationIn_t  end,
core::value_type  length,
core::vector_t  coefficients 
)
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 init(), and TimedParabolaPath().

◆ create() [3/3]

static TimedParabolaPathPtr_t hpp::rbprm::TimedParabolaPath::create ( const core::DevicePtr_t device,
core::ConfigurationIn_t  init,
core::ConfigurationIn_t  end,
core::value_type  length,
core::vector_t  coefficients,
core::vector_t  V0,
core::vector_t  Vimp,
std::vector< std::string >  initialROMnames,
std::vector< std::string >  endROMnames 
)
inlinestatic

Create instance and return shared pointer.

Parameters
deviceRobot corresponding to configurations
init,endStart and end configurations of the path
lengthDistance between the configurations.
V0,Vimpinitial and final velocity vectors
initialROMnames,endROMnamesinitial and final ROM names

References init(), and TimedParabolaPath().

◆ createCopy() [1/2]

static TimedParabolaPathPtr_t hpp::rbprm::TimedParabolaPath::createCopy ( const TimedParabolaPathPtr_t path)
inlinestatic

Create copy and return shared pointer.

Parameters
pathpath to copy

References init(), and TimedParabolaPath().

Referenced by copy().

◆ createCopy() [2/2]

static TimedParabolaPathPtr_t hpp::rbprm::TimedParabolaPath::createCopy ( const TimedParabolaPathPtr_t path,
const core::ConstraintSetPtr_t &   
)
inlinestatic

Create copy and return shared pointer.

Parameters
pathpath to copy
constraintsthe path is subject to <!> constraints part NOT IMPLEMENTED YET

References init(), and TimedParabolaPath().

◆ device()

core::DevicePtr_t hpp::rbprm::TimedParabolaPath::device ( ) const

Return the internal robot.

Referenced by endConfig().

◆ end()

core::Configuration_t hpp::rbprm::TimedParabolaPath::end ( ) const
inline

Get the final configuration.

Referenced by endConfig(), and length().

◆ endConfig()

void hpp::rbprm::TimedParabolaPath::endConfig ( core::ConfigurationIn_t  end)
inline

Modify end configuration.

Parameters
endnew end configuration
Precondition
input configuration should be of the same size as current end configuration

References assert(), device(), and end().

◆ extract()

virtual core::PathPtr_t hpp::rbprm::TimedParabolaPath::extract ( const core::interval_t &  subInterval) const
throw (core::projection_error
)
virtual

Extraction/Reversion of a sub-path.

Parameters
subIntervalinterval of definition of the extract path If upper bound of subInterval is smaller than lower bound, result is reversed.

Reimplemented from hpp::rbprm::ParabolaPath.

Referenced by copy().

◆ impl_compute()

virtual bool hpp::rbprm::TimedParabolaPath::impl_compute ( core::ConfigurationOut_t  result,
core::value_type  t 
) const
protectedvirtual

Param is the time.

Reimplemented from hpp::rbprm::ParabolaPath.

Referenced by init().

◆ init()

void hpp::rbprm::TimedParabolaPath::init ( TimedParabolaPathPtr_t  self)
inlineprotected

◆ initial()

core::Configuration_t hpp::rbprm::TimedParabolaPath::initial ( ) const
inline

Get the initial configuration.

Referenced by initialConfig().

◆ initialConfig()

void hpp::rbprm::TimedParabolaPath::initialConfig ( core::ConfigurationIn_t  initial)
inline

Modify initial configuration.

Parameters
initialnew initial configuration
Precondition
input configuration should be of the same size as current initial configuration

References assert(), and initial().

◆ length()

virtual core::value_type hpp::rbprm::TimedParabolaPath::length ( ) const
inlinevirtual

Get previously computed length.

Reimplemented from hpp::rbprm::ParabolaPath.

References hpp::rbprm::ParabolaPath::coefficients(), end(), init(), and TimedParabolaPath().

◆ print()

virtual std::ostream& hpp::rbprm::TimedParabolaPath::print ( std::ostream &  os) const
inlineprotectedvirtual

Print path in a stream.

Reimplemented from hpp::rbprm::ParabolaPath.

◆ reverse()

virtual core::PathPtr_t hpp::rbprm::TimedParabolaPath::reverse ( ) const
virtual

Reversion of a path.

Returns
a new path that is this one reversed.

Reimplemented from hpp::rbprm::ParabolaPath.

Referenced by copy().