Реферат: Трёхмерная компьютерная графика
поскольку для случая З диагональный пиксел ( xi + 1, уi – 1 ) находится вне окружности, тогда как вертикальный пиксел ( xi , уi – 1 ) лежит внутри ее. Это позволяет записать d\ в виде
Дополнение до полного квадрата члена ( xi )2 с помощью добавления и вычитания 2xi + 1 дает
Использование определения Di приводит выражение к виду
Теперь, рассматривая случай 4, снова заметим, что следует выбрать вертикальный пиксел ( xi , уi – 1 ), так как y является монотонно убывающей функцией при возрастании x. проверка компонент d\ для случая 4 показывает, что
поскольку оба пиксела находятся вне окружности. Следовательно, d\ > 0 и при использовании критерия, разработанного для случая 3, происходит верный выбор mV .
Осталось проверить только случай 5 на рис.2.7, который встречается, когда диагональный пиксел ( xi + 1, уi – 1 ) лежит на окружности, т. е. Di = 0. Проверка компонент d показывает, что
Следовательно, d > 0 и выбирается диагональный пиксел ( xi + 1, уi – 1 ). Аналогичным образом оцениваем компоненты d\ :
и d < 0, что является условием выбора правильного диагонального шага к ( хi + 1, уi – 1 ). Таким образом, случай Di = 0 подчиняется тому же критерию, что и случай Di <0 или Di > 0.
Подведем итог полученных результатов:
Di < 0
d£ 0 выбираем пиксел ( хi + 1, уi )® mH
d > 0 выбираем пиксел ( хi + 1, уi – 1 )® mD
Di > 0
d\ £ 0 выбираем пиксел ( хi + 1, уi – 1 )® mD
d\ > 0 выбираем пиксел ( хi , уi – 1 )® mV
Di = 0 выбираем пиксел( хi + 1, уi – 1 )® mD
Легко разработать простые рекуррентные соотношения дня реализации пошагового алгоритма. Сначала рассмотрим горизонтальный шаг mH к пикселу ( хi + 1, уi ). Обозначим это новое положение пиксела как ( i + 1 ). Тогда координаты нового пиксела и значениеDi равны
Аналогично координаты нового пиксела и значения Di для шага mD к пикселу ( хi + 1, уi – 1 ) таковы:
То же самое для шага mV к ( хi , уi – 1 )
Реализация алгоритма Брезенхема для окружности приводиться ниже.