Р' = Тр, где

Т =

1 О

О о о о

0 0а

1 0 а 1 0

а.

Объекты и геометрические преобразования

Матрица Т называется матрицей сдвига (translation matrix). Иногда ее записывают в виде Т(а„ се,, а.), чтобы подчеркнуть три независимых параметра преобразования.

На первый взгляд может показаться, что четвертый элемент в матрицах-столбцах излишний, но оказывается, что при использовании трехмерной версии выражения р' = Тр тот же результат не получается. Поэтому иногда применение однородных координат для выполнения преобразования сдвига рассматривается как своего рода трюк, позволяющий заменить суммирование трехмерных матриц-столбцов перемножением четырехмерных матриц.

Матрицу обратного преобразования можно сформировать либо с помощью алгоритма обращения матриц, либо приняв во внимание, что обратное преобразование - это сдвиг на расстояние ~d. В любом случае получим

10 0 -ос," 0 1 0 -av 0 0 1 -a: ООО 1

T-,(a„a>.,a:) = T(-a„-av,-a:) =

4.7.2. Масштабирование Как уже говорилось выше, преобразования поворота и масштабирования характеризуются фиксированной точкой, которая остается неподвижной при выполнении этих преобразований. Сейчас будем считать, что фиксированной точкой является начало координат, а в дальнейшем покажем, как с помощью суперпозиции базовых преобразований можно сформировать преобразование масштабирования относительно произвольной фиксированной точки.

Матрица преобразования масштабирования, имеющего фиксированную точку в начале координат, позволяет задавать масштабные коэффициенты по каждой из координатных осей независимо друг от друга. Имеем три уравнения: х'= р\х, /=р>, которые можно выразить в однородных координатах матричным уравнением Р* = Эр, где

р\

р,

р\

S = S(p\,pVp\) =

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

Для обращения матрицы масштабирования необходимо использовать обратные значения масштабных коэффициентов по осям: / . . . > 8-'(&,Р,,Рг)-8 -


⇐ Предыдущая| |Следующая ⇒