Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основи геометричного моделювання.doc
Скачиваний:
9
Добавлен:
09.12.2018
Размер:
257.54 Кб
Скачать

Приклад афінних перетвореннь

Завдання:Як показано на малюнку зробити повернення фігури ABCDEFGH проти годинникової стрілки на кут П/2,та масштабування в 1/2 рази відносно точки Т.

1.Створимо опис даної фігури:

A(2;3),B(6;3),C(6;8),D(10;8),E(10;12),F(6;12),G(6;16), H(2;16).

За цим описом зробимо матричний опис фігури в однорідній системі координат {x,y,1};

Далі здійснимо перенесення центру обертання в початок координат:

Потім здійснимо обертання на П/2 відносно початку координат.Тобто:

Перенесення центру обертання в вихідне положення здійснюється шляхом множення одержаної матриці на приведену нижче матрицю:

-де (m,n)-вихідне положення центру обертання;

Виконуючи множення отримуємо необхідну матрицю:

2.Комплексне перетворення

Сукупність перетворень обчислюється за формулою:

де А-матриця початкових координат; (m,n) - вихідне положення центру обертання.

Підставивши значення А, m та n, ми отримаємо матрицю

An яка вже була порахована вище і дорівнює:

Потім отриманий об'єкт масштабуємо в 1/2 раза:

В результаті отримали опис об'єкту в однорідному базисі{x,y,1}.

Побудуємо цей об'єкт:

Основи трьохмірного перетворення

Введемо однорідні координати для трьохмірних об'єктів. Тоді { x,y,Z} задаються у вигляді { x,y,Z, I} або {X,Y,Z,I} або { X,Y,Z, H}. Перетворення описуються виразом

{ X,Y,Z, H} = { x,y,z,1} T і { x*,y*,z*, 1} ={},

де T - матриця перетворень.

Узагальнена матриця перетворень 4 x 4 для трьохмірних однорідних координат має вигляд : Т=

Ця матриця може бути надана у вигляді чотирьох окремих частин:

Матриця 3x3 здійснює безліч перетворень - змінення масштабу, зсув, обертання. Матриця 1x3 робить перенос, а матриця-стовпець 3x1 - перетворення в перспективі. Останній скалярний елемент 1x1 виконує загальне змінення масштабу. Повне перетворення виконується впливом на вектор положення матриці 4x4. В цьому випадку нормалізуючий перетворення вектор називають білінійним перетворенням. Дана матриця забезпечує комплекс операцій: зсув, змінення масштабу, обернення, дзеркальне відображення, перенесення і повне змінення масштабу.

Трьохмірна зміна масштабу. Діагональні елементи основної матриці перетворення 4x4 здійснюють часткове і повне перетворення. Так, часткове перетворення масштабу виконується матрицею

{X,Y,Z,1}={ax, ly, jz,1} = {x*,y*,Z*,1}.

Загальне змінення масштабу робиться четвертим діагональним елементом:

Трьохмірний зсув

Недіагональні елементи верхньої лівої матриці 3x3 здійснюють зсув за трьома координатами (мал. 5):

Трьохмірне обернення

З метою спрощення математичного описування виконаємо операції трьохмірного обернення, розглянемо випадок обернення відносно однієї з осей. При цьому використовується математичний апарат, розглянутий для випадку обертання двомірних зображень. Матриця перетворення має нулі у стовпці матриці відповідних осей обернення з одиницею на головній діагоналі.

Наприклад, матриця перетворення при оберненні відносно осі y можна записати у вигляді

На мал.6 надано обернення кута p/2 відносно осі Y. Матриця перетворення для обернення відносно осі Z має вигляд

Для будь-якої матриці обернення детермінант дорівнює I. Обернення відносно довільної осі, дзеркальне відображення, а також основи перспективної геометрії описані у багатьох роботах по машинній геометрії.