Curves.Spline.Type.BSpline (curves v0.2.5)

Copy Markdown View Source

Very smooth, but with the drawback that the line does not actually pass through the control points.

curve = Curves.define_b_spline([
    {0, -2},
    {3, 4},
    {6, 5},
    {7, -1},
    {10, 3},
    {5, 1},
    {12, 9}
])

for i <- 0..1000 do
  Curves.solve!(curve, i / 1000)
end
|> # render_vega_lite_chart(...)

B-Spline