Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Контрольные работы » Алгоритми креслення графічних примітивів

Реферат Алгоритми креслення графічних примітивів

















Контрольна робота

В«Алгоритми креслення графічних примітивівВ»


Мета роботи: Розробити алгоритми і написати програму, яка буде зображувати на поверхні форми графічні примітиви: лінії, кола, еліпси.

Виконання завдання:

Оскільки екран растрового дисплея з електронно-променевою трубкою або РК - екраном можна розглядати як матрицю дискретних елементів (пікселів), кожен з яких може бути підсвічений, не можна безпосередньо провести відрізок з однієї точки в іншу. Процес визначення пікселів, найкращим чином апроксимуючих заданий відрізок, називається розкладом в растр. p align="justify"> Розглянемо:

. Алгоритм розкладання в растр прямій лінії. br/>В 

Рис. 1. Растеризация відрізка прямої лінії

графічний примітив алгоритм лінія коло

Растр називається прямокутна сітка точок, які формують зображення на екрані комп'ютера. Кожна точка растра характеризується двома параметрами: своїм становищем на екрані і своїм кольором. Растрові зображення складаються з безлічі дискретних точок, для роботи з ними необхідні спеціальні алгоритми.

Малювання відрізка прямої лінії - одна з найпростіших завдань растрової графіки. Сенс її полягає в обчисленні координат пікселів, що знаходяться поблизу безперервних відрізків, що лежать на двовимірної растрової сітці. br/>
В В 

Рис. 2. Алгоритм розкладання в растр прямої лінії


У функцію алгоритму розкладання передаються початкові і кінцеві координати, а також площину малювання Canvas. Перше, що потрібно визначити це довжину по осі oX або oY, залежно від того, яка довші:


if abs (X2 - X1)> = abs (Y2 - Y1) then Length: = abs (X2 - X1) Length: = abs (Y2 - Y1);


Тепер визначимо приросту для кожної осі:


dX: = (X2 - X1)/Length;: = (Y2 - Y1)/Length;


Маючи збільшення і довжину лінії, можна побудувати пряму, але для початку треба задати початкові координати побудови лінії:


X: = X1 + 0.5 * Sign (dX);: = Y1 + 0.5 * Sign (dY);


Тут Sign - функція, яка повертає -1, якщо число негативно; 1, якщо число позитивно; і 0, якщо число дорівнює нулю.

Тепер задамо змінну i в початковий стан:

i: = 1;

І запусти цикл, в якому буде здійснюватися прирощення координат, змінної i і промальовування в отриманих координатах точки, цикл закінчиться тільки, коли i <= Length:


i: = 1; i <= Length d...


сторінка 1 з 3 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Процес побудови опори для лінії електропередачі в умовах легковажності: нео ...
  • Реферат на тему: Вектор-функція. Поняття кривої, лінії і поверхні. Диференціальна геометрі ...
  • Реферат на тему: Історія формування поняття &алгоритм&. Найвідоміші алгоритми в історії мат ...
  • Реферат на тему: Дослідження поведінки лінії з розподіленими параметрами
  • Реферат на тему: Розрахунок надійності роботи атмосферної оптичної лінії зв'язку