Реализации алгоритмов/Алгоритм Брезенхэма: различия между версиями

Содержимое удалено Содержимое добавлено
Нет описания правки
Строка 501:
end;
</source>
 
=== Для Python ===
 
<source lang="python">
 
def draw_circle(x, y, r):
disp_x = x
disp_y = y
x = 0
y = r
delta = (1-2*r)
error = 0
while y >= 0:
setPixel(disp_x + x, disp_y + y)
setPixel(disp_x + x, disp_y - y)
setPixel(disp_x - x, disp_y + y)
setPixel(disp_x - x, disp_y - y)
error = 2 * (delta + y) - 1
if ((delta < 0) and (error <=0)):
x+=1
delta = delta + (2*x+1)
continue
error = 2 * (delta - x) - 1
if ((delta > 0) and (error > 0)):
y -= 1
delta = delta + (1 - 2 * y)
continue
x += 1
delta = delta + (2 * (x - y))
y -= 1
</source>
 
 
=== Модифицированный пример из книги Г.Шилдта «Си для профессиональных программистов» {{sfn|Шилдт|1989}} ===