Analyseur différentiel numérique

Un analyseur différentiel numérique ou ADN (en anglais, DDA pour Digital Differential Analyzer) est un algorithme qui permet de tracer des approximations de segments de droites sur des médias discrets.

Algorithme

modifier

L'algorithme prend en paramètres deux points dans l'espace discret. Ici, nous considérons un plan discret. Les deux points sont représentés par leurs coordonnées (x1,y1) et (x2,y2) dans le plan discret.

si |x2-x1| >= |y2-y1| alors
  longueur := |x2-x1|
sinon
  longueur := |y2-y1|
fin si
dx := (x2-x1) / longueur
dy := (y2-y1) / longueur
x := x1 + 0.5
y := y1 + 0.5
i := 1
tant que i ≤ longueur faire
  setPixel (E (x), E (y))
  x := x + dx
  y := y + dy
  i := i + 1
fin tant que

Performance

modifier

Cet algorithme est généralement considéré comme lent lorsqu'il est implémenté en machine. Ceci est dû à l'utilisation d'opérations et de nombres en virgule flottante.

Voir aussi

modifier

Articles connexes

modifier

Bibliographie

modifier
  • David F. Rogers. Procedural Elements for Computer Graphics. McGraw-Hill, second edition, 711 p., 1998.