Algoritmo DDA: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
smistamento lavoro sporco |
m nuova chiave d'ordine per Categoria:Algoritmi geometrici: "DDA" usando HotCat |
||
(8 versioni intermedie di 7 utenti non mostrate) | |||
Riga 1:
{{F|
L''''algoritmo DDA''' (digital differential analyzer) è un [[algoritmo di rasterizzazione di linea]].
Riga 17:
Un esempio di algoritmo può essere il seguente:
dx = x<sub>2</sub> - x<sub>1</sub>;
dy = y<sub>2</sub> - y<sub>1</sub>;
Line 26 ⟶ 25:
disegna_il_punto(x, round(y) );
}
==Errori==
Line 33 ⟶ 31:
[[File:esempio rasterizzazione linea dda 1.png|frame|center|Figura 1.]]
Come vediamo è presente un'operazione di arrotondamento (<code> round(y) </code>) e le operazioni sono eseguite in virgola mobile per via del valore m; tutti elementi costosi dal punto di vista computazionale.
In questo caso infatti notiamo che m ha un valore di circa 4.2, quindi per ogni incremento sull'asse x di valore 1, sull'asse y incrementeremo di 4 pixels circa.
Un
<math> x_{i+1} = x_i + \Delta x = y_i + (1/m * \Delta y) = y_i + (1/m * 1) = x_i + 1/m</math>
Line 44 ⟶ 41:
[[File:esempio rasterizzazione linea dda 2.png|frame|center|Figura 2.]]
{{Portale|matematica}}▼
▲{{Portale|matematica}}
[[Categoria:Computer grafica]]
[[Categoria:Algoritmi geometrici|DDA]]
|