Revenir au sommaire Tutoriaux

 


Présentation des courbes de Bézier

Introduction

Les courbes Bézier sont utilisées dans de très nombreuses applications:

  • Commandes de machines numériques
  • Programmes de dessin vectoriel (segments courbes)
  • Polices True-type
  • Morphing : déformation d'images

Cette note est orientée programmation Delphi. Nous allons éviter la théorie mathématique, et exposer les courbes de Bézier le plus simplement possible, c'est à dire à l'aide de constructions géométriques. Vous ne trouverez pas dans cette note des termes mathématiques comme : application affine, barycenctre, polynômes de Bernstein. La théorie de Bézier s'applique principalement aux surfaces de Bézier, en 3 D. Mais, pour simplifier, nous resterons dans le cadre des courbes de Bézier en 2 dimensions .

Historique

Au début des années 60, les machines numériques ne savaient usiner de façon précise que des courbes simples comme des paraboles ou des ellipses.  Une seconde catégorie d'objets, au contraire, offrait une forme a priori peu précise, déterminée expérimentalement. Les hélices d'avions, les coques de bateaux et les carrosseries de voitures étaient tracées à main levée, sans que l'on puisse décrire leurs formes par une formule mathématique.

Pierre Bézier, ingénieur français diplômé du Conservatoire national des arts et métiers, poursuivait, une carrière à la Régie Renault, atteignant le poste de directeur des méthodes mécaniques.

Les machines à commande numérique de cette époque offraient une programmation limitée. Il fallait les alimenter avec des nombres, ce que l'on savait faire pour des déplacements élémentaires comme des droites, des arcs de cercle, et à la rigueur des ellipses. Mais il n'était pas question de programmer des courbes quelconques, tracées à la main, faute d'une définition numérique de celles-ci.
Pierre Bézier chercha donc comment traduire mathématiquement une courbe, puis une surface, dessinées à main levée. Il lui fallait concevoir un système capable de gérer des courbes gauches, c'est-à-dire de manipuler des surfaces en 3D, d'où la nécessité de définir un modèle mathématique qui ne soit pas limité à des courbes en deux dimensions. Enfin, l'ingénieur entendait inventer un système complet pour créer un objet en volume à partir d'un dessin, le tout avec une rapidité d'exécution suffisante, et compréhensible intuitivement.

Mais ses recherches n'étaient pas entièrement originales. Dès 1958, un mathématicien employé par Citroen, Paul de Casteljau, s'était attaqué au même problème. Paul de Casteljau était chargé de numériser une courbe, une fois celle-ci tracée, sans se poser la question d'une correction a posteriori. Il définissait ses courbes comme caractérisées par des pôles, d'une façon nettement moins parlante que les points de contrôle de Bézier.

L'aventure de Pierre Bézier aurait pu s'arrêter là. Mais un groupe de développeurs liés à Apple créa un langage adapté à la future imprimante laser conçue pour le Mac. Il s'agissait de trouver un moyen de définir mathématiquement une courbe, comme le tracé d'un caractère, avant de l'envoyer à l'imprimante. L'un de ces développeurs connaissait le travail du Français. Tout naturellement, il choisit les courbes de Bézier comme base du langage PostScript et fonda la société Adobe. Microsoft adopta à son tour les polices true-type à partir de Windows 3.1. Ces polices utilisent les courbes de Bézier pour définir les caractères aux formes arrondies.


 

Revenir au sommaire Tutoriaux