class QuinticSpline : ParametricCurve
Combination of two quintic polynomials into a 2D quintic spline. See this short paper for some motivation and implementation details.
maxDeltaK
- maximum change in curvature between arc length param segments
maxSegmentLength
- maximum length of a single param segment
class Waypoint
Class for representing the end points of interpolated quintic splines. |
QuinticSpline(start: QuinticSpline.Waypoint, end: QuinticSpline.Waypoint, maxDeltaK: Double = 0.01, maxSegmentLength: Double = 0.25)
Combination of two quintic polynomials into a 2D quintic spline. See this short paper for some motivation and implementation details. |
val x: QuinticPolynomial
X polynomial (i.e., x(t)) |
|
val y: QuinticPolynomial
Y polynomial (i.e., y(t)) |
fun length(): Double
Returns the length of the curve. |
|
fun toString(): String |
fun deriv(s: Double, t: Double = reparam(s)): Vector2d
Returns the derivative s units along the curve. |
|
fun end(): Vector2d
Returns the end vector. |
|
fun endDeriv(): Vector2d
Returns the end derivative. |
|
fun endSecondDeriv(): Vector2d
Returns the end second derivative. |
|
fun endThirdDeriv(): Vector2d
Returns the end third derivative. |
|
operator fun get(s: Double, t: Double = reparam(s)): Vector2d
Returns the vector s units along the curve. |
|
fun secondDeriv(s: Double, t: Double = reparam(s)): Vector2d
Returns the second derivative s units along the curve. |
|
fun start(): Vector2d
Returns the start vector. |
|
fun startDeriv(): Vector2d
Returns the start derivative. |
|
fun startSecondDeriv(): Vector2d
Returns the start second derivative. |
|
fun startThirdDeriv(): Vector2d
Returns the start third derivative. |
|
fun tangentAngle(s: Double, t: Double = reparam(s)): Double
Returns the angle of the tangent line s units along the curve. |
|
fun tangentAngleDeriv(s: Double, t: Double = reparam(s)): Double
Returns the derivative of the tangent angle s units along the curve. |
|
fun tangentAngleSecondDeriv(s: Double, t: Double = reparam(s)): Double
Returns the second derivative of the tangent angle s units along the curve. |
|
fun thirdDeriv(s: Double, t: Double = reparam(s)): Vector2d
Returns the third derivative s units along the curve. |