2D-Преобразования

править

Начнем 2D-преобразования, т.е. преобразования на плоскости. допустим у нас есть точка P с координатами x,y P=(x,y,)
у нас есть некий оператор T, который равен   и наша точка, после воздействия на неё оператором Т перейдет уже в другие координаты   они будут равны  

Рассмотрим некоторые операторы преобразования:

  •   - отразить по оси Х
  •   - Ничего не делать =)))
  •   - масштабирование по Х
  •   - Сдвиг , т.е.  

увы графиков пока не будет, я не могу загрузить картинку что-то мне не позволяет, эх, надеюсь потмо можно будет загрузить и все будет красивее))

теперь возьмём для примера уже не точку, а отрезок  

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

 

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

рассмотрим пример:     и  


 
 

Поворот

править

Теперь рассмотрим Матрицу поворота   Поворот на 90° градусов можно осуществить с помощью такой вот матрицы   что соответствует  

   - ортогональный оператор

Перейдем к однородным координатам

  •  
  •  
  •  

  и   отсюда   - для переноса

  •  
  •  
  •  

и наконец выведем оператор поворота R для произвольной точки :    


Преобразование единичного квадрата

править

Возьмем например квадрат с вершинами A,B,C,D и запишем для него матрицу, возьмем для наглядности числа   и оператор T - матрица преобразования.   Тогда :

 

Вообще не трудно догадаться, исходя из координат, что это единичный квадрат, а следовательно его площадь равна единице S=1. Если же мы подействуем на этот квадрат оператором Т, то площадь такого "Квадрата" (скорее уже просто четырехугольника) будет равна  

Рассмотрим оператор преобразования, в более широком смысле т.е.  

Что же мы тут видим вглядывается старая матрица a,b,c,d, эти элементы отвечают все так же за отображение, за масштабирование по оси, за сдвиг... , ничего не поменялось. Теперь рассмотрим дополнительные элементы: m,n - они отвечают за перенос начала координат (m за x, n за y); Элемент s - отвечает за масштабирование, но не так как в прошлом варианте, а сразу по всем координатам. ну и наконец p,q - они впринцыпе отвечают за перспективу, т.ч. в 2D преобразованиях это не очень можно вообразить и объяснить.