hpp-core 7.0.0
Implement basic classes for canonical path planning for kinematic chains.
Loading...
Searching...
No Matches
hpp::core::timeParameterization::PiecewisePolynomial< _Order > Class Template Reference

#include <hpp/core/time-parameterization/piecewise-polynomial.hh>

Inheritance diagram for hpp::core::timeParameterization::PiecewisePolynomial< _Order >:
Collaboration diagram for hpp::core::timeParameterization::PiecewisePolynomial< _Order >:

Public Types

enum  { Order = _Order , NbCoeffs = Order + 1 }
typedef Eigen::Matrix< value_type, NbCoeffs, Eigen::Dynamic, Eigen::ColMajor > ParameterMatrix_t
typedef Eigen::Matrix< value_type, Eigen::Dynamic, 1 > Vector_t

Public Member Functions

 PiecewisePolynomial (const ParameterMatrix_t &parameters, const Vector_t &breakpoints)
const ParameterMatrix_tparameters () const
const std::vector< value_type > & breakpoints () const
TimeParameterizationPtr_t copy () const
value_type value (const value_type &t) const
 Computes \( \sum_{i=0}^n a_i t^i \).
value_type derivative (const value_type &t, const size_type &order) const
 Computes \( \sum_{i=1}^n i a_i t^{i-1} \).
bool polynomialsStartAtZero () const
void polynomialsStartAtZero (bool startAtZero)
 See the corresponding getter.
Public Member Functions inherited from hpp::core::TimeParameterization
virtual value_type derivativeBound (const value_type &low, const value_type &up) const

Member Typedef Documentation

◆ ParameterMatrix_t

template<int _Order>
typedef Eigen::Matrix<value_type, NbCoeffs, Eigen::Dynamic, Eigen::ColMajor> hpp::core::timeParameterization::PiecewisePolynomial< _Order >::ParameterMatrix_t

◆ Vector_t

template<int _Order>
typedef Eigen::Matrix<value_type, Eigen::Dynamic, 1> hpp::core::timeParameterization::PiecewisePolynomial< _Order >::Vector_t

Member Enumeration Documentation

◆ anonymous enum

template<int _Order>
anonymous enum
Enumerator
Order 
NbCoeffs 

Constructor & Destructor Documentation

◆ PiecewisePolynomial()

template<int _Order>
hpp::core::timeParameterization::PiecewisePolynomial< _Order >::PiecewisePolynomial(const ParameterMatrix_t &parameters,
const Vector_t &breakpoints )
inline

Construct piecewise polynomials of order k and defined by N polynomial.

Parameters
parametersMatrix of polynomials coefficients (size k x N).
breakpointsDomain of the piecewise polynomial, defined by N+1 breakpoints defining the half-open intervals of each polynomial.

Member Function Documentation

◆ breakpoints()

template<int _Order>
const std::vector< value_type > & hpp::core::timeParameterization::PiecewisePolynomial< _Order >::breakpoints()const
inline

◆ copy()

◆ derivative()

template<int _Order>
value_type hpp::core::timeParameterization::PiecewisePolynomial< _Order >::derivative(const value_type &t,
const size_type &order ) const
inlinevirtual

Computes \( \sum_{i=1}^n i a_i t^{i-1} \).

Implements hpp::core::TimeParameterization.

◆ parameters()

template<int _Order>
const ParameterMatrix_t & hpp::core::timeParameterization::PiecewisePolynomial< _Order >::parameters()const
inline

◆ polynomialsStartAtZero() [1/2]

template<int _Order>
bool hpp::core::timeParameterization::PiecewisePolynomial< _Order >::polynomialsStartAtZero()const
inline

Whether the polynomial should be shifted.

If true, when evaluating the polynomials, the initial breakpoint time of a polynomial is substracted. A polynomial defined between \( [ t_k, t_{k+1} [ \) evaluates to \( P(t) = \sum_{i=0}^n a_i (t - t_k)^i \).

This defaults to false.

◆ polynomialsStartAtZero() [2/2]

template<int _Order>
void hpp::core::timeParameterization::PiecewisePolynomial< _Order >::polynomialsStartAtZero(boolstartAtZero)
inline

See the corresponding getter.

◆ value()

template<int _Order>
value_type hpp::core::timeParameterization::PiecewisePolynomial< _Order >::value(const value_type &t)const
inlinevirtual

Computes \( \sum_{i=0}^n a_i t^i \).

Implements hpp::core::TimeParameterization.


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