RIT VEXU Core API
Loading...
Searching...
No Matches
HermiteSpline< Order > Class Template Reference

CRTP base class for Hermite splines of specific polynomial order. More...

#include <spline_base.h>

Inheritance diagram for HermiteSpline< Order >:
SplineBase

Additional Inherited Members

Public Member Functions inherited from SplineBase
Rotation2d heading (double u) const
 Computes heading angle theta at spline parameter u.
units::Curvature curvature (double u) const
 Computes path curvature at parameter u.
double length () const
 Returns total arc length of the spline in inches.
double u_from_s (double s) const
 Inverts arc distance s to spline parameter u.
SplineSample sample (double u) const
 Samples complete state (position, velocity, acceleration, heading, curvature) at parameter u.
SplineSample sample_by_s (double s) const
 Samples complete state at arc distance s.
std::vector< Translation2d > sample_by_count (int count) const
 Samples 2D positions uniformly spaced in parameter u.
std::vector< Translation2d > sample_by_spacing (double ds) const
 Samples 2D positions uniformly spaced by arc distance ds.
Protected Member Functions inherited from SplineBase
double integrate_segment_length (double u0, double u1) const
 Computes high-accuracy arc length over sub-interval [u0, u1] using 5-point Gauss-Legendre quadrature.
void build_arc_table_recursive (double u0, double u1, double s0, double segment_length, double max_err)
 Recursively builds the arc table to satisfy a linear interpolation error bound.
void build_arc_table (double max_err=1e-4)
 Builds pre-computed parameter u and arc-length lookup tables using adaptive refinement.
Static Protected Member Functions inherited from SplineBase
template<size_t N>
static double eval_poly (const std::array< double, N > &coeffs, double u)
 Evaluates polynomial P(u) using Horner's method.
template<size_t N>
static double eval_poly_derivative (const std::array< double, N > &coeffs, double u)
 Evaluates first derivative P'(u) using Horner's method.
template<size_t N>
static double eval_poly_second_derivative (const std::array< double, N > &coeffs, double u)
 Evaluates second derivative P''(u) using Horner's method.

Detailed Description

template<size_t Order>
class HermiteSpline< Order >

CRTP base class for Hermite splines of specific polynomial order.

Template Parameters
OrderThe polynomial order (e.g., 3 for Cubic, 5 for Quintic).

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