Ce sont des courbes paramétrées de la forme x = f (t ), y = g (t ) où f et g sont des polynômes de degré 3 par morceaux. On peut approximer n’importe quelle courbe avec des courbes de Bézier de façon que la différence avec la courbe idéale soit invisible à l’œil nu.
Un « e » italique composé à l’aide de vingt-huit courbes de Bézier.
L’un des problèmes qui se posent est celui de dessiner une courbe de largeur constante 2r. Géométriquement, la solution est facile : se donner une courbe L, puis faire décrire cette courbe par le centre d’un cercle de rayon 2r. La surface balayée par le cercle est la ligne de largeur constante cherchée.
Analytiquement, c’est une autre paire de manches. Si la ligne centrale L de la ligne épaisse est définie par des équations paramétriques x = f (t ) et y = g (t ), le contour de la ligne d’épaisseur 2r est l’enveloppe des cercles centrés sur la ligne centrale et de rayon r.
Il a une expression du type :
Avec la racine carrée d’un polynôme de degré 4 au dénominateur, on est loin des courbes de Bézier. Pour faire « rentrer les enveloppes dans le système », il faut de nouveau faire une approximation. L’idée de Knuth est de remplacer le cercle par un octogone régulier.
La différence est visuellement minime. Le grand avantage est que le point caractéristique qui décrit l’enveloppe (quand le centre de l’octogone décrit L ) reste fixé sur l’un des sommets de l’octogone, avant de passer à un autre sommet. Dans un intervalle de temps pendant lequel le point caractéristique reste fixe, le calcul de l’enveloppe est très facile : c’est une translatée de la ligne centrale L. L’enveloppe est donc, comme L, une courbe polynomiale de degré 3 par morceaux.