# Problems • B-spline Basis Functions
1. Compute and plot all basis functions up to degree 2 for knot vector U = { 0, 1, 2, 3, 4 }.
2. Compute and plot all basis functions up to degree 2 for knot vector U = { 0, 1, 2, 3, 3, 3, 4, 5, 6 }.
3. Verify the following propositions with convincing arguments:
• Ni,p(u) is a degree p polynomial.
• For all i, p and u, Ni,p(u) is non-negative.
4. Given knot sequences U1 = { 0, 0, 1, 1 } and U2 = { 0, 0, 0, 1, 1, 1 }, use hand calculation to verify that the B-spline basis functions on U1 and U2 are identical to the Bézier basis functions.

• B-spline Curves
1. Show that a clamped B-spline curve passes through the first and last control points. More precisely, show that C(0) = P0 and C(1) = Pn hold.
2. In the discussion of forcing a B-spline to pass through a control point, we indicated that if we let Pi = Pi-1 = ... = Pi-p+1, the convex hull collapses to a line segment Pi-pPi and the curve must pass through Pi. Why is this so?
3. In the discussion of forcing a B-spline to pass a control point, we indicated that a point on the curve that corresponds to a knot may become identical to the collapsed control point. If we let Pi = Pi-1 = ... = Pi-p+1, will you be able to identify the knot uk such that P(uk) becomes identical to Pi? Why? Elaborate your finding.
4. In the discussion of multiple knots, we mentioned that if a knot ui has multiplicity k-1, where k is the degree of a B-spline curve, then C(ui) lies on a leg of the control polyline. Based on your understanding of multiple knots, answer the following questions:
1. Why does this proposition hold?
2. On which leg does C(ui) lie?
5. Consider a clamped cubic B-spline curve defined by seven control points P0, ..., P6 and knot vector U = { 0, 0, 0, 0, 2/5, 3/5, 3/5, 1, 1, 1, 1 }. Find its derivative B-spline curve, its new control points and knot vector.
6. Modify the derivative computation method so that it works for open and closed B-spline curves.
7. Use B-spline curves of degree 2 and 3 and hand calculation to verify that de Boor's algorithms reduces to de Casteljau's algorithm.
8. Suppose we have a clamped B-spline curve of degree p defined by n+1 control points and a knot vector of simple knots except for the first and last knots which are of multiplicity p+1. Derive a relation of the number of control points between the given B-spline curve and the number of control points of its Bézier curve segments.