Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KonspektKG_Ukr (1).doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

3.3 Однорідні координати і матричне представлення двовимірних перетворень

Перетворення переносу, масштабирования, повороту в матричному виді записуються в такий спосіб:

P’=P + T, (3.9)

P’=P*S, (3.10)

P’=P*R(θ). (3.11).

Перетворення переносу, на жаль, реалізується шляхом додавання матриць, на відміну від масштабирования і повороту - які реалізуються множенням. Це не дозволяє об'єднати разом ці елементарні перетворення у вид:

P’= P*Q, • (3.12)

де Q - узагальнена матриця перетворень чи геометричний оператор, що переводить ГО в нове положення.

Цю незручність можна виключити, якщо представити крапки в однорідних координатах.

Визначення 3.2. Однорідним представленням N-мірного об'єкта є його представлення в (N+1)-мірному просторі, отриманиv додаванням ще однієї координати - скалярного множника.

Тобто, якщо задана декартова система координат і в ній крапка Р(х,у), то будь-яка трійка чисел [X,Y,W], де W - скалярний множник, пропорційна |х,у,1]-є однородні координати крапки Р.

Перехід від однорідних до декартовым координат у загальному випадку здійснюється в такий спосіб:

x = X/W; y = Y/W, при W ≠ 0. (3.13)

Отже однорідні координати крапки Р (х,у) будуть P(W*x,W*y,W) для будь-якого масштабного множника W ≠0. На практиці часто W=l, тобто справедливо Р(х,у)= Р(х,у,1) і при переході до декартових координат ніяких операцій розподілу робити не потрібно.

Однорідні представлення об'єктів розроблялися для задач проективної геометрії в зв'язку з необхідністю описувати невласні (нескінченно вилучені) крапки простору, вони дозволяють записувати афінніе перетворення в зручній матричній формі, а також уникати переповнення розрядної сітки ЕОМ за рахунок нормалізації чисел. Ці. і інші особливості обумовили широке застосування однорідних координат у машинній графіці. По визначенню немає єдиного представлення крапки в однорідних координатах: [3.2,1] = [6.4,2] =[9,6,3] =...

Крапки тепер описуються трехэлементными векторами-рядками, тому матриці перетворень, на які збільшується вектор крапки, щоб одержати інший вектор крапки, повинні мати розмір 3x3. Рівняння переносу (3.2) записуються у виді матриці перетворення в однорідних координатах у такий спосіб:

Що буде, якщо крапку Р перенести в крапку P’ на відстань ( ∆х 1 ∆y 1), a потім у Р" на відстань (∆х2,' ∆у 2)? Інтуитивно ожидаємий результат у цьому випадку являє собою сумарний перенос на відстань (∆х 1+ ∆х2, ∆y 1+ ∆у2). Щоб довести це, запишемо дані у виді

Р’ = Р*Т(∆х 1; ∆у 1), (3.21)

Р “ = Р’*• Т(∆Х 2, ∆у 2 ) . (3.22)

Тепер, підставляючи вираження (3.21) у вираження (3.22), одержимо Р" = (Р*Т(∆х 1 ∆у|)) Т(∆х 2 ∆у2) = Р*Т(∆х 1; ∆у 1 )*Т(∆х 2 , ∆у2)). (3.23) Матричний добуток Т(∆х 1 ∆у 1 ) * Т( ∆x 2 , ∆y 2 ) має наступний вид:

Дійсно, що результуючий перенос є (∆х 1 + ∆х 2, ∆y 1 + ∆у 2 ). Матричний добуток (3.24) у різних випадках називають об'єднанням, з'єднанням, конкатенацією або композицією матриць Т(∆х 1, ∆у 1 ) і Т(∆х2, ∆у 2 ).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]