close

Вход

Забыли?

вход по аккаунту

?

Лаба 3 (2)

код для вставкиСкачать
МИНИСТЕРСТВО НАУКИ И ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
ПОВОЛЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Факультет информатики и вычислительной техники
Кафедра ИВС
Лабораторная работа №3
по дисциплине «Компьютерная графика»
«Методы закраски объектов»
Выполнили:
студенты группы ВМ -31
Мочалов О.М.
Проверил:
доцент кафедры ИВС
Морохин Д.В.
Йошкар-Ола
2012г.
Задание и цель работы
Задание:
Заполнить треугольник итеративным алгоритмом закраски 4-связной
гранично-определенной области.
Цель работы:
Изучение методов заполнения области определенным цветом,
приобретение навыков использования алгоритмов при составлении
графических программ.
Теоретическая часть:
В большинстве приложений используется одно из существенных достоинств растровых устройств
- возможность заполнения областей экрана.
Существует две разновидности заполнения:
· первая, связанная как с интерактивной работой, так и с программным синтезом изображения,
служит для заполнения внутренней части многоугольника, заданного координатами его вершин.
· вторая, связанная в первую очередь с интерактивной работой, служит для заливки области,
которая либо очерчена границей с кодом пиксела, отличающимся от кодов любых пикселов
внутри области, либо закрашена пикселами с заданным кодом;
Рассмотрим алгоритм заполнения многоугольника.
Простейший способ заполнения многоугольника, заданного координатами вершин, заключается
в определении принадлежит ли текущий пиксел внутренней части многоугольника. Если
принадлежит, то пиксел заносится.
Определить принадлежность пиксела многоугольнику можно, например, подсчетом суммарного
угла с вершиной на пикселе при обходе контура многоугольника. Если пиксел внутри, то угол
будет равен 360°, если вне - 0° (рис. 1).
Рис. 1: Определение принадлежности пиксела многоугольнику
Вычисление принадлежности должно производиться для всех пикселов экрана и так как
большинство пикселов скорее всего вне многоугольников, то данный способ слишком
расточителен. Объем лишних вычислений в некоторых случаях можно сократить использованием
прямоугольной оболочки - минимального прямоугольника, объемлющего интересующий объект,
но все равно вычислений будет много. Другой метод определения принадлежности точки
внутренней части многоугольника будет рассмотрен ниже при изучении отсечения отрезков по
алгоритму Кируса-Бека
2
Блок-схемы алгоритма основных процедур
Начало
Вывод данных
о работе и авторе
Рисование треугольника
Закрасить
треугольник?
НЕТ
ДА
Ставим пиксель в центр треугольника
Определяем нарисован ли соседний
пиксель определенным кодом (цветом)
Цвет соседнего
пикселя один и тот
же?
ДА
НЕТ
Закрашиваем соседний пиксель
определенным кодом.
3
Поиск следующего пикселя, расположенного с
предыдущим закрашенным пикселем
Все оставшиеся пиксели, которые
отличаются по коду, закрашиваем
Мы в самой верхней
вершине?
НЕТ
ДА
Конец
4
Пример операции закраски треугольника
5
Вывод
В процессе выполнения данной работы были изучены методы заполнения
области определенным цветом и приобретены навыки использования
алгоритмов при составлении графических программ.
6
Документ
Категория
Программирование, Базы данных
Просмотров
19
Размер файла
54 Кб
Теги
лаба
1/--страниц
Пожаловаться на содержимое документа