public class WiggleInterpolator
extends 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.
parametricCurve
Constructor and Description |
---|
WiggleInterpolator(double amplitude,
double desiredPeriod,
HeadingInterpolator baseInterpolator)
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.
|
Modifier and Type | Method and Description |
---|---|
void |
init(ParametricCurve parametricCurve)
Initialize the interpolator with a
parametricCurve . |
protected double |
internalDeriv(double s,
double t) |
protected double |
internalGet(double s,
double t) |
protected double |
internalSecondDeriv(double s,
double t) |
boolean |
respectsDerivativeContinuity()
Returns true if the heading interpolator respects derivative continuity at path segment endpoints. That is,
the start and end heading derivatives match those of the
class TangentInterpolator . |
deriv, deriv, end, endDeriv, endSecondDeriv, get, get, getParametricCurve, init, internalDeriv, internalGet, internalSecondDeriv, respectsDerivativeContinuity, secondDeriv, secondDeriv, setParametricCurve, start, startDeriv, startSecondDeriv
public WiggleInterpolator(double amplitude, double desiredPeriod, @NotNull HeadingInterpolator baseInterpolator)
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.
amplitude
- amplitude of the wiggle oscillationsdesiredPeriod
- period fo the wiggle oscillationsbaseInterpolator
- base interpolator to add oscillations to (e.g., oscillations relative to the tangent)public void init(@NotNull ParametricCurve parametricCurve)
Initialize the interpolator with a parametricCurve
.
parametricCurve
- parametric curveparametricCurve
public boolean respectsDerivativeContinuity()
Returns true if the heading interpolator respects derivative continuity at path segment endpoints. That is,
the start and end heading derivatives match those of the class TangentInterpolator
.
class TangentInterpolator
class TangentInterpolator
protected double internalGet(double s, double t)
protected double internalDeriv(double s, double t)
protected double internalSecondDeriv(double s, double t)