Ускорение алгоритма Брезенхэма
1) Частные случаи – горизонтальные, вертикальные и диагональные линии.
2) При разложении отрезка можно заметить, что при движении вдоль основной оси (X) по 1
, получаются группы
, имеющие постоянную координату по неосновной оси (Y).
В стандартном алгоритме Брезенхэма проверка производится на каждом шаге, используя же группы
, количество проверок можно
.
|
Пусть есть отрезок длиной 35
по X и 10
по Y.
Рис. 3.3
. Тогда группы
с неизменной Y – координатой будут иметь то 3 то 4
.
Поэтому достаточно 1 раз вычислить m, чтобы определить группы
. Количество вычислений
на 70%.
Минимальная длина группы: 
Максимальная длина группы: 
Как же располагать группы
с максимальной и минимальной длиной? На каждый шаг по неосновной оси мы ставим
вдоль основной. После этого решается ставить ли еще 1
или
y на 1. Для этого анализируется накопленная ошибка отклонения.
|
Рис. 3.4
2-ой момент – балансирование групп
. Это делается так: вначале оценивается ошибка накопления не за полный шаг на 1
, а за
. Если 1-ая и последняя группы
состоят из нечетного числа
, получатся несимметричные начала и конец.
Дата добавления: 2016-07-18; просмотров: 1441;











