De Casteljau's algorithm is a solved, classical result — not an open problem.
Paul de Casteljau derived it at Citroën in 1959, though the work remained proprietary for years; Pierre Bézier independently published the parametric curve framework at Renault in the 1960s, and the mathematical equivalence was later recognized.
For a degree-n Bézier curve with n+1 control points, the algorithm computes:
bi(r)(t)=(1−t)bi(r−1)(t)+tbi+1(r−1)(t)
starting from bi(0)=Pi and finishing at b0(n)=B(t).
- Time: O(n2) linear interpolations (the triangular table has 1+2+⋯+n entries).
- Space: O(n) — each reduction round can overwrite the previous layer in place.
- Numerical stability: every step is a convex combination (1−t)a+tb with t∈[0,1], so intermediate values stay inside the convex hull of the control points. Horner evaluation of the equivalent Bernstein polynomial is faster (O(n)) but amplifies floating-point errors at the boundaries.
- Subdivision for free: splitting at parameter t produces the left sub-polygon b0(0),b0(1),…,b0(n) and the right sub-polygon b0(n),b1(n−1),…,bn(0) — both read directly from the triangular table. Subdivision is the engine behind adaptive curve rendering and convex-hull clipping in computer graphics.
Because the algorithm only uses addition and multiplication by scalars, it works unchanged over any field — real, complex, or even symbolic — which is why it generalizes so cleanly to rational Bézier curves (NURBS) and tensor-product surfaces.
Comments
Loading comments...