|
RIT VEXU Core API
|
CRTP base class for Hermite splines of specific polynomial order. More...
#include <spline_base.h>
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. | |
CRTP base class for Hermite splines of specific polynomial order.
| Order | The polynomial order (e.g., 3 for Cubic, 5 for Quintic). |