Cubic B-Spline trajectory. More...
#include <roboptim/trajectory/cubic-b-spline.hh>
Inheritance diagram for roboptim::CubicBSpline:Public Member Functions | |
| CubicBSpline (interval_t timeRange, size_type dimension, const vector_t ¶meters, const std::string name="cubic B-Spline") throw () | |
| Instantiate a cubic B-Spline from its definition. More... | |
| CubicBSpline (const CubicBSpline &spline) throw () | |
| Copy constructor. More... | |
| virtual | ~CubicBSpline () throw () |
| virtual void | setParameters (const vector_t &) throw () |
| Modify spline parameters. More... | |
| virtual jacobian_t | variationConfigWrtParam (double t) const throw () |
| Get the variation of a configuration with respect to parameter vector. More... | |
| virtual jacobian_t | variationDerivWrtParam (double t, size_type order) const throw () |
| Get the variation of a derivative with respect to parameter vector. More... | |
| virtual value_type | singularPointAtRank (size_type rank) const |
| Get singular point at given rank. More... | |
| virtual vector_t | derivBeforeSingularPoint (size_type rank, size_type order) const |
| Get left limit value of derivative at given singular point. More... | |
| virtual vector_t | derivAfterSingularPoint (size_type rank, size_type order) const |
| Get right limit value of derivative at given singular point. More... | |
| virtual Trajectory < derivabilityOrder > * | resize (interval_t timeRange) const throw () |
| Clone and resize a trajectory. More... | |
| virtual std::ostream & | print (std::ostream &o) const throw () |
| Display the function on the specified output stream. More... | |
| jacobian_t | variationConfigWrtParam (StableTimePoint tp) const throw () |
| jacobian_t | variationDerivWrtParam (StableTimePoint tp, size_type order) const throw () |
Public Member Functions inherited from roboptim::Trajectory< 3 > | |
| virtual | ~Trajectory () throw () |
| result_t | operator() (StableTimePoint argument) const throw () |
| void | operator() (result_t &result, StableTimePoint argument) const throw () |
| gradient_t | derivative (StableTimePoint argument, size_type order=1) const throw () |
| void | derivative (gradient_t &derivative, StableTimePoint argument, size_type order=1) const throw () |
| bool | isValidTime (value_type t) const throw () |
| virtual void | normalizeAngles (size_type index) throw () |
| Normalize angles in parameters array. More... | |
| virtual Trajectory < DerivabilityOrder > * | clone () const =0 throw () |
| const vector_t & | parameters () const throw () |
| interval_t | timeRange () const throw () |
| value_type | length () const throw () |
| virtual vector_t | state (double t, size_type order) const throw () |
| Get state along trajectory. More... | |
| virtual vector_t | state (StableTimePoint t, size_type order) const throw () |
| jacobian_t | variationStateWrtParam (double t, size_type order) const throw () |
| Get the variation of the state with respect to parameter vector. More... | |
| jacobian_t | variationStateWrtParam (StableTimePoint stp, size_type order) const throw () |
| size_type | singularPoints () const throw () |
| Get number of singular points. More... | |
Protected Member Functions | |
| void | impl_compute (result_t &, double) const throw () |
| void | impl_derivative (gradient_t &g, double x, size_type order) const throw () |
| void | impl_derivative (gradient_t &g, StableTimePoint, size_type order) const throw () |
| value_type | Dt () const |
| size_type | interval (value_type t) const |
| vector_t | basisFunctions (value_type t, size_type order) const |
Protected Member Functions inherited from roboptim::Trajectory< 3 > | |
| virtual void | normalizeAngles (size_type index, size_type offset) throw () |
| Internal version of normalizeAngles allowing an optional offset. More... | |
| void | impl_compute (result_t &, StableTimePoint) const throw () |
| Trajectory (interval_t, size_type, const vector_t &, std::string name=std::string()) throw () | |
Additional Inherited Members | |
Public Types inherited from roboptim::Trajectory< 3 > | |
| typedef NTimesDerivableFunction < DerivabilityOrder > | parent_t |
| Parent type. More... | |
| typedef parent_t::value_type | value_type |
| Import value type. More... | |
| typedef parent_t::size_type | size_type |
| Import size type. More... | |
| typedef parent_t::vector_t | vector_t |
| Import vector type. More... | |
| typedef parent_t::result_t | result_t |
| Import result type. More... | |
| typedef parent_t::gradient_t | gradient_t |
| Import gradient type. More... | |
| typedef parent_t::jacobian_t | jacobian_t |
| Import jacobian type. More... | |
| typedef parent_t::interval_t | interval_t |
| Import interval type. More... | |
Protected Attributes inherited from roboptim::Trajectory< 3 > | |
| interval_t | timeRange_ |
| vector_t | parameters_ |
| size_type | singularPoints_ |
Cubic B-Spline trajectory.
Implement a B-Spline as a trajectory as described below: given
of control points,
,
,
control points
in
, the cubic B-spline of control points
is defined over
by
are defined by:
| roboptim::CubicBSpline::CubicBSpline | ( | interval_t | timeRange, |
| size_type | dimension, | ||
| const vector_t & | parameters, | ||
| const std::string | name = "cubic B-Spline" |
||
| ) | |||
| throw | ( | ||
| ) | |||
Instantiate a cubic B-Spline from its definition.
| timeRange | spline time range: $ |
| dimension | spline dimension: |
| parameters | vector of parameters defining control points |
| name | function title |
Number of control points is inferred from dimension of dimenion of parameter vector.
Referenced by resize().
| roboptim::CubicBSpline::CubicBSpline | ( | const CubicBSpline & | spline) | ||
| throw | ( | ||||
| ) | |||||
Copy constructor.
| spline | spline that will be copied |
|
virtual | |||||||||||||
|
protected |
References Dt(), interval(), and roboptim::Trajectory< 3 >::timeRange().
|
virtual |
Get right limit value of derivative at given singular point.
| rank | rank of the singular points. |
| order | order of derivation. |
| derivative | Limit of the derivative at singular point for decreasing parameter values. |
Implements roboptim::Trajectory< 3 >.
References roboptim::Trajectory< 3 >::derivative(), and singularPointAtRank().
|
virtual |
Get left limit value of derivative at given singular point.
| rank | rank of the singular points. |
| order | order of derivation. |
Implements roboptim::Trajectory< 3 >.
References roboptim::Trajectory< 3 >::derivative(), and singularPointAtRank().
|
protected |
References roboptim::Trajectory< 3 >::length().
Referenced by basisFunctions(), and interval().
|
protected | ||||||||||||||||||||
|
protected | ||||||||||||||||||||||||
|
protectedvirtual | ||||||||||||||||||||||||
Implements roboptim::Trajectory< 3 >.
|
protected |
References Dt(), and roboptim::Trajectory< 3 >::timeRange().
Referenced by basisFunctions().
|
virtual | ||||||||||||||
Display the function on the specified output stream.
| o | output stream used for display |
Reimplemented from roboptim::Trajectory< 3 >.
|
inlinevirtual | ||||||||||||||
|
virtual | ||||||||||||||
Modify spline parameters.
Reimplemented from roboptim::Trajectory< 3 >.
Referenced by roboptim::SplineLength::impl_compute(), and roboptim::SplineLength::impl_gradient().
|
virtual |
Get singular point at given rank.
Implements roboptim::Trajectory< 3 >.
References roboptim::Trajectory< 3 >::length().
Referenced by derivAfterSingularPoint(), and derivBeforeSingularPoint().
|
virtual | ||||||||||||||
Get the variation of a configuration with respect to parameter vector.
| t | value in the definition interval. |
Implements roboptim::Trajectory< 3 >.
|
virtual | ||||||||||||||
Implements roboptim::Trajectory< 3 >.
|
virtual | ||||||||||||||||||||
Get the variation of a derivative with respect to parameter vector.
| t | value in the definition interval. |
| order | order of the derivative. |
Implements roboptim::Trajectory< 3 >.
|
virtual | ||||||||||||||||||||
Implements roboptim::Trajectory< 3 >.