Учебное пособие / Метематические основы машинной графики / exilim / 1.10.asp-ThemeID=1
.htmДвумерные преобразования - 1.10. Поворот вокруг произвольной точки A.l:link { text-decoration: none; font-size: 8pt; color: 666666; } A.l:hover { text-decoration: none; font-size: 8pt; color: 666666; } A.l:active { text-decoration: none; font-size: 8pt; color: 666666; } A.l:visited { text-decoration: none; font-size: 8pt; color: 666666; } A.std:link { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.std:hover { text-decoration: none; font-size: 11pt; font-weight: bold; color: 7F0000; } A.std:active { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.std:visited { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.li:link { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:hover { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:active { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:visited { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.lil:link { text-decoration: none; font-size: 11pt; color: 666666; } A.lil:hover { text-decoration: none; font-size: 11pt; color: 7F0000; } A.lil:active { text-decoration: none; font-size: 11pt; color: 666666; } A.lil:visited { text-decoration: none; font-size: 11pt; color: 666666; } Алгоритмические
основы Математические
основы Flash 5 CorelDraw 10 3D Studio Max3 [программа] [тесты] [лабораторные] [вопросы] [литература]
1. Двумерные преобразования
1.10. Поворот вокруг произвольной точки Ранее мы рассматривали вращение, совершаемое вокруг начала координат. Однородные координаты предусматривают механизм выполнения поворотов вокруг точек, отличных от начала координат. В общем случае поворот вокруг произвольной точки может быть реализован посредством ее перемещения в начало координат, выполнения требуемого поворота и последующего перемещения результата обратно в исходный центр вращения. Таким образом, поворот вектора [x y 1] вокруг точки m, n на произвольный угол можно осуществить следующим образом: [x* y* 1] = [x y 1] 1 0 0
0 1 0
-m -n 1 cosθ sinθ 0
-sinθ cosθ 0
0 0 1 1 0 0
0 1 0
m n 1 Выполняя действия над двумя внутренними матрицами, можно записать [x* y* 1] = [x y 1] cosθ sinθ 0
-sinθ cosθ 0
-m(cosθ - 1) + n sinθ -n(cosθ - 1) - m sinθ 1 назад | содержание | вперед © ОСУ АВТФ