Обсуждение:Алгоритм Брезенхэма

message: А не стоит ли сменить название? Ведь есть ещё и инкрементный алгоритм построения окружности, тоже вроде носящий носящий имя Брезенхэма. --Solon 15:10, 1 сентября 2005 (UTC)
replies: text: Эти алгоритмы сходны, так что можно их в одной статье описать. Лий -толк- 16:11, 1 сентября 2005 (UTC)
replies: text: :Если никто не против, я выложил свою реализацию для рисования окружностей. Vas3k 16:18, 21 сентября 2009 (UTC)
Автор, напиши полный алгоритм в псевдокоде (а лучше на java:) )! 
Дано: четыре целых числа - две точки на плоскости, задача - построить между ними линию.  193.232.121.106 01:07, 15 сентября 2008 (UTC)
>bydlo_putPixel (x, y);
>bydlo
это что еще такое? 78.111.155.2 16:21, 14 ноября 2010 (UTC)
Проверил реализацию построения окружности на C++. Рисуется восьмиугольник, а не окружность; нет даже намёка на дуги.
SpyderDFX--212.193.74.245 06:34, 25 ноября 2010 (UTC)
"Умножение на 2 для целых чисел можно реализовать битовым сдвигом влево. Однако, если число отрицательное, при сдвиге пропадёт бит знака."
А при умножении двух отрицательных знак не пропадает?

text: Умножение двух чисел -- это возведение в квадрат -- не имеет отношения к делу. -- NZeemin 07:42, 5 октября 2012 (UTC)
replies: text: : Ааа, точно. А то я всё сижу и думаю какой смысл в if(error2 > -deltaY) {. Совсем голова не варит. Но и кстати PascalABC реализацию бы в си синтаксис, там на порядок понятнее всё... А тут уже с выкрутасами.  И координату z приделать лихо можно.
thread_title: Untitled

message: dx:=dx+dy;
dy:=dx-dy;
dx:=dx-dy;
Данный код не является явным для "простых обывателей" - лучше добавить переменную temp и с её помощью поменять местами dx<->dy;
var
temp: integer;
begin
....
temp:=dx;
dx:=dy;
dy:=temp;
...
end;
Конечно это мое мнение, но для понимания это лучше всего и к тому же не факт правильности алгоритма при выходе суммы dx+dy за пределы границ типа Integer.!!
Прошу взять во внимание.
 109.86.159.57 14:13, 26 марта 2011 (UTC)
thread_title:  Код ObjectPascal 

message: if(x1 == x2 && y1 == y2)
            break;
не лучшее решении
к примеру при вызове drawLine(0, 250, 200, 200) этот алгоритм "промахивается" мимо последней точки и улетает в никуда.
--82.114.155.10 05:23, 5 августа 2011 (UTC)
Даушь. Лучше сразу посчитать сколько будет "пиксеелй", и от этого отходить. типо как
for (i = (deltaX > deltaY)?deltaX: deltaY; i > 0; i--) { }  37.78.196.174 12:12, 12 апреля 2013 (UTC)
thread_title:  Реализация на C++: 

message: Просьба к участникам поправить название статьи -- 178.49.155.97 16:11, 31 мая 2012 (UTC)
replies: text: А какая разница, всё равно он Брезенем :) --М. Ю. (yms) 19:30, 4 августа 2014 (UTC)
thread_title:  Переименование "БрезенхЭма" в "Брезенхема" 

message: Уважаемые участники Википедии! Прежде чем отменять поправку в строке "Умножение на 2 для целых чисел можно реализовать битовым сдвигом влево. Однако, если число отрицательное, при сдвиге пропадёт бит знака.", прочитайте пожалуйста статьи Прямой код, Обратный код и Дополнительный код (представление числа). Не вводите читателей в заблуждение! -- SergeyShpagin 18:56, 7 декабря 2014 (UTC)
replies: text: Уважаемый, внимательно перечитайте статью Обратный код ещё раз. При умножении чисел в обратном коде, путём сдвига влево, в отрицательном числе бит знака действительно не пропадёт, однако появится искажение другого характера. -- 121.129.204.143 07:32, 17 июля 2015 (UTC)
thread_title:  Представление целых чисел