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
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
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
Articles connexes
Bibliographie
- David F. Rogers. Procedural Elements for Computer Graphics. McGraw-Hill, second edition, 711 p., 1998.