Алгоритм Брезенхема
Содержание:
1. GPS;
2. NMEA-0183;
3.Алгоритм Брезенхема (Вы читаете данный раздел);
4. Железо и NEO-6M.
Этот алгоритм является одним из самых старых алгоритмов компьютерной графики — он был разработан Джеком Брезенхемом (IBM) аж в 1962 году. С его помощью происходит растеризация графического примитива, другими словами, этот алгоритм определяет координаты пикселей, которые необходимо зажечь на экране, чтобы полученный рисунок примитива совпадал с оригиналом.
Представим, что мы рисуем линию, идущую из точки (0; 0) в (100, 32), как ты помнишь, у нашего экрана разрешение 128 * 64 точки. Несложно посчитать, что угол между этой прямой и осью X составляет менее 45 градусов. Работа алгоритма заключается в последовательном переборе всех координат по оси X в диапазоне от 0 до 100 и расчете соответствующей координаты Y. Логично, что в большинстве случаев значение координаты Y будет дробным, а это значит, что надо каким-то образом выбрать целочисленное значение координаты. Это делается путем выбора ближайшего пикселя. Для других углов наклона прямой, а также для окружностей, эллипсов и прочего алгоритм имеет аналогичный вид (подробнее о нем можно почитать в Википедии).
Алгоритм Брезенхема использует только операции сложения и вычитания целых чисел: обычно использование арифметики дробных чисел замедляет работу контроллера. Обычно, но не в нашем случае, поскольку внутри контроллера STM32F303VC находится ядро ARM Cortex-M4 с FPU. FPU (Floating Point Unit) — устройство, ускоряющее работу с дробными числами (математический сопроцессор), поэтому нас ничто не ограничивает и мы можем использовать алгоритм DDA-линии (goo.gl/kspHco).
Планируете более тесно познакомиться с алгоритмом Брезенхема и изучить все его тонкости и нюансы? Тогда советую прослушать лекции по данной теми, коих в Интернете огромное множество. Ну а дабы более полно воспринять всю полученную информацию, настоятельно рекомендую купить наушники sennheiser hd (http://avimall.ru/cat/naushniki-sennheiser-hd.html), качество звучания которых поразит вас своей насыщенностью и создаст эффект присутствия в лекционном зале.
1. GPS;
2. NMEA-0183;
3.
4. Железо и NEO-6M.
Этот алгоритм является одним из самых старых алгоритмов компьютерной графики — он был разработан Джеком Брезенхемом (IBM) аж в 1962 году. С его помощью происходит растеризация графического примитива, другими словами, этот алгоритм определяет координаты пикселей, которые необходимо зажечь на экране, чтобы полученный рисунок примитива совпадал с оригиналом.
Представим, что мы рисуем линию, идущую из точки (0; 0) в (100, 32), как ты помнишь, у нашего экрана разрешение 128 * 64 точки. Несложно посчитать, что угол между этой прямой и осью X составляет менее 45 градусов. Работа алгоритма заключается в последовательном переборе всех координат по оси X в диапазоне от 0 до 100 и расчете соответствующей координаты Y. Логично, что в большинстве случаев значение координаты Y будет дробным, а это значит, что надо каким-то образом выбрать целочисленное значение координаты. Это делается путем выбора ближайшего пикселя. Для других углов наклона прямой, а также для окружностей, эллипсов и прочего алгоритм имеет аналогичный вид (подробнее о нем можно почитать в Википедии).
Алгоритм Брезенхема использует только операции сложения и вычитания целых чисел: обычно использование арифметики дробных чисел замедляет работу контроллера. Обычно, но не в нашем случае, поскольку внутри контроллера STM32F303VC находится ядро ARM Cortex-M4 с FPU. FPU (Floating Point Unit) — устройство, ускоряющее работу с дробными числами (математический сопроцессор), поэтому нас ничто не ограничивает и мы можем использовать алгоритм DDA-линии (goo.gl/kspHco).
Планируете более тесно познакомиться с алгоритмом Брезенхема и изучить все его тонкости и нюансы? Тогда советую прослушать лекции по данной теми, коих в Интернете огромное множество. Ну а дабы более полно воспринять всю полученную информацию, настоятельно рекомендую купить наушники sennheiser hd (http://avimall.ru/cat/naushniki-sennheiser-hd.html), качество звучания которых поразит вас своей насыщенностью и создаст эффект присутствия в лекционном зале.