hpp-core  4.9.0
Implement basic classes for canonical path planning for kinematic chains.
hpp::core::path::Hermite Class Reference

#include <hpp/core/path/hermite.hh>

Inheritance diagram for hpp::core::path::Hermite:
Collaboration diagram for hpp::core::path::Hermite:

Public Types

typedef Spline< BernsteinBasis, 3 > parent_t
 
- Public Types inherited from hpp::core::path::Spline< BernsteinBasis, 3 >
enum  
 
typedef internal::sbf_traits< PolynomeBasis, Ordersbf_traits
 
typedef internal::spline_basis_function< PolynomeBasis, OrderBasisFunction_t
 
typedef Eigen::Matrix< value_type, NbPowerOfT, 1 > PowersOfT_t
 
typedef sbf_traits::Coeffs_t BasisFunctionVector_t
 
typedef sbf_traits::IntegralCoeffs_t BasisFunctionIntegralMatrix_t
 
typedef Eigen::Matrix< value_type, NbCoeffs, Eigen::Dynamic, Eigen::RowMajor > ParameterMatrix_t
 
typedef Eigen::Map< const vector_t, Eigen::Aligned > ConstParameterVector_t
 
typedef Eigen::Map< vector_t, Eigen::Aligned > ParameterVector_t
 
typedef boost::shared_ptr< SplinePtr_t
 
typedef boost::weak_ptr< SplineWkPtr_t
 

Public Member Functions

virtual ~Hermite ()
 Destructor. More...
 
virtual PathPtr_t copy () const
 
virtual PathPtr_t copy (const ConstraintSetPtr_t &constraints) const
 
DevicePtr_t device () const
 Return the internal robot. More...
 
void v0 (const vectorIn_t &speed)
 
void v1 (const vectorIn_t &speed)
 
vector_t v0 () const
 
vector_t v1 () const
 
virtual Configuration_t initial () const
 Get the initial configuration. More...
 
virtual Configuration_t end () const
 Get the final configuration. More...
 
const value_typehermiteLength () const
 
void computeHermiteLength ()
 
vector_t velocity (const value_type &t) const
 
- Public Member Functions inherited from hpp::core::path::Spline< BernsteinBasis, 3 >
size_type parameterSize () const
 
void parameterDerivativeCoefficients (vectorOut_t res, const value_type &t) const
 
void parameterIntegrate (vectorIn_t dParam)
 Adds dParam to the parameters. More...
 
value_type squaredNormIntegral (const size_type order) const
 
void squaredNormIntegralDerivative (const size_type order, vectorOut_t res) const
 
void basisFunctionDerivative (const size_type order, const value_type &u, BasisFunctionVector_t &res) const
 
void basisFunctionDerivative (const size_type order, const value_type &u, vectorOut_t res) const
 
void maxVelocity (vectorOut_t res) const
 
void squaredNormBasisFunctionIntegral (const size_type order, BasisFunctionIntegralMatrix_t &res) const
 
void squaredNormBasisFunctionIntegral (const size_type order, matrixOut_t res) const
 
const Configuration_tbase () const
 
void base (const Configuration_t &q)
 
const ParameterMatrix_tparameters () const
 Each row corresponds to a velocity of the robot. More...
 
void parameters (const ParameterMatrix_t &m)
 
ConstParameterVector_t rowParameters () const
 Concatenate the parameters as one vector (P_0^T, ..., P_n^T). More...
 
void rowParameters (vectorIn_t p)
 Set the parameters. More...
 
PathPtr_t copy () const
 Return a shared pointer to a copy of this. More...
 
PathPtr_t copy (const ConstraintSetPtr_t &constraints) const
 
virtual ~Spline ()
 
- Public Member Functions inherited from hpp::core::Path
virtual ~Path ()
 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
 
PathPtr_t extract (const value_type &tmin, const value_type &tmax) const
 
virtual PathPtr_t reverse () const
 
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
 
Configuration_t eval (const value_type &time, bool &success) const
 
bool eval (ConfigurationOut_t result, const value_type &time) const
 
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
 
void velocityBound (vectorOut_t result, const value_type &t0, const value_type &t1) const
 
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
 
void timeParameterization (const TimeParameterizationPtr_t &tp, const interval_t &tr)
 Set the time parameterization function. More...
 

Static Public Member Functions

static HermitePtr_t create (const DevicePtr_t &device, ConfigurationIn_t init, ConfigurationIn_t end, ConstraintSetPtr_t constraints)
 
static HermitePtr_t createCopy (const HermitePtr_t &path)
 
static HermitePtr_t createCopy (const HermitePtr_t &path, const ConstraintSetPtr_t &constraints)
 
- Static Public Member Functions inherited from hpp::core::path::Spline< BernsteinBasis, 3 >
static void timeFreeBasisFunctionDerivative (const size_type order, const value_type &u, BasisFunctionVector_t &res)
 
static void timeFreeBasisFunctionDerivative (const size_type order, const value_type &u, vectorOut_t res)
 
static Ptr_t create (const DevicePtr_t &robot, const interval_t &interval, const ConstraintSetPtr_t &constraints)
 
static void value (pinocchio::LiegroupElementConstRef base, Eigen::Ref< const ParameterMatrix_t > params, const value_type &u, ConfigurationOut_t config, vectorOut_t velocity)
 

Protected Member Functions

virtual std::ostream & print (std::ostream &os) const
 Print path in a stream. More...
 
 Hermite (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end)
 Constructor. More...
 
 Hermite (const DevicePtr_t &robot, ConfigurationIn_t init, ConfigurationIn_t end, ConstraintSetPtr_t constraints)
 Constructor with constraints. More...
 
 Hermite (const Hermite &path)
 Copy constructor. More...
 
 Hermite (const Hermite &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
void init (HermitePtr_t self)
 
- Protected Member Functions inherited from hpp::core::path::Spline< BernsteinBasis, 3 >
 Spline (const DevicePtr_t &robot, const interval_t &interval, const ConstraintSetPtr_t &constraints)
 
 Spline (const Spline &path)
 
 Spline (const Spline &path, const ConstraintSetPtr_t &constraints)
 
void init (const Ptr_t &self)
 
std::ostream & print (std::ostream &os) const
 
bool impl_compute (ConfigurationOut_t configuration, value_type t) const
 Function evaluation without applying constraints. More...
 
void impl_derivative (vectorOut_t res, const value_type &t, size_type order) const
 
void impl_paramDerivative (vectorOut_t res, const value_type &t) const
 
void impl_paramIntegrate (vectorIn_t dParam)
 
void impl_velocityBound (vectorOut_t result, const value_type &t0, const value_type &t1) const
 
- 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. More...
 
 Path (const Path &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
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. 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
 
virtual PathPtr_t impl_extract (const interval_t &paramInterval) const
 Virtual implementation of extract. More...
 

Additional Inherited Members

- Protected Attributes inherited from hpp::core::path::Spline< BernsteinBasis, 3 >
size_type parameterSize_
 Robot number of degrees of freedom. More...
 
DevicePtr_t robot_
 
LiegroupElement base_
 
ParameterMatrix_t parameters_
 
- Protected Attributes inherited from hpp::core::Path
interval_t paramRange_
 Interval of parameters. More...
 

Member Typedef Documentation

◆ parent_t

Constructor & Destructor Documentation

◆ ~Hermite()

virtual hpp::core::path::Hermite::~Hermite ( )
inlinevirtual

Destructor.

◆ Hermite() [1/4]

hpp::core::path::Hermite::Hermite ( const DevicePtr_t robot,
ConfigurationIn_t  init,
ConfigurationIn_t  end 
)
protected

Constructor.

◆ Hermite() [2/4]

hpp::core::path::Hermite::Hermite ( const DevicePtr_t robot,
ConfigurationIn_t  init,
ConfigurationIn_t  end,
ConstraintSetPtr_t  constraints 
)
protected

Constructor with constraints.

◆ Hermite() [3/4]

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

Copy constructor.

◆ Hermite() [4/4]

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

Copy constructor with constraints.

Member Function Documentation

◆ computeHermiteLength()

void hpp::core::path::Hermite::computeHermiteLength ( )

◆ copy() [1/2]

virtual PathPtr_t hpp::core::path::Hermite::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.

Implements hpp::core::Path.

◆ copy() [2/2]

virtual PathPtr_t hpp::core::path::Hermite::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.

Implements hpp::core::Path.

◆ create()

static HermitePtr_t hpp::core::path::Hermite::create ( const DevicePtr_t device,
ConfigurationIn_t  init,
ConfigurationIn_t  end,
ConstraintSetPtr_t  constraints 
)
inlinestatic

◆ createCopy() [1/2]

static HermitePtr_t hpp::core::path::Hermite::createCopy ( const HermitePtr_t path)
inlinestatic

Create copy and return shared pointer

Parameters
pathpath to copy

◆ createCopy() [2/2]

static HermitePtr_t hpp::core::path::Hermite::createCopy ( const HermitePtr_t path,
const ConstraintSetPtr_t constraints 
)
inlinestatic

Create copy and return shared pointer

Parameters
pathpath to copy
constraintsthe path is subject to

◆ device()

DevicePtr_t hpp::core::path::Hermite::device ( ) const

Return the internal robot.

◆ end()

virtual Configuration_t hpp::core::path::Hermite::end ( ) const
inlinevirtual

Get the final configuration.

Reimplemented from hpp::core::path::Spline< BernsteinBasis, 3 >.

◆ hermiteLength()

const value_type& hpp::core::path::Hermite::hermiteLength ( ) const
inline

◆ init()

void hpp::core::path::Hermite::init ( HermitePtr_t  self)
protected

◆ initial()

virtual Configuration_t hpp::core::path::Hermite::initial ( ) const
inlinevirtual

Get the initial configuration.

Reimplemented from hpp::core::path::Spline< BernsteinBasis, 3 >.

◆ print()

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

Print path in a stream.

Reimplemented from hpp::core::Path.

◆ v0() [1/2]

void hpp::core::path::Hermite::v0 ( const vectorIn_t speed)
inline

◆ v0() [2/2]

vector_t hpp::core::path::Hermite::v0 ( ) const
inline

◆ v1() [1/2]

void hpp::core::path::Hermite::v1 ( const vectorIn_t speed)
inline

◆ v1() [2/2]

vector_t hpp::core::path::Hermite::v1 ( ) const
inline

◆ velocity()

vector_t hpp::core::path::Hermite::velocity ( const value_type t) const

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