Namespaces | |
helpers | |
Classes | |
struct | bezier_curve |
struct | cubic_hermite_spline |
struct | curve_abc |
Represents a curve of dimension Dim. More... | |
struct | curve_constraints |
struct | exact_cubic |
struct | linear_variable |
struct | piecewise_curve |
class | polynomial |
Represents a polynomial of an arbitrary order defined on the interval ![]() | |
class | SplineOptimizer |
Mosek connection to produce optimized splines. More... | |
struct | variables |
Functions | |
template<typename Point , typename T_Point > | |
T_Point | make_cubic_vector (Point const &a, Point const &b, Point const &c, Point const &d) |
Creates coefficient vector of a cubic spline defined on the interval ![]() | |
template<typename Time , typename Numeric , bool Safe, typename Point , typename T_Point > | |
polynomial< Time, Numeric, Safe, Point, T_Point > | create_cubic (Point const &a, Point const &b, Point const &c, Point const &d, const Time t_min, const Time t_max) |
template<typename Polynomial , typename curveTypeToConvert > | |
Polynomial | polynomial_from_curve (const curveTypeToConvert &curve) |
Converts a cubic hermite spline or a bezier curve to a polynomial. More... | |
template<typename Bezier , typename curveTypeToConvert > | |
Bezier | bezier_from_curve (const curveTypeToConvert &curve) |
Converts a cubic hermite spline or polynomial of order 3 or less to a cubic bezier curve. More... | |
template<typename Hermite , typename curveTypeToConvert > | |
Hermite | hermite_from_curve (const curveTypeToConvert &curve) |
Converts a polynomial of order 3 or less/cubic bezier curve to a cubic hermite spline. More... | |
template<int D, typename N > | |
linear_variable< D, N > | operator+ (const linear_variable< D, N > &w1, const linear_variable< D, N > &w2) |
template<int D, typename N > | |
linear_variable< D, N > | operator- (const linear_variable< D, N > &w1, const linear_variable< D, N > &w2) |
template<int D, typename N > | |
linear_variable< D, N > | operator* (const double k, const linear_variable< D, N > &w) |
template<int D, typename N > | |
linear_variable< D, N > | operator* (const linear_variable< D, N > &w, const double k) |
template<int D, typename N > | |
linear_variable< D, N > | operator/ (const linear_variable< D, N > &w, const double k) |
template<typename V > | |
variables< V > | operator+ (const variables< V > &w1, const variables< V > &w2) |
template<typename V > | |
variables< V > | operator- (const variables< V > &w1, const variables< V > &w2) |
template<typename V > | |
variables< V > | operator* (const double k, const variables< V > &w) |
template<typename V > | |
variables< V > | operator* (const variables< V > &w, const double k) |
template<typename V > | |
variables< V > | operator/ (const variables< V > &w, const double k) |
template<typename _Matrix_Type_ > | |
void | PseudoInverse (_Matrix_Type_ &pinvmat) |
template<typename Point , typename T_Point > | |
T_Point | make_quintic_vector (Point const &a, Point const &b, Point const &c, Point const &d, Point const &e, Point const &f) |
Creates coefficient vector of a quintic spline defined on the interval ![]() | |
template<typename Time , typename Numeric , bool Safe, typename Point , typename T_Point > | |
polynomial< Time, Numeric, Safe, Point, T_Point > | create_quintic (Point const &a, Point const &b, Point const &c, Point const &d, Point const &e, Point const &f, const Time t_min, const Time t_max) |
Bezier curves::bezier_from_curve | ( | const curveTypeToConvert & | curve | ) |
Converts a cubic hermite spline or polynomial of order 3 or less to a cubic bezier curve.
curve | : the polynomial of order 3 or less/cubic hermite spline defined between [Tmin,Tmax] to convert. |
polynomial<Time, Numeric, Safe, Point, T_Point> curves::create_cubic | ( | Point const & | a, |
Point const & | b, | ||
Point const & | c, | ||
Point const & | d, | ||
const Time | t_min, | ||
const Time | t_max | ||
) |
polynomial<Time, Numeric, Safe, Point, T_Point> curves::create_quintic | ( | Point const & | a, |
Point const & | b, | ||
Point const & | c, | ||
Point const & | d, | ||
Point const & | e, | ||
Point const & | f, | ||
const Time | t_min, | ||
const Time | t_max | ||
) |
Hermite curves::hermite_from_curve | ( | const curveTypeToConvert & | curve | ) |
Converts a polynomial of order 3 or less/cubic bezier curve to a cubic hermite spline.
curve | : the polynomial of order 3 or less/cubic bezier curve defined between [Tmin,Tmax] to convert. |
T_Point curves::make_cubic_vector | ( | Point const & | a, |
Point const & | b, | ||
Point const & | c, | ||
Point const & | d | ||
) |
Creates coefficient vector of a cubic spline defined on the interval .
It follows the equation :
where
with a, b, c and d the control points.
T_Point curves::make_quintic_vector | ( | Point const & | a, |
Point const & | b, | ||
Point const & | c, | ||
Point const & | d, | ||
Point const & | e, | ||
Point const & | f | ||
) |
Creates coefficient vector of a quintic spline defined on the interval .
It follows the equation :
where .
linear_variable<D, N> curves::operator* | ( | const double | k, |
const linear_variable< D, N > & | w | ||
) |
linear_variable<D, N> curves::operator* | ( | const linear_variable< D, N > & | w, |
const double | k | ||
) |
References curves::variables< Var >::variables_.
References curves::variables< Var >::variables_.
|
inline |
variables<V> curves::operator+ | ( | const variables< V > & | w1, |
const variables< V > & | w2 | ||
) |
References curves::variables< Var >::variables_.
linear_variable<D, N> curves::operator- | ( | const linear_variable< D, N > & | w1, |
const linear_variable< D, N > & | w2 | ||
) |
variables<V> curves::operator- | ( | const variables< V > & | w1, |
const variables< V > & | w2 | ||
) |
References curves::variables< Var >::variables_.
linear_variable<D, N> curves::operator/ | ( | const linear_variable< D, N > & | w, |
const double | k | ||
) |
References curves::variables< Var >::variables_.
Polynomial curves::polynomial_from_curve | ( | const curveTypeToConvert & | curve | ) |
Converts a cubic hermite spline or a bezier curve to a polynomial.
curve | : the bezier curve/cubic hermite spline defined between [Tmin,Tmax] to convert. |
void curves::PseudoInverse | ( | _Matrix_Type_ & | pinvmat | ) |