DDA vs Bresenhamův algoritmus
DDA a Bresenhamův algoritmus jsou pojmy, s nimiž byste se při studiu počítačové grafiky setkali. Než vysvětlíme rozdíl mezi těmito dvěma termíny, podívejme se, co je DDA a co je Bresenhamův algoritmus. Vynález počítače zjednodušil věci a jednou z nich bylo řešení diferenciálních rovnic. Dříve to bylo provedeno mechanickým diferenciálním analyzátorem, který byl pomalý a plný chyb, ale DDA nebo digitální diferenciální analyzátor je aplikace analyzátoru v digitální podobě, která je přesná a rychlá. Diferenční analyzátor se používá k vytváření čar mezi dvěma body, takže na obrazovce je vidět přímka nebo mnohoúhelník s n počtem stran. Vzdálenost mezi dvěma body nebo pixelem je popsána diferenciální rovnicí, kde jsou v softwaru specifikovány souřadnice počátečního a koncového bodu. Toho lze dosáhnout pomocí DDA a Bresenhamova algoritmu.
Co je DDA?
DDA se používá při kreslení přímky k vytvoření čáry, trojúhelníku nebo mnohoúhelníku v počítačové grafice. DDA analyzuje vzorky podél linie v pravidelných intervalech jedné souřadnice jako celé číslo a pro druhou souřadnici zaokrouhlí celé číslo, které je nejblíže k linii. Proto, jak čára postupuje, prohledává první celé číslo a zaokrouhlí druhou na nejbližší celé číslo. Čára nakreslená pomocí DDA pro souřadnici x bude tedy x0 do x1 ale pro souřadnici y to bude y = ax + ba pro nakreslení funkce bude Fn (x, y zaokrouhleno).
Co je Bresenhamův algoritmus?
Bresenham Algorithm byl vyvinut J.E.Bresenhamem v roce 1962 a je mnohem přesnější a mnohem účinnější než DDA. Prohledá souřadnice, ale namísto zaokrouhlení vezme přírůstkovou hodnotu v úvahu sčítáním nebo odečtením, a proto ji lze použít pro kreslení kružnice a křivek. Pokud má tedy být čára nakreslena mezi dvěma body x a y, budou následující souřadnice (xa + 1, yA) a (xa + 1, ya + 1) kde a je přírůstková hodnota následujících souřadnic a rozdíl mezi těmito dvěma bude vypočítán odečtením nebo sčítáním rovnic, které jsou nimi vytvořeny.
Rozdíl mezi DDA a Bresenhamským algoritmem • DDA používá pohyblivé body, kde jako algoritmus Bresenham používají pevné body. • DDA zaokrouhlí souřadnice na nejbližší celé číslo, ale Bresenhamův algoritmus ne. • Bresenhamův algoritmus je mnohem přesnější a efektivnější než DDA. • Bresenhamův algoritmus dokáže nakreslit kruhy a křivky s mnohem větší přesností než DDA. • DDA používá násobení a dělení rovnic, ale Bresenhamův algoritmus používá pouze odčítání a sčítání.
|