DDA vs Bresenhamský algoritmus
DDA a Bresenhamský algoritmus sú pojmy, s ktorými by ste sa mohli stretnúť pri štúdiu počítačovej grafiky. Pred vysvetlením rozdielu medzi týmito dvoma pojmami sa pozrime, čo je DDA a čo je Bresenhamov algoritmus. Vynález počítača veci zjednodušil a jednou z nich bolo riešenie diferenciálnych rovníc. Predtým to bolo robené mechanickým diferenciálnym analyzátorom, ktorý bol pomalý a plný chýb, ale DDA alebo digitálny diferenciálny analyzátor je aplikácia analyzátora v digitálnej forme, ktorý je presný a rýchly. Diferenciálny analyzátor sa používa na vytváranie čiar medzi dvoma bodmi, takže na obrazovke je možné vidieť priamku alebo polygón s n počtom strán. Vzdialenosť medzi dvoma bodmi alebo pixelom je opísaná diferenciálnou rovnicou, kde sú súradnice počiatočného bodu a koncového bodu špecifikované v softvéri. Dá sa to dosiahnuť pomocou DDA a Bresenham Algorithm.
Čo je DDA?
DDA sa používa pri kreslení rovnej čiary na vytvorenie čiary, trojuholníka alebo mnohouholníka v počítačovej grafike. DDA analyzuje vzorky pozdĺž čiary v pravidelnom intervale jednej súradnice ako celého čísla a pre druhú súradnicu zaokrúhľuje celé číslo, ktoré je najbližšie k čiare. Preto ako riadok postupuje, skenuje súradnicu prvého celého čísla a zaokrúhli druhú na najbližšie celé číslo. Preto čiara nakreslená pomocou DDA pre súradnicu x bude x0 až x1, ale pre súradnicu y to bude y=ax+b a funkcia kreslenia bude to Fn(x, y zaokrúhlené).
Čo je Bresenhamský algoritmus?
Bresenhamský algoritmus bol vyvinutý J. E. Bresenhamom v roku 1962 a je oveľa presný a oveľa efektívnejší ako DDA. Skenuje súradnice, ale namiesto ich zaokrúhľovania berie do úvahy prírastkovú hodnotu pripočítaním alebo odčítaním, a preto sa dá použiť na kreslenie kružnice a kriviek. Preto ak sa má nakresliť čiara medzi dvoma bodmi x a y, ďalšie súradnice budú (xa+1, ya) a (x a+1, ya+1), kde a je prírastková hodnota nasledujúcich súradníc a rozdiel medzi týmito dvoma sa vypočíta odčítaním alebo pripočítaním nimi tvorené rovnice.
Rozdiel medzi DDA a Bresenhamským algoritmom
• DDA používa plávajúce desatinné čiarky, zatiaľ čo Bresenhamov algoritmus používa pevné body.
• DDA zaokrúhli súradnice na najbližšie celé číslo, ale Bresenhamov algoritmus nie.
• Bresenhamský algoritmus je oveľa presný a efektívny ako DDA.
• Bresenhamov algoritmus dokáže kresliť kruhy a krivky s oveľa väčšou presnosťou ako DDA.
• DDA používa násobenie a delenie rovnice, ale Bresenhamov algoritmus používa iba odčítanie a sčítanie.