Представление точек и общая схема преобразования с использованием матриц | MetodPro.ru

Реклама на сайте

Представление точек и общая схема преобразования с использованием матриц


Так как в компьютерной графике большинство объектов определяются с помощью точек или вершин, то начнем именно с них.  Как известно, точка на плоскости представляется двумя своими координатами (x y). Эту пару можно представить в виде матрицы [x y] размером 1*2 называемой вектор-строка или матрицы  размером 2*1  называемой вектор-столбец. Данные матрицы часто называют координатными векторами. В трехмерном пространстве, точка определяется тройкой координат, и координатный вектор увеличивают свой размер на единицу. Например, вектор-строка будет иметь размер 1*3  - [x y z] .

Правила матричной алгебры определяют набор допустимых операций над координатным вектором.

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

Р*М = Р’ ,

где  М – матрица геометрического преобразования; Р – вектор-строка представляющая исходную точку; Р’- вектор-строка полученная в результате преобразования.

Другими словами мы представили применение геометрического преобразования как произведение матриц. Рассмотрим данное произведение подробнее.

Р*М =[x y] [(ax+cy) (bx+dy)] = [x’ y’]

т.е. координаты преобразованной точки формируются суммой исходных координат умноженных на соответствующие коэффициенты:

x’= ax+cy;

y’= bx+dy;

Если в матрице преобразования a=d=1 и c=b=0  то

x’= 1x + 0y = x;

y’= 0x+1dy = y;

Результат преобразования совпадает с исходными значениями. Матрица   - соответствующая такому преобразованию называется единичной (т.е. квадратная матрица любого размера, главная диагональ, которой заполнена единицами). Умножение на такую матрицу подобно умножению на единицу в традиционной алгебре. Несмотря на кажущуюся бесполезность, единичные матрицы находят широкое применение при работе с геометрическими преобразованиями.

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

Р’* М-1 = Р ,

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

       Р*М* М-1= Р

Такой же эффект мы получали при умножении на единичную матрицу. Следовательно, произведение М* М-1 дает единичную матрицу.



Методические пособия

  • Системы автоматизированного проектирования
  • Социология молодёжи
  • Общая социология
  • Криптография
  • Проектирование трансляторов
  • Компьютерная графика
  • Моделирование систем
  • Информационная безопасность
  • Теория вычислительных процессов
  • Логические основы искусственного интелекта
  • Проектирование распределённых информационных систем