9 #ifndef _parameteric_curves_minimum_jerk_hpp
10 #define _parameteric_curves_minimum_jerk_hpp
19 template <
typename Numeric = double, Eigen::Index Dim = 1,
20 typename Point = Eigen::Matrix<Numeric, Dim, 1> >
31 const point_t& x_init_ = Eigen::Matrix<Numeric, Dim, 1>::Zero(),
32 const point_t& x_final_ = Eigen::Matrix<Numeric, Dim, 1>::Zero())
45 time_t p = 10 * td3 - 15 * td4 + 6 * td5;
50 const std::size_t& order)
const {
57 time_t dp = (30 * td2 - 60 * td3 + 30 * td4) / this->
t_max;
59 }
else if (order == 2) {
61 (60 * td - 180 * td2 + 120 * td3) / (this->
t_max * this->
t_max);
64 std::cerr <<
"Higher order derivatives not supported" << std::endl;
65 return point_t::Zero(Dim);
72 if (x_init_.size() !=
x_init.size())
return false;
77 if (Dim != 1)
return false;
83 if (
x_final.size() != x_final_.size())
return false;
89 if (Dim != 1)
return false;
Definition: abstract-curve.hpp:16
Eigen::Matrix< Numeric, 3, 1 > Point
Definition: effector_spline.h:28
double Numeric
Definition: effector_spline.h:26
Represents a curve of dimension Dim is Safe is false, no verification is made on the evaluation of th...
Definition: abstract-curve.hpp:21
time_t t_max
Definition: abstract-curve.hpp:65
Creates MinimumJerk curve.
Definition: minimum-jerk.hpp:21
MinimumJerk(const time_t &traj_time_, const point_t &x_init_=Eigen::Matrix< Numeric, Dim, 1 >::Zero(), const point_t &x_final_=Eigen::Matrix< Numeric, Dim, 1 >::Zero())
Constructor.
Definition: minimum-jerk.hpp:30
Numeric num_t
Definition: minimum-jerk.hpp:24
point_t x_init
Definition: minimum-jerk.hpp:96
Point point_t
Definition: minimum-jerk.hpp:22
virtual const point_t operator()(const time_t &t) const
Definition: minimum-jerk.hpp:39
virtual bool setInitialPoint(const point_t &x_init_)
Definition: minimum-jerk.hpp:71
~MinimumJerk()
Destructor.
Definition: minimum-jerk.hpp:36
virtual bool setInitialPoint(const num_t &x_init_)
Definition: minimum-jerk.hpp:76
virtual const point_t derivate(const time_t &t, const std::size_t &order) const
Definition: minimum-jerk.hpp:49
point_t x_final
Definition: minimum-jerk.hpp:97
virtual bool setFinalPoint(const point_t &x_final_)
Definition: minimum-jerk.hpp:82
Numeric time_t
Definition: minimum-jerk.hpp:23
AbstractCurve< Numeric, Point > curve_abc_t
Definition: minimum-jerk.hpp:25
virtual bool setFinalPoint(const double &x_final_)
Definition: minimum-jerk.hpp:88