Компьютерная графика: методические рекомендации к лабораторным работам

Данное методическое пособие предназначено для студентов специальностей в области информационных технологий и программной инженерии. В издании подробно рассматриваются фундаментальные алгоритмы компьютерной графики: от формирования цветов и построения примитивов (отрезков, окружностей) до сложных методов визуализации 3D-сцен, включая аффинные преобразования, алгоритмы удаления невидимых граней (Робертса, Z-буфер) и современные модели освещения (Гуро, Фонга).

Выходные данные

ГОСУДАРСТВЕННОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «БЕЛОРУССКО-РОССИЙСКИЙ УНИВЕРСИТЕТ»

Кафедра «Автоматизированные системы управления»

КОМПЬЮТЕРНАЯ ГРАФИКА

Методические рекомендации к лабораторным работам для студентов специальности 1-53 01 02 «Автоматизированные системы обработки информации» и направлениям подготовки 09.03.01 «Информатика и вычислительная техника», 09.03.04 «Программная инженерия» дневной и заочной форм обучения

Могилев 2018

УДК 621.01, ББК 36.4, К 87

Рекомендовано к изданию учебно-методическим отделом Белорусско-Российского университета. Одобрено кафедрой «Автоматизированные системы управления» «06» февраля 2018 г., протокол № 10.

Составитель: канд. техн. наук, доц. А. В. Шилов. Рецензент: канд. техн. наук, доц. И. В. Лесковец.

Введение

Целью изучения учебной дисциплины «Компьютерная графика» является формирование у обучающихся навыков осваивать новые и применять существующие алгоритмы компьютерной графики, графических приложений, инструментария для написания приложений, стандартов в области разработки графических систем.

Целью данных методических рекомендаций является приобретение обучающимися знаний в областях геометрического моделирования, свойств геометрических моделей, параметризации моделей, геометрических операций над моделями, алгоритмов визуализации: отсечения, развертки, удаления невидимых линий и поверхностей, закраски; способов создания фотореалистических изображений, основных функциональные возможности современных графических систем, организация диалога в графических системах; классификация и обзор современных графических систем.

Задачей компьютерной графики является визуализация кривых и прямых линий и поверхностей, исходя из их математического описания.

1 Формирование цветов

Цель работы: изучение цветовых характеристик и аддитивной цветовой модели RGB. Эта модель используется для описания цветов, которые получаются с помощью устройств, основанных на принципе излучения. В качестве основных цветов выбран красный (Red), зеленый (Green) и синий (Blue).

[IMAGE_1]

Рисунок 1.1 – Основные цвета RGB и их смешение

Цвет описывается формулой: C = r · R + g · G + b · B, где r, g и b – количество соответствующих основных цветов.

[IMAGE_2]

Рисунок 1.2 – Треугольник Максвелла

Цвет, создаваемый смешиванием трех основных компонент, можно представить вектором в трехмерной системе координат R, G и В.

[IMAGE_3]

Рисунок 1.3 – Трехмерные координаты RGB

Для кодирования цвета в формате True Color каждая компонента представлена в виде байта (0…255), что дает 16,7 млн цветов.

Вопрос Рейтинг
Дать определение термину «Растр» 1
Геометрические характеристики растра 1
Оценка разрешающей способности растра 1
Аддитивная цветовая модель RGB 1
Формирование треугольника Максвелла 2
Трехмерные координаты RGB 1
Соотношение для перекодирования цвета из модели CMY в RGB 1
Компонентный способ кодирования цветов 1
Коды изображений True Color 1
Функция VBA RGB 1

2 Алгоритмы вычерчивания отрезков прямых

Цель работы: изучение алгоритма Брезенхема для вычерчивания отрезков. Алгоритм определяет, какие точки двумерного растра нужно закрасить, чтобы получить близкое приближение прямой линии.

[IMAGE_4]

Рисунок 2.1 – Основная идея алгоритма Брезенхема

Рисунок 2.2 – Изображение отрезка в растре при его построении методом Брезенхема (а) и график ошибки (б)

Вопрос Рейтинг
Записать рекуррентное соотношение для последовательных значений по методу ЦДА 1
Алгоритм формирования отрезка методом ЦДА 1
Представить график ошибки в алгоритме Брезенхема 1
Как изменяется величина ошибки при закрашивании пиксела по оси Х 1
Как изменяется величина ошибки при закрашивании пиксела по оси Y 1
Пояснить схему алгоритма построения отрезка методом Брезенхема 2

3 Формирование цветов с помощью дизеринга

Цель работы: изучение технологии формирования цветов с помощью дизеринга. Если графическое устройство не способно воссоздавать достаточное количество цветов, используют растрирование. Дизеринг позволяет увеличить количество оттенков цветов за счет снижения пространственного разрешения.

Цвет ячейки С можно оценить соотношением: C = (S1*C1 + S2*C2) / S.

Вопрос Рейтинг
Дать определение термину «Дизеринг» 1
Сколько градаций серого цвета обеспечивает растр 4 х 4 1
Формула для расчета цвета в системе RGB. 1
Дать определение термину «линеатура» 1
Дать определение термину «ЧМ-дизеринг» 1

4 Алгоритмы вычерчивания окружностей

Цель работы: изучение алгоритма Брезенхема для вычерчивания окружностей. Необходимо сгенерировать только одну четвертую часть окружности, остальные части получаются отражениями.

[IMAGE_6]

Рисунок 4.1 – Окружность в первом квадранте

[IMAGE_7]

Рисунок 4.2 – Выбор пикселей в первом квадранте

[IMAGE_8]

Рисунок 4.3 – Пересечение окружности и сетки растра

Вопрос Рейтинг
Записать формулы, для вычисления расстояния между возможными пикселями и окружностью 1
Привести типы пересечений окружности и сетки растра 1
Как изменяется величина di при закрашивании пикселя по mh 1
Как изменяется величина di при закрашивании пикселя по mV 1
Как изменяется величина di при закрашивании пикселя по mD 1
Пояснить схему алгоритма формирования окружности 3

5 Алгоритмы заполнение многоугольников методом САР

Цель работы: изучение алгоритма с упорядоченным списком ребер (САР). При сканировании изображения необходимо корректировать САР, включая новые отрезки и исключая те, что закончились.

[IMAGE_9]

Рисунок 5.1 – Сканирующая строка

Вопрос Рейтинг
Как определяется наименьшей прямоугольник, содержащий внутри себя многоугольник 1
Дайте определение термину «Активное ребро» 1
Как определить для каждого активного ребра многоугольника точки пересечений со сканирующими строками 1
Пояснить схему алгоритма закраски треугольника методом САР 1
Пояснить схему алгоритма закраски четырехугольника 1
Дать пояснения операторам, используемым в программе 1

6 Алгоритмы заполнение многоугольников методом заливки

Цель работы: изучение алгоритма заполнения с затравкой. Предполагается, что известен хотя бы один пиксель из внутренней области многоугольника. Используется стек (LIFO).

Вопрос Рейтинг
Какая область называется гранично-определенной 1
В чем различие между 8-связной и 4-связной областью 1
Как определялся затравочный пиксел 1
Для чего используется стек 1
Пояснить схему алгоритма закраски 1

7 Аффинные преобразования

Цель работы: изучение алгоритмов параллельного сдвига, растяжения – сжатия и поворота графического объекта.

Рисунок 7.1 – Параллельный сдвиг координат

[IMAGE_11]

Рисунок 7.2 – Растяжение-сжатие осей координат

Рисунок 7.3 – Поворот вокруг центра координат

Вопросы Рейтинг
Какие преобразования координат называют «аффинными» 1
Записать линейные преобразования в матричной форме 1
Привести формулу для вычисления элементов матрицы С=А*В 1
Привести формулы параллельного сдвига координат точки 1
Привести формулы растяжение-сжатие координат точки 1
Привести формулы для поворота координат точки 1
Перечислить свойства аффинного преобразования 1
Пояснить схему алгоритма преобразования координат в плоскости 2

8 Метод Робертса

Цель работы: изучение алгоритма удаления невидимых граней методом Робертса. Алгоритм работает в объектном пространстве и удаляет нелицевые грани.

[IMAGE_13]

Рисунок 8.1 – Куб с центром в начале координат

[IMAGE_14]

Рисунок 8.2 – Точка наблюдения вне тела

Вопрос Рейтинг
Привести уравнение плоскости в трехмерном пространстве в алгебраическом и матричном виде 1
Привести пример и пояснить создание матрицы выпуклого тела 1
Как определяется, с какой стороны плоскости находится точка с координатами X0, Y0, Z0 1
Привести формулы видового преобразования тела 1
Пояснить схему алгоритма Робертса 2
Пояснить схему алгоритма поворота объекта № 3 вокруг оси 0Z 2

9 Метод Z-буфера

Цель работы: изучение алгоритма удаления невидимых граней методом Z-буфера. Z-буфер — это отдельный буфер глубины, используемый для запоминания координаты z каждого видимого пиксела.

[IMAGE_15]

Рисунок 9.1 – Сканирующая строка по грани

Вопрос Рейтинг
Какая информация содержится в массиве листа «Z-буфер» 1
Привести формулу для определения глубины z(x, у) 1
Какая информация содержится в массиве листа «кадр» 1
Пояснить схему алгоритма для визуализации сцены пересечения объекта № 3 и куба 2

10 Модели отражения света

Цель работы: изучение алгоритма изображения поверхности согласно интенсивности отраженного света.

[IMAGE_16]

Рисунок 10.1 – Падающий свет и нормаль к поверхности

Рисунок 10.2 – Зеркальное отражение

Вопрос Рейтинг
Перечислите модели освещения 1
Привести формулу эмпирической модели распределения Фонга для зеркального отражения 1
Привести формулу закона Ламберта для диффузного отражения 1
Привести формулу, для учета зеркального и диффузного отражения 1
Привести формулу, для вычисления нормали к грани в пространстве 1
Привести формулу, для определения косинуса угла между вектором нормали направлением на источник света 1
Привести формулу, для определения косинуса угла между отраженным лучом и направлением камеры 1
Пояснить схему алгоритма для визуализации сцены пересечения объекта № 3 и куба 2

11 Модель отражения света Гуро

Цель работы: изучение алгоритма изображения поверхности согласно интенсивности отраженного света с помощью модели Гуро. Метод основан на интерполяции интенсивности.

[IMAGE_18]

Рисунок 11.1 – Нормали к вершинам

Рисунок 11.2 – Интерполяция интенсивностей

Вопрос Рейтинг
Перечислите этапы закрашивания грани по методу Гуро 3
Привести формулу Вектора нормали в вершине по методу Гуро 1
Привести формулу для интерполирования интенсивности по методу Гуро 2

12 Модель отражения света Фонга

Цель работы: изучение алгоритма изображения поверхности согласно интенсивности отраженного света с помощью модели Фонга. В методе используется интерполяция вектора нормали к поверхности.

Вопрос Рейтинг
Перечислите этапы закрашивания грани по методу Фонга. 3
Привести формулу для интерполирования векторов нормалей по методу Фонга. 2
Оцените статью
Сессия под ключ дистанционно
Добавить комментарий

Заявка на расчет