Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ КГ.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.16 Mб
Скачать

Лабораторная работа №3. Исследование пространственных преобразований графических объектов.

Целью работы являетсязакрепление на практике знаний математического аппарата, положенного в основу пространственных преобразований графических объектов (на примере преобразований четырехгранников).

Теоретическая справка.При пространственных преобразованиях графических объектов каждая точка P(x,y,z) в пространстве однозначно отображается содержащей однородные координаты этой точки матрицей (координатным вектором) размером 14 вида . Отрезку прямой между точками (x1, y1 ,z1) и (x 2 , y2 ,z2) ставится в соответствие 24 матрица вида . Многогранник может быть представлен M4 матрицей (где M – число вершин многогранника), содержащей однородные координаты его вершин: . Преобразования осуществляются путем умножения таких матриц на матрицу общего преобразования размером 44 вида . Результат преобразования зависит от конкретного вида матрицы преобразования. Если координатный вектор преобразованной точки содержит h ≠ 1 и h ≠ 0, результат нормализуют путем деления всех четырех составляющих однородных координат на h, т.е. приводят к виду , где x* = x/h, y* = y/h, z* = z/h. Равенство нулю координаты h в результате матричного умножения (координатный вектор преобразованной точки при этом имеет вид ) свидетельствует о том, что исходная точка преобразована в точку бесконечности, лежащую на луче, который идет из начала координат через точку (x,y,z).

Матрицы простых пространственных преобразований графических объектов представлены в приложении 2.

Рекомендации по выполнению лабораторной работы:

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

  1. Согласуйте с ведущим преподавателем номер варианта, в соответствии с которым вы будете проводить исследования. Варианты заданий представлены в таблице 2. Ознакомьтесь с данным вариантом задания (с рекомендуемыми значениями координат вершин исходного четырёхгранника и – при выполнении соответствующих пунктов программы – коэффициентов матрицы общего преобразования или иных параметров преобразования).

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

  1. локальное масштабирование по координатным осям x и z, используя одну матричную операцию;

  2. симметричное отражение относительно координатной плоскости xz (y = 0);

  3. симметричное отражение относительно оси x;

  4. сдвиг вдоль оси x пропорционально координате z;

  5. поворот на – 90 вокруг координатной оси z;

  6. поворот на угол  вокруг координатной оси y.

Сформулируйте вывод относительно назначения коэффициентов левой верхней 33 подматрицы матрицы общего преобразования.

  1. Осуществите перемещения исходного четырехгранника вдоль осей y и z, используя одну матричную операцию.

Сформулируйте вывод относительно назначения коэффициентов левой нижней 13 подматрицы матрицы общего преобразования.

  1. Реализуйте по отношению к исходному четырехграннику проецирование в однородных координатах.

Сделайте выводы о математическом смысле проведенного преобразования и процедуры нормализации результата умножения матриц. Сформулируйте также вывод относительно назначения коэффициентов правой верхней 31 подматрицы матрицы общего преобразования.

  1. Реализуйте общее масштабирование исходного четырехгранника.

Сформулируйте вывод относительно назначения коэффициента правой нижней 11 подматрицы матрицы общего преобразования.

  1. Осуществите поворот исходного четырехгранника на угол вокруг прямой линии, параллельной координатной оси y и заданной, соответственно, значениями двух координат: x = l, z = n; используйте при этом следующие последовательные преобразования:

  1. переместите объект преобразования таким образом, чтобы прямая, относительно которой совершается поворот, совпала с осью y;

  2. поверните объект на требуемый угол вокруг оси y;

  3. осуществите обратное (по отношению к п/п. a) перемещение объекта.

  1. Рассчитайте матрицу полного преобразования, реализованного в предыдущем пункте. Примените ее для преобразования исходного четырехгранника. Сравните результаты, полученные в настоящем и предыдущем пунктах.

  2. Осуществите поворот исходного четырехгранника на угол χ вокруг прямой линии, которая заданна точкой с координатами (0, 0, 0) и направляющим вектором, представленным матрицей ; используйте при этом следующие последовательные преобразования:

  1. поверните объект преобразования вокруг двух координатных осей на соответствующие углы таким образом, чтобы прямая, относительно которой совершается поворот, совпала с какой-либо координатной осью;

  2. реализуйте поворот на требуемый угол вокруг той координатной оси, с которой в п/п. a совмещена прямая;

  3. осуществите обратные (по отношению к п/п. a) повороты в обратной же последовательности.

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

  1. определив координаты какой-либо одной точки, принадлежащей плоскости отражения, переместите объект преобразования так, чтобы эта точка попала в начало координат;

  2. поверните объект вокруг одной или двух координатных осей таким образом, чтобы плоскость отражения совпала с какой-либо координатной плоскостью;

  3. симметрично отразите объект относительно той координатной плоскости, с которой в п/п. b совмещена плоскость отражения;

  4. осуществите соответственно один или два обратных (по отношению к п/п. b) поворота (во втором случае – в обратной же последовательности);

  5. осуществите обратное (по отношению к п/п. a) перемещение объекта.

По результатам выполнения пунктов 6, 7, 8 и 9 сформулируйте вывод о возможных путях реализации комбинаций пространственных преобразований.

  1. Получите такую ортографическую проекцию исходного четырехгранника на плоскость xy (z = 0), в которой какая-либо грань объекта, не параллельная ни одной координатной плоскости, была бы отражена без искажения.

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

Таблица 2.

Дисциплина: «Компьютерная графика»

Лабораторная работа №3

Вариант задания №1

Координаты вершин исходного четырёхгранника

x1 = 100; y1 = 100; z1 = 50;x2 = 0; y2 = 100;z2 = 150;

x3 = 100; y3 = 0; z3 = 150;x4 = 100; y4 = 100; z4 = 150

Пункт/подпункт программы

работ

Параметры преобразования

2a

a = 3; j = 1.5*

2d

g = 1.5*

2f

= 30

3

m = 100; n = 150*

4

p = 0.03; q = 0.02*

5

s = 2*

6

= 50; l = 100; n = 50*

8

χ = 105

9

D = -50

* Значения остальных коэффициентов матрицы общего преобразования следует принимать такими же, как в матрице тождественного преобразования (см. приложение 1)

______________________________________

Дисциплина: «Компьютерная графика»

Лабораторная работа №3

Вариант задания №2

Координаты вершин исходного четырёхгранника

x1 = 200; y1 = 100; z1= 200;x2 = 200; y2 = 250; z2= 100;

x3 = 100; y3 = 250; z3= 200;x4 = 200; y4 = 250; z4 = 200

Пункт/подпункт программы

работ

Параметры преобразования

2a

a = 0.5; j = 1.5 *

2d

g = -0.5*

2f

= 120

3

m = 150; n = 100 *

4

p = 0.003;r = 0.001 *

5

s = 0.5*

6

= 140; l = 100; n = 100*

8

χ = 80

9

D = 100

* Значения остальных коэффициентов матрицы общего преобразования следует принимать такими же, как в матрице тождественного преобразования (см. приложение 1)

Дисциплина: «Компьютерная графика»

Лабораторная работа №3

Вариант задания №3

Координаты вершин исходного четырёхгранника

x1 = 100;y1 = 250; z1= 50;x2 = 100; y2 = 250; z2= 250;

x3 = 200;y3 = 150; z3= 150; x4 = 200; y4 = 250; z4 = 150

Пункт/подпункт программы

работ

Параметры преобразования

2a

a = 2.1; j = 1.2*

2d

g = 1.3*

2f

= 45

3

m = 50; n = 300 *

4

q = 0.01;r = 0.02*

5

s = 3*

6

= 80; l = 300; n = 150*

8

χ = 100

9

D = 200

* Значения остальных коэффициентов матрицы общего преобразования следует принимать такими же, как в матрице тождественного преобразования (см. приложение 1)

______________________________________

Дисциплина: «Компьютерная графика»

Лабораторная работа №3

Вариант задания №4

Координаты вершин исходного четырёхгранника

x1 = 100; y1 = 150;z1= 300;x2 = 200; y2 = 150; z2= 200;

x3 = 100; y3 = 50; z3= 200;x4 = 100; y4 = 150; z4 = 200

Пункт/подпункт программы

работ

Параметры преобразования

2a

a = 1.6; j = 1.2*

2d

g = 1.1*

2f

= 90

3

m = 50; n = -100*

4

p =0.002;q = 0.001;r = 0.003*

5

s = 0.6 *

6

= 115;l = 150;n = 150*

8

χ = 130

9

D = -150

* Значения остальных коэффициентов матрицы общего преобразования следует принимать такими же, как в матрице тождественного преобразования (см. приложение 1)

Дисциплина: «Компьютерная графика»

Лабораторная работа №3

Вариант задания №5

Координаты вершин исходного четырёхгранника

x1 = -200; y1 = -200;z1= 0;x2 = -100;y2 = -200; z2= 100;

x3 = -200;y3 = -100; z3= 100;x4 = -200; y4 = -200; z4 = 100

Пункт/подпункт программы

работ

Параметры преобразования

2a

a = 0.5; j = 0.8*

2d

g = 1.2*

2f

= 30

3

m = 300; n = 100*

4

q = 0.002*

5

s = 1.5*

6

= 15;l = 200;n = 100*

8

χ = 160

9

D = -200

* Значения остальных коэффициентов матрицы общего преобразования следует принимать такими же, как в матрице тождественного преобразования (см. приложение 1)

______________________________________

Дисциплина: «Компьютерная графика»

Лабораторная работа №3

Вариант задания №6

Координаты вершин исходного четырёхгранника

x1 = -100; y1 = -100; z1= -300;x2 = +200;y2 = -100; z2= -200;

x3 = -100; y3 = -200; z3= -200;x4 = -100; y4 = -100; z4 = -200

Пункт/подпункт программы

работ

Параметры преобразования

2a

a = 0.4; j = 1.3*

2d

g = 0.5*

2f

= 60

3

m = 300; n = 400*

4

r = 0.008*

5

s = 1.8*

6

= 250;l = -400;n = -300*

8

χ = 210

9

D = 130

* Значения остальных коэффициентов матрицы общего преобразования следует принимать такими же, как в матрице тождественного преобразования (см. приложение 1)