core / com.acmerobotics.roadrunner.path.heading / HeadingInterpolator

HeadingInterpolator

abstract class HeadingInterpolator

Interpolator for specifying the heading for holonomic paths.

Constructors

<init>

HeadingInterpolator()

Interpolator for specifying the heading for holonomic paths.

Properties

curve

lateinit var curve: ParametricCurve

Base parametric curve

Functions

deriv

fun deriv(s: Double, t: Double = curve.reparam(s)): Double

Returns the heading derivative at the specified s.

end

fun end(): Double

Returns the end heading.

endDeriv

fun endDeriv(): Double

Returns the end heading derivative.

endSecondDeriv

fun endSecondDeriv(): Double

Returns the end heading second derivative.

get

operator fun get(s: Double, t: Double = curve.reparam(s)): Double

Returns the heading at the specified s.

init

open fun init(curve: ParametricCurve): Unit

Initialize the interpolator with a curve.

secondDeriv

fun secondDeriv(s: Double, t: Double = curve.reparam(s)): Double

Returns the heading second derivative at the specified s.

start

fun start(): Double

Returns the start heading.

startDeriv

fun startDeriv(): Double

Returns the start heading derivative.

startSecondDeriv

fun startSecondDeriv(): Double

Returns the start heading second derivative.

Inheritors

ConstantInterpolator

class ConstantInterpolator : HeadingInterpolator

Constant heading interpolator used for arbitrary holonomic translations.

LinearInterpolator

class LinearInterpolator : HeadingInterpolator

Linear heading interpolator for time-optimal transitions between poses.

SplineInterpolator

class SplineInterpolator : HeadingInterpolator

Spline heading interpolator for transitioning smoothly between headings without violating continuity (and hence allowing for integration into longer profiles).

TangentInterpolator

class TangentInterpolator : HeadingInterpolator

Tangent (system) interpolator for tank/differential and other nonholonomic drives.

WiggleInterpolator

class WiggleInterpolator : HeadingInterpolator

Heading interpolator that wraps another interpolator and adds sinusoidal oscillations ("wiggles") while preserving continuity. More specifically, the wiggle function is composed of a sine wave with a quintic spline on either end.