КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
В. Матрица отражения
1 0 0 M = 0 - 1 0 ( 10 ) 0 0 1
Г. Матрица переноса 1 0 0 T = 0 1 0 ( 11 ) l m 1
Теперь, чтобы реализовать любое аффинное преобразование, необходимо разбить это преобразование на этапы, поддерживаемые матрицами R, D, M, T и , перемножив соответствующие матрицы, получить матрицу всего аффинного преобразования в целом.
Пример. Построить матрицу поворота вокруг точки A ( a, b ) на угол j( рис. 8 ). Для выполнения данного преобразования необходимы следующие шаги:
Шаг 1. Перенос на вектор - A (-a, -b) для совмещения центра поворота с началом координат. Соответствующая матрица : 1 0 0 T1 =0 1 0 - a - b 1
Шаг 2. Поворот на угол j . cos j sin j 0 R = - sin j cos j 0 0 0 1
Шаг 3. Перенос на вектор A ( a, b ) для возвращения центра поворота в прежнее положение. 1 0 0 T2 = 0 1 0 a b 1
Далее матрицы перемножаются в том порядке, как они выписаны: P = T1 * R * T2 Таким образом, искомое преобразование в матричной записи будет выглядеть следующим образом:
(x* y* 1) = (x y 1) * P ,
cos j sin j 0 где P = - sin j cos j 0 -a*cos j + b*sin j + a -a*sin j - b*cos j + b 1
|