cpp_robotics::eigen_spline_api
More...
#include <spline_path.hpp>
Public Types
Public Functions
|
Name |
SplineCoeff |
bezier_spline(const Vector & p0, const Vector & p1, const Vector & p2, const Vector & p3) |
SplineCoeff |
hermite_spline(const Vector & p0, const Vector & p1, const Vector & v0, const Vector & v1) |
SplineCoeff |
catumull_spline(const Vector & p0, const Vector & p1, const Vector & p2, const Vector & p3) |
SplineCoeff |
cubic_function_to_bezier(const Vector & a, const Vector & b, const Vector & c, const Vector & d) |
WeightVector |
bezier_weight(const double t) |
WeightVector |
bezier_weight(const WeightVector t) |
Vector |
evaluate(const SplineCoeff & spline, const WeightVector & w) |
Vector |
position(const SplineCoeff & spline, double t) |
Vector |
velocity(const SplineCoeff & spline, double t) |
Vector |
acceleration(const SplineCoeff & spline, double t) |
void |
split(const WeightVector & spline, WeightVector & spline0, WeightVector & spline1, double t) |
void |
split(const WeightVector & spline, WeightVector & spline0, WeightVector & spline1) |
void |
split(const SplineCoeff & spline, SplineCoeff & spline0, SplineCoeff & spline1) |
void |
split(const SplineCoeff & spline, SplineCoeff & spline0, SplineCoeff & spline1, double t) |
double |
length_estimate(const SplineCoeff & s, double & error) |
double |
length(const SplineCoeff & s, double max_error) |
double |
length(const SplineCoeff & s, double t0, double t1, double max_error) |
Public Attributes
Detailed Description
template <class VectorType >
struct cpp_robotics::eigen_spline_api;
Public Types Documentation
using Vector
using cpp_robotics::eigen_spline_api< VectorType >::Vector = VectorType;
using Scalar
using cpp_robotics::eigen_spline_api< VectorType >::Scalar = typename Vector::Scalar;
using SplineCoeff
using cpp_robotics::eigen_spline_api< VectorType >::SplineCoeff = Eigen::Matrix<Scalar, Dim, 4>;
using WeightVector
using cpp_robotics::eigen_spline_api< VectorType >::WeightVector = Eigen::Matrix<Scalar, 4, 1>;
Public Functions Documentation
function bezier_spline
static inline SplineCoeff bezier_spline(
const Vector & p0,
const Vector & p1,
const Vector & p2,
const Vector & p3
)
function hermite_spline
static inline SplineCoeff hermite_spline(
const Vector & p0,
const Vector & p1,
const Vector & v0,
const Vector & v1
)
function catumull_spline
static inline SplineCoeff catumull_spline(
const Vector & p0,
const Vector & p1,
const Vector & p2,
const Vector & p3
)
function cubic_function_to_bezier
static inline SplineCoeff cubic_function_to_bezier(
const Vector & a,
const Vector & b,
const Vector & c,
const Vector & d
)
function bezier_weight
static inline WeightVector bezier_weight(
const double t
)
function bezier_weight
static inline WeightVector bezier_weight(
const WeightVector t
)
function evaluate
static inline Vector evaluate(
const SplineCoeff & spline,
const WeightVector & w
)
function position
static inline Vector position(
const SplineCoeff & spline,
double t
)
function velocity
static inline Vector velocity(
const SplineCoeff & spline,
double t
)
function acceleration
static inline Vector acceleration(
const SplineCoeff & spline,
double t
)
function split
static inline void split(
const WeightVector & spline,
WeightVector & spline0,
WeightVector & spline1,
double t
)
function split
static inline void split(
const WeightVector & spline,
WeightVector & spline0,
WeightVector & spline1
)
function split
static inline void split(
const SplineCoeff & spline,
SplineCoeff & spline0,
SplineCoeff & spline1
)
function split
static inline void split(
const SplineCoeff & spline,
SplineCoeff & spline0,
SplineCoeff & spline1,
double t
)
function length_estimate
static inline double length_estimate(
const SplineCoeff & s,
double & error
)
function length
static inline double length(
const SplineCoeff & s,
double max_error
)
function length
static inline double length(
const SplineCoeff & s,
double t0,
double t1,
double max_error
)
Public Attributes Documentation
variable Dim
static constexpr int Dim = Vector::RowsAtCompileTime;
Updated on 2024-05-28 at 06:55:40 +0000