Constructs a Catmull-Rom spline interpolator given control points.
Value
An object of class catmull_rom with methods:
interpolate(xi): Evaluate the interpolator at pointxi.prime(xi): Evaluate the derivative of the interpolator at pointxi.max_parameter(): Get the maximum parameter value of the spline.parameter_at_point(i): Get the parameter value at indexi.
Examples
control_points <- list(c(0, 0, 0), c(1, 1, 0), c(2, 0, 0), c(3, 1, 0))
interpolator <- catmull_rom(control_points)
xi <- 1.5
interpolator$interpolate(xi)
#> [1] 1.2613446 0.8307972 0.0000000
interpolator$prime(xi)
#> [1]  0.8408964 -1.1363078  0.0000000
interpolator$max_parameter()
#> [1] 3.567621
interpolator$parameter_at_point(2)
#> [1] 2.378414