ЛАБОРАТОРНЫЕ РАБОТЫ ПО ДИСЦИПЛИНЕ
«КОМПЬЮТЕРНАЯ ГЕОМЕТРИЯ И ГРАФИКА»
Лабораторная работа №1.
ИССЛЕДОВАНИЕ ДВУМЕРНЫХ ПРЕОБРАЗОВАНИЙ
ГРАФИЧЕСКИХ ОБЪЕКТОВ
Исходные
материалы:
Персональный компьютер
Программный модуль для исследования двумерных преобразований предоставленный сотрудниками МИРЭА 2D – преобразования.
Методические
указания по выполнению работы
Методические указания по
выполнению работы и пользованием программным модулем представлены в следующем документе.
Цель работы
Закрепление на
практике знаний математического аппарата, положенного в основу двумерных
преобразований графических объектов (на примере преобразований треугольников).
Программа
работы
1. Согласуйте с ведущим преподавателем номер варианта, в
соответствии с которым Вы будете проводить исследования. Ознакомьтесь с данным
вариантом задания (с рекомендуемыми значениями координат вершин исходного
треугольника и – при выполнении соответствующих пунктов программы –
коэффициентов матрицы общего преобразования или иных параметров
преобразования). Варианты представлены в следующем документе.
2. Осуществите следующие преобразования исходного
треугольника, удаляя каждый раз перед очередным преобразованием результат
предыдущего:
a)
локальное масштабирование по координатным осям x
и y,
используя одну матричную операцию;
b)
симметричное отражение относительно оси x
(или y);
c)
симметричное отражение относительно точки начала координат
(поворот на 180°);
d)
сдвиг вдоль оси x пропорционально координате y (или
вдоль оси y пропорционально координате x);
e)
поворот на 90°(или на – 90°) относительно точки начала координат;
f)
поворот на угол q относительно точки начала координат;
g)
отражение относительно прямой линии у = x (или у = –
x);
Сформулируйте
вывод относительно назначения коэффициентов левой верхней 2´2 подматрицы
матрицы общего преобразования.
3. Реализуйте перемещения исходного треугольника вдоль
координатных осей x и y, используя одну матричную операцию.
Сформулируйте
вывод относительно назначения коэффициентов левой нижней 1´2 подматрицы матрицы общего преобразования.
4. Осуществите поворот исходного треугольника вокруг
точки с координатами (m,n) на угол q, используя при этом следующие
последовательные преобразования:
a)
переместите объект преобразования таким образом, чтобы точка,
относительно которой совершается поворот, попала в начало координат;
b)
выполните поворот объекта на требуемый угол вокруг точки начала координат;
c)
осуществите обратное (по отношению к п/п.
a)
перемещение объекта.
5. Рассчитайте матрицу полного преобразования,
реализованного в предыдущем пункте. Примените ее для преобразования исходного
треугольника. Сравните результаты, полученные в настоящем и предыдущем пунктах.
Сформулируйте
вывод о возможных путях реализации комбинаций двумерных преобразований.
6. Реализуйте симметричное отражение исходного
треугольника относительно прямой линии , используя при
этом следующие последовательные преобразования:
a)
переместите объект преобразования вдоль оси x или y таким образом, чтобы прямая, относительно
которой он отражается, прошла через точку начала координат;
b)
поверните объект вокруг точки начала координат до
совпадения прямой,
относительно которой он отражается, с координатной
осью xили y;
c)
симметрично
отразите объект относительно той
оси, с которой в п/п. b
совмещена прямая;
d)
осуществите обратный (по отношению к п/п.
b) поворот
объекта;
e)
осуществите обратное (по отношению к п/п.
a)
перемещение объекта.
7. Осуществите те же последовательные преобразования
исходного треугольника, что и в пункте 6, но поменяв местами п/п.п. d и e. Сравните результаты полных преобразований,
полученные в настоящем пункте и в пункте 6.
Сформулируйте
вывод относительно коммутативности операции умножения матриц и, соответственно,
о правилах реализации комбинаций преобразований.
8. Реализуйте по отношению к исходному треугольнику
проецирование в однородных координатах.
Сделайте
выводы о геометрическом смысле проведенного преобразования и процедуры
нормализации результата умножения матриц. Сформулируйте также вывод
относительно назначения коэффициентов правой верхней 2´1 подматрицы матрицы общего преобразования.
9. Осуществите общее масштабирование исходного
треугольника.
Сформулируйте
вывод относительно назначения коэффициента правой нижней 1´1 подматрицы матрицы общего преобразования.
10.Реализуйте преобразование исходного треугольника,
используя матрицу общего преобразования со значениями коэффициентов p и q,
приведенными в последнем пункте варианта задания.
Сформулируйте
вывод относительно результата преобразования третьей вершины треугольника.
Контрольные
вопросы
1. Поясните, как можно осуществить такие простые
двумерные преобразования точек, как локальное масштабирование, отражение
относительно координатных осей и точки начала координат, сдвиг, с
использованием матрицы общего преобразования размером 2´2.
2. Каким образом принципы преобразования точек
распространяются на преобразования отрезков прямых и многоугольников?
3. Как осуществить поворот объекта на 90°, на 180°,
на 270°, на произвольный угол?
4. Каковы принципы комбинирования преобразований?
5. Поясните, зачем при двумерных преобразованиях вводятся
однородные координаты точек и матрица преобразования размером 3´3.
6. Как реализуются перемещения объектов вдоль
координатных осей?
7. Поясните математический, в том числе геометрический
смысл проецирования в однородных координатах.
8. Как осуществить общее масштабирование объектов?
9. Поясните структуру матрицы общего преобразования.
Сформулируйте вывод относительно назначения отдельных коэффициентов этой
матрицы и четырех ее подматриц в целом.
10.Каким образом точка с конечными координатами может
быть преобразована в точку бесконечности?
Лабораторная работа №2.
ИССЛЕДОВАНИЕ ПРОСТРАНСТВЕННЫХ
ПРЕОБРАЗОВАНИЙ ГРАФИЧЕСКИХ ОБЪЕКТОВ
Исходные
материалы:
Персональный компьютер
Программный модуль для исследования пространственных преобразований предоставленный сотрудниками МИРЭА 3D – преобразования.
Методические
указания по выполнению работы
Методические указания по
выполнению работы и пользованием программным модулем представлены в следующем документе.
Цель работы
Закрепление на
практике знаний математического аппарата, положенного в основу пространственных
преобразований графических объектов (на примере преобразований
четырехгранников).
Программа
работы
1. Согласуйте с ведущим преподавателем номер варианта, в
соответствии с которым Вы будете проводить исследования. Ознакомьтесь с данным
вариантом задания (с рекомендуемыми значениями координат вершин исходного черырехгранника и – при выполнении соответствующих пунктов
программы – коэффициентов матрицы общего преобразования или иных параметров
преобразования). Варианты представлены в следующем документе.
2. Осуществите следующие преобразования исходного
четырехгранника, удаляя каждый раз перед очередным преобразованием результат
предыдущего:
a)
локальное масштабирование по координатным осям x
и z,
используя одну матричную операцию;
b)
симметричное отражение относительно координатной
плоскости xz (y = 0);
c)
симметричное отражение относительно оси x;
d)
сдвиг вдоль оси x пропорционально координате z;
e)
поворот на – 90° вокруг
координатной оси z;
f)
поворот на угол f вокруг координатной оси y.
Сформулируйте
вывод относительно назначения коэффициентов левой верхней 3´3 подматрицы
матрицы общего преобразования.
3. Осуществите перемещения исходного четырехгранника
вдоль осей y и z,
используя одну матричную операцию.
Сформулируйте
вывод относительно назначения коэффициентов левой нижней 1´3 подматрицы
матрицы общего преобразования.
4. Реализуйте по отношению к исходному четырехграннику
проецирование в однородных координатах.
Сделайте выводы
о математическом смысле проведенного преобразования и процедуры нормализации
результата умножения матриц. Сформулируйте также вывод относительно назначения
коэффициентов правой верхней 3´1 подматрицы
матрицы общего преобразования.
5. Реализуйте общее масштабирование исходного
четырехгранника.
Сформулируйте вывод
относительно назначения коэффициента правой нижней 1´1 подматрицы
матрицы общего преобразования.
6. Осуществите поворот исходного четырехгранника на угол f вокруг прямой линии, параллельной координатной оси y и заданной, соответственно, значениями двух координат:
x = l, z = n;
используйте при этом следующие последовательные преобразования:
a)
переместите объект преобразования таким образом, чтобы прямая, относительно которой совершается поворот, совпала с
осью y;
b)
поверните объект на требуемый угол вокруг оси y;
c)
осуществите обратное (по отношению к п/п.
a) перемещение объекта.
7. Рассчитайте матрицу полного преобразования,
реализованного в предыдущем пункте. Примените ее для преобразования исходного
четырехгранника. Сравните результаты, полученные в настоящем и предыдущем
пунктах.
8. Осуществите поворот исходного четырехгранника на угол χ
вокруг прямой линии, которая заданна точкой с
координатами (0, 0, 0) и направляющим вектором, представленным матрицей ; используйте при этом следующие последовательные
преобразования:
a)
поверните объект преобразования вокруг двух координатных
осей на соответствующие углы таким образом, чтобы прямая, относительно
которой совершается поворот, совпала с
какой-либо координатной осью;
b)
реализуйте поворот на требуемый угол вокруг той
координатной оси, с которой в п/п. a совмещена
прямая;
c)
осуществите обратные (по отношению к п/п.
a) повороты
в обратной же последовательности.
9. Реализуйте симметричное отражение исходного
четырехгранника относительно плоскости , используя при этом следующие последовательные
преобразования:
a)
определив координаты какой-либо одной точки, принадлежащей
плоскости отражения, переместите объект
преобразования так, чтобы эта точка попала в начало координат;
b)
поверните объект вокруг одной или двух координатных осей
таким образом, чтобы плоскость отражения совпала с какой-либо координатной
плоскостью;
c)
симметрично
отразите объект относительно той
координатной плоскости, с которой в п/п. b совмещена плоскость
отражения;
d)
осуществите соответственно один или два обратных (по
отношению к п/п. b) поворота (во втором случае –
в обратной же последовательности);
e)
осуществите обратное (по отношению к п/п.
a) перемещение объекта.
По результатам
выполнения пунктов 6, 7, 8 и 9 сформулируйте вывод о возможных путях реализации
комбинаций пространственных преобразований.
10.Получите такую ортографическую проекцию исходного
четырехгранника на плоскость xy (z = 0), в которой какая-либо грань объекта, не параллельная
ни одной координатной плоскости, была бы отражена без искажения.
Сформулируйте
вывод относительно возможности применения ортографического проецирования для
формирования вспомогательных видов и сечений геометрически сложных трехмерных
объектов с целью адекватного восприятия их формы.
Контрольные вопросы
1. Расскажите об основных принципах реализации
пространственных преобразований графических объектов с использованием
однородных координат и матрицы общего преобразования размером 4´4.
2. Поясните математический и геометрический смысл таких
пространственных преобразований, как локальное и общее масштабирование,
отражения относительно координатных осей и плоскостей, а также точки начала
координат, трехмерные сдвиги и перемещения.
3. Каким образом осуществляются повороты объектов на
произвольные углы относительно трех координатных осей?
4. Как реализуется поворот объекта на произвольный угол
вокруг прямой линии, параллельной какой-либо координатной оси?
5. Как реализовать поворот объекта на произвольный угол
вокруг прямой, произвольным образом ориентированной в
пространстве?
6. Каким образом осуществляется симметричное отражение
объекта относительно произвольной плоскости?
7. Каковы общие принципы формирования плоских
параллельных проекций? Как формируются плоские параллельные и перспективные
проекции? Расскажите о известных Вам видах
параллельных и перспективных проекций.
8. Каковы принципы формирования параллельных
ортографических проекций трехмерных графических объектов?
9. Каковы принципы формирования перспективных
одноточечных проекций трехмерных графических объектов? Как они согласуются с
законами линейной перспективы?
Лабораторная работа №3.
РАСТРОВАЯ ГРАФИКА. ADOBE PHOTOSHOP
Цель работы
Закрепление на
практике знаний теоретического материала, по растровой графике с помощью
графического редактора ADOBE PHOTOSHOP.
Исходные
материалы:
1.
Персональный
компьютер.
2.
Растровый
редактор Adobe Photoshop.
3.
Растровые
изображения Start.psd.
Для реализации программы
выполнения лабораторной работы можно воспользоваться теоретическим материалом представленном в документе.
Программа
работы
1. Выполнить работу с инструментами выделения и
перемещения
2. Выполнить работу со слоями, текстом, градиентной
заливкой
3. Использовать функции ретуширования
4. Выполнить работу с функциями трансформирования объектов
5. Создание сферы
6. Создание сияющего текста
7. Создание стеклянного текста
8. Создание реалистичной печати
9. Восстановление JPEG
изображения
Контрольные
вопросы
1.
Как выполнить
зеркальное отображение объектов?
2. Для выделения каких объектов
целесообразно использовать Волшебную палочку
3.
Каких видов
бывают градиентные заливки?
4.
Какие операции
можно проводить над слоями?
5.
Как задать
фиксированные размеры для кадрирования изображения?
6. Что происходит с изображением при использовании
инструмента «Штамп»?
7.
С помощью каких команд можно сделать изображение прозрачным?
8.
Для чего
осуществляется преобразование цветовых палитр изображения?
9.
Какие инструменты
можно использовать для создания сферы?
10.
Для чего
используется процедура «Инвертировать выделение»?
11.
Для чего в
растровой графике используются различные фильтры?
12.
Какими командами
можно объединить несколько слоёв?
13.
С помощью каких команд можно создать копию слоя?
14.
Какие изменения
происходят с изображением при использовании фильтра Filter > Blur > Gaussian Blur ?
15.
Какое влияние на изображение
оказывает изменение значения радиуса фильтра Gaussian Blur?
16.
Какие приёмы
изменения цвета реализованы в Photoshop?
17.
Для чего
используется режим редактирования Quick Mask?
18.
Что может
произойти при сжатии изображения форматом JPEG?
19.
Чем отличаются цветовые
палитры RGB и Lab?
Лабораторная работа №4.
ВЕКТОРНАЯ ГРАФИКА. COREL DRAW
1.
Персональный
компьютер.
2.
Векторный
редактор Corel Draw.
Для реализации программы
выполнения лабораторной работы можно воспользоваться теоретическим материалом представленном в документе.
Цель работы
Закрепление на
практике знаний математического аппарата, путем создания программы на языке
программирования, положенного в основу Алгоритма Брезенхема для
генерации окружности.
Программа
работы
1.
Выполнить масштабирование изображения
2. Осуществить работу с объектами
3.
Просмотреть режимы отображения изображений
4. Показать
умение использования шаблонов
5.
Создание стандартных графических объектов
6. Осуществить управление объектами
8. Создание объектов сложных форм
9. Осуществить
цветовые заливки
10.
Ввод и редактирование текста
11.
Векторные эффекты изменения формы
12.
Трехмерные эффекты
и эффект тени
14. Импортирование и экспортирование изображений
Контрольные вопросы
1.
С помощью какой клавиши можно зеркально отобразить объекты?
2. Для чего используется режим «Распылитель»?
3.
С помощью каких команд можно присвоить свойства одного
контурного объекта другому?
4. Для чего в Corel Draw используется инструмент «Пипетка»?
5.
С помощью каких команд можно замкнуть открытый контурный
объект и закрасить его?
6. Для чего используется кнопка Align?
7.
Как можно
разделить объект на части?
8.
Какие операции
можно совершать над текстовым объектом?
9. Как расположить текст вдоль заданного
пути?
Лабораторная работа №5.
АЛГОРИТМ
БРЕЗЕНХЕМА ДЛЯ ГЕНЕРАЦИИ ОКРУЖНОСТИ
Цель работы
Закрепление на
практике знаний математического аппарата, путем создания программы на языке
программирования, положенного в основу Алгоритма Брезенхема для генерации
окружности.
Программа
работы
1.
Согласуйте с ведущим преподавателем номер варианта, в соответствии с которым Вы
будете создавать программу.
2.
Ознакомьтесь с данным вариантом задания (с рекомендуемыми значениями координат
центра и значением радиуса окружности).
3.
Создать программу растровой дискретизации окружности по методу Брезенхема.
4. Создать таблицу данных по разложению
в растр 1/4 или 1/8 части окружности по алгоритму Брезенхема в
зависимости от варианта.
5. Представить наглядное построение
окружности.
Теория алгоритмов Брезенхема
растрового разложения окружности подробно описана в лекции.
Контрольные вопросы
1.
Что такое разложение в
растр?
2.
Какова математическая
основа растрового разложения в алгоритме Брезенхема?
3.
По какому критерию инициализируется
пиксель в этом алгоритме?
4.
Чем отличаются ветви
алгоритма при углах наклона <45° и >45°?
5.
Какую часть окружности
достаточно построить, чтобы затем путем отражений получить окружность целиком?
6.
Какую часть эллипса
достаточно построить, чтобы затем путем отражений получить эллипс целиком?
7.
Назовите два типа
алгоритмов заполнения областей.
8.
Какая структура данных
используется в алгоритмах с затравкой?
Лабораторная работа №6.
АЛГОРИТМ
БРЕЗЕНХЕМА ДЛЯ ГЕНЕРАЦИИ ЭЛЛИПСА
Цель работы
Закрепление на
практике знаний математического аппарата, путем создания программы на языке
программирования, положенного в основу Алгоритма Брезенхема для
генерации эллипса.
Программа
работы
1.
Согласуйте с ведущим преподавателем номер варианта, в соответствии с которым Вы
будете создавать программу.
2.
Ознакомьтесь с данным вариантом задания (с рекомендуемыми значениями координат
центров и значением радиусов эллипса).
3.
Создать программу растровой дискретизации эллипса по методу Брезенхема.
4. Создать таблицу данных по разложению
в растр 1/4 или 1/8 части эллипса по алгоритму
Брезенхема в зависимости от варианта.
5. Представить наглядное построение
эллипса.
Теория алгоритмов Брезенхема
растрового разложения эллипса подробно описана в лекции.
Контрольные вопросы
1.
Что такое разложение в
растр?
2.
Какова математическая
основа растрового разложения в алгоритме Брезенхема?
3.
По какому критерию
инициализируется пиксель в этом алгоритме?
4.
Чем отличаются ветви
алгоритма при углах наклона <45° и >45°?
5.
Какую часть окружности
достаточно построить, чтобы затем путем отражений получить окружность целиком?
6.
Какую часть эллипса
достаточно построить, чтобы затем путем отражений получить эллипс целиком?
7.
Назовите два типа
алгоритмов заполнения областей.
8.
Какая структура данных
используется в алгоритмах с затравкой?
Лабораторная работа №7.
ЗАПОЛНЕНИЕ
МНОГОУГОЛЬНИКОВ
Цель работы
Закрепление на
практике знаний математического аппарата, путем создания программы на языке
программирования, положенного в основу алгоритмов заполнение многоугольников.
Программа
работы
1.
Согласуйте с ведущим преподавателем номер варианта, в соответствии с которым Вы
будете создавать программу. Предполагается
три метода заполнения многоугольников:
2.
Ознакомьтесь с данным вариантом задания (с рекомендуемыми значениями
параметров).
3.
Создать программу заполнения многоугольников согласно выбранному вариантом
методу.
4. Представить наглядное
заполнения многоугольников.
Теория алгоритмов заполнения
многоугольников подробно описана в лекции
Контрольные вопросы
1.
Что такое разложение в
растр?
2.
Какова математическая
основа растрового разложения в алгоритме Брезенхема?
3.
По какому критерию
инициализируется пиксель в этом алгоритме?
4.
Чем отличаются ветви
алгоритма при углах наклона <45° и >45°?
5.
Какую часть окружности
достаточно построить, чтобы затем путем отражений получить окружность целиком?
6.
Какую часть эллипса
достаточно построить, чтобы затем путем отражений получить эллипс целиком?
7.
Назовите два типа
алгоритмов заполнения областей.
8.
Какая структура данных
используется в алгоритмах с затравкой?