Алгоритм DDA проти Bresenham
DDA та алгоритм Bresenham - це терміни, до яких ви б зіткнулися, вивчаючи комп'ютерну графіку. Перш ніж пояснити різницю між цими двома термінами, давайте подивимось, що таке DDA і що таке алгоритм Брезенама. Винахід комп’ютера зробив речі простими, одним з яких було вирішення диференціальних рівнянь. Раніше це робилося механічним диференціальним аналізатором, який був повільним і повним помилок, але DDA або цифровий диференціальний аналізатор - це застосування аналізатора в цифровій формі, який є точним і швидким. Диференціальний аналізатор використовується для виготовлення ліній між двома точками, щоб на екрані видно пряму чи багатокутник з n кількістю сторін. Відстань між двома точками або пікселем описується диференціальним рівнянням, де координати вихідної точки та точки закінчення визначаються в програмному забезпеченні. Цього можна досягти за допомогою алгоритму DDA та Брезенама.
Що таке DDA?
DDA використовується для малювання прямої для формування лінії, трикутника або багатокутника в комп'ютерній графіці. DDA аналізує зразки вздовж лінії на регулярному інтервалі однієї координати як ціле число, а для іншої координати округляє ціле число, яке є найближчим до прямої. Тому по мірі просування лінії сканує першу цілу координату і округляє друге до найближчого цілого числа. Тому лінія, проведена за допомогою координати DDA для x координати, буде x0 до х1 але для координати y це буде y = ax + b, а для малювання функції він буде Fn (x, y округляється).
Що таке алгоритм Брезенама?
Алгоритм Брезенама був розроблений Дж. Е. Брезенхемам в 1962 році і він набагато точніший і набагато ефективніший, ніж DDA. Він сканує координати, але замість їх округлення враховує додаткове значення, додаючи або віднімаючи, і тому може використовуватися для малювання кола та кривих. Тому якщо провести лінію між двома точками x і y, наступні координати будуть (x)a + 1, уа) і (хa + 1, уa + 1) де a - додаткове значення наступних координат, а різниця між цими двома буде обчислюватися шляхом віднімання або додавання утворених ними рівнянь.
Різниця між DDA і алгоритмом Брезенхама • DDA використовує плаваючі точки, де як алгоритм Брезенама використовують фіксовані точки. • DDA округляє координати до найближчого цілого числа, але алгоритм Брезена немає. • Алгоритм Брезенама набагато точніший та ефективніший, ніж DDA. • Алгоритм Брезенама може малювати кола і криві з набагато більшою точністю, ніж DDA. • DDA використовує множення та ділення рівняння, але алгоритм Брезенама використовує лише віднімання та додавання.
|