Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КГ лабы.doc
Скачиваний:
16
Добавлен:
10.05.2015
Размер:
455.68 Кб
Скачать

Афинные преобразования в пространстве и параллельное проецирование

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

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

Теоретическая справка.

Матрица линейного преобразования общего вида для трехмерных однородных координат выглядит следующим образом:

.

Аналогично случаю преобразования на плоскости (см. лаб. раб. N 2) эту матрицу можно разбить на 4 подматрицы: .

Подматрица 3х3 осуществляет линейные преобразования в виде изменения масштаба, сдвига и вращения.

Подматрица 3х1 производит перенос (или смещение) трехмерного изображения.

Подматрица 1х3 осуществляет перспективные преобразования в пространстве.

Скалярный элемент s(подматрица 1х1) выполняет общее изменение масштаба по всем трем осям одновременно.

Полное преобразование, полученное путем воздействия на вектор положения матрицей 4х4 и нормализации преобразованного вектора (т.е. делением на последний элемент строки всех 4-х компонент вектора) называется билинейным преобразованием. Оно обеспечивает выполнение операций сдвига, частичного изменения масштаба, вращения, отражения, переноса и изменения масштаба в целом.

Аксонометрическая ортографическая проекция строится при помощи следующей матрицы:

Смещает изображение по оси zнаrединиц и проецирование происходит в плоскостиz=0.

Цепочка преобразований

Для выполнения сложных пространственных преобразований объекта необходимо сложное перемещение разложить на последовательность элементарных преобразований и применить их последовательно к исходному объекту. Результирующая матрица сложного преобразования определяется произведением матриц элементарных преобразований (см. лаб. раб. №2).

Так как операция умножения матриц не является коммутативной, менять местами матрицы в цепочке преобразований нельзя.

Порядок выполнения.

  1. Получить вариант задания.

  2. Определить вид матрицы сложного преобразования.

  3. Рассчитать тестовый пример.

  4. Написать и отладить программу, реализующую данное преобразование.

  5. Показать работу преподавателю.

  6. Оформить отчет и защитить работу.

Содержание отчета.

  1. Формулировка задания.

  2. Теоретическая часть.

  3. Текст программы.

  4. Тестовый пример.

  5. Выводы.

Контрольные вопросы.

  1. Что такое простые и сложные геометрические преобразования точки в пространстве?

  2. Привести формулы простых преобразований.

  3. Что такое однородные координаты точки?

  4. Пояснить суть матричного подхода для описания геометрических преобразований точки.

  5. Как реализовать геометрическое преобразование плоской фигуры, заданной с помощью вершин?

ЛАБОРАТОРНАЯ РАБОТА №4

Афинные преобразования в пространстве и центральное проецирование

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

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