BSpline De Boor's algorithm - Dieptranivsr/DroneIVSR GitHub Wiki

B-splines cheatsheet

  • degree k
  • n + 1 control points
  • m + 1 knots
  • m = n + k + 1

B-splines

Screenshot from 2022-06-03 23-04-33

bbasis

Screenshot from 2022-06-03 23-04-50

De Boor's algorithm

Screenshot from 2022-06-03 23-06-16

Screenshot from 2022-06-03 23-07-03

Screenshot from 2022-06-03 23-07-39

A cubic B-spline with 16 segments and endpoint interpolation.

ToDo

  1. Implement the De Boor’s algorithm.
  2. Evaluate B-spline for the simple dataset. Modify the knot vector and recompute. What changed?
  3. Evaluate B-spline for the spiral dataset. Modify the knot vector to 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5. What changed?
  4. Evaluate B-spline for the camel dataset. Move the front leg by changing the x-coordinate of the last control point to -1.5. Which segments of the curve have changed? Why?

NURBS

Screenshot from 2022-06-03 23-10-13

matrix[:,0] *= matrix[:,2]
matrix[:,0] /= matrix[:,2]

Resources