From the de Casteljau algorithm it follows that, any linear transformation (such as rotation or scaling) or translation of control points defines a new curve that is just the transformation or translation of the original curve (i.e. Bezier curve is affinely invariant with respect to its control points).
As linear interpolated points are contained in the convex hull of control points, then the Bezier curve is contained in the convex hull of its control points too.
If all the control points form a straight line, the
curve also forms a line. This follows from the convex hull property;
as the convex hull becomes a line, so does the curve.
Moreover, you can test by hand, that for cubic Bernstein polynomials
0 B03(t) + 1/3 B13(t) + 2/3 B23(t) + B33(t) = t.
Therefore for control points with coordinates
P0,x = 0, P1,x = 1/3, P2,x = 2/3, P3,x = 1
we get identical mapping (I used this as "1/3 rule")
Px(t) = t.
Differentiation of the Bezier curve
Derivative of a curve gives the tangent vector at a point. From
d/dt Bin(t) = n ( Bi-1n-1(t) - Bin-1(t) )
it follows that the derivatives at the endpoints of the Bezier curve are
P'(0) = n (P1 - P0 ), P'(1) = n (Pn - Pn-1 ).
Therefore the Bezier curve is tangent to the first and last segments of the control polygon, at the first and last control points. In fact, these derivatives are n times the first and last legs of the control polygon.
The second derivatives are
P"(0) = n(n-1)(P2 - 2P1 + P0 ), P"(1) = n(n-1)(Pn - 2Pn-1 + Pn-2 ).
Spline formulae standartization
I'm not a spline expert (I'm only too curious :) Unfortunately I've never seen the standard deBoor textbook. I used information from the Net but different sources have different spline formula notation (and different misprints?). I wouldn't like to mislead users and will try to "sinchronize" cited formulae and Java sources (but it proves almost nothing :) Write me if you have any remarks or suggestions.