DDA vs Bresenham algoritme
DDA og Bresenham Algoritme er termer, du ville være stødt på, når du studerer computergrafik. Inden vi forklarer forskellen mellem disse to sigt, lad os se, hvad der er DDA, og hvad er Bresenham Algoritme. Opfindelsen af computeren gjorde tingene enkle, og en af dem var at løse differentialligninger. Tidligere blev det gjort af en mekanisk differentieringsanalysator, der var langsom og fuld af fejl, men DDA eller Digital Differential Analyzer er anvendelsen af analysator i digital form, som er nøjagtig og hurtig. Differentialanalysator bruges til at fremstille linjer mellem to punkter, så en lige linje eller polygon med n antal sider kan ses på skærmen. Afstand mellem to punkter eller en pixel er beskrevet af en differentialligning, hvor koordinaterne for startpunktet og slutpunktet er specificeret i softwaren. Dette kan opnås ved DDA og Bresenham Algorithm.
Hvad er DDA?
DDA bruges til at tegne en lige linje til at danne en linje, trekant eller polygon i computergrafik. DDA analyserer prøver langs linjen med regelmæssigt interval af den ene koordinat som heltalet, og for den anden koordinat afrunder det heltalet, der er tættest på linjen. Når linjen skrider frem, scanner den derfor det første heltalskoordinat og runder det andet til nærmeste heltal. Derfor er en linje, der tegnes ved hjælp af DDA til x-koordinat, den x0 til x1 men for y koordinat vil det være y = aks + b og for at tegne funktion vil det være Fn (x, y afrundet).
Hvad er Bresenham Algoritme?
Bresenham Algorithm blev udviklet af J.E.Bresenham i 1962, og det er meget nøjagtigt og meget mere effektivt end DDA. Den scanner koordinaterne, men i stedet for at afrunde dem tager den inkrementelle værdi hensyn til ved at tilføje eller trække fra og kan derfor bruges til at tegne cirkel og kurver. Derfor, hvis en linje skal tegnes mellem to punkter x og y, vil de næste koordinater være (xa + 1, y-en) og (xa + 1, ya + 1) hvor a er den inkrementelle værdi af de næste koordinater og forskellen mellem disse to beregnes ved at trække eller tilføje ligningerne dannet af dem.
Forskel mellem DDA og Bresenham algoritme • DDA bruger flydende punkter, hvor Bresenham algoritme bruger faste punkter. • DDA afrunder koordinaterne til nærmeste heltal, men Bresenham-algoritmen gør det ikke. • Bresenham-algoritmen er meget nøjagtig og effektiv end DDA. • Bresenham algoritme kan tegne cirkler og kurver med meget mere nøjagtighed end DDA. • DDA bruger multiplikation og opdeling af ligning, men Bresenham-algoritmen bruger kun subtraktion og tilføjelse.
|