Bézier Curves

Numerical Methods

Source inspiration: (Mathew 2000-2019).

Animations

Each animation below demonstrates the de Casteljau algorithm for constructing a cubic Bézier curve. At parameter \(t\), the algorithm recursively linearly interpolates between adjacent control points through three successive levels until a single point on the curve is reached. Tracing this point for all \(t \in [0,1]\) draws the full curve.

Julia source scripts that generated these animations are linked under each case.

Case 1 — Arch-shaped cubic Bézier, \(P_0=(0,0)\), \(P_1=(1,2)\), \(P_2=(3,2)\), \(P_3=(4,0)\)

Behavior: The four control points define an arch. Level-1 (orange), level-2 (green), and curve (red) points are shown at each \(t\). As \(t\) goes from 0 to 1, the red point traces the smooth cubic Bézier curve from \(P_0\) to \(P_3\).

Julia source

De Casteljau construction for a cubic Bezier arch: level-1 orange, level-2 green, and the resulting red point trace the smooth blue curve from P0 to P3

Case 2 — S-shaped cubic Bézier, \(P_0=(0,0)\), \(P_1=(0,2)\), \(P_2=(4,0)\), \(P_3=(4,2)\)

Behavior: The control points create an S-curve. The de Casteljau construction proceeds identically, but the resulting curve has an inflection point, illustrating how different control point arrangements produce qualitatively different shapes.

Julia source

De Casteljau construction for an S-shaped cubic Bezier curve; control points at (0,0),(0,2),(4,0),(4,2) produce a smooth S inflecting near the center

Derivation Notes (Planned)

Short derivations will be added to explain the core equations and assumptions.

References

Mathew, John H. 2000-2019. Numerical Analysis - Numerical Methods Modules. https://web.archive.org/web/20190808102217/http://mathfaculty.fullerton.edu/mathews/n2003/NumericalUndergradMod.html.