Студопедия — Поворот точки в пространстве вокруг произвольной оси
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Поворот точки в пространстве вокруг произвольной оси






В компьютерной графике принято вычислять новое значение вектора путем умножения старого на матрицу поворота или сдвига. Наша цель — найти коэффициенты матрицы поворота, которая, воздействуя на вектор v, повернет его на угол φ вокруг оси s. Рассмотрим, как изменится вектор при его повороте вокруг некоторой оси s на угол φ.

n
v
s
φ
r
rf
b
vf
q
o
nf
k

Начальное положение вектора обозначим буквой v, а конечное — буквой vf (см. рис.). Рассмотрим конец вектора v, как точку трехмерного векторного пространства с началом в точке o. Тогда начальному положению конца вектора v будет соответствовать радиус-вектор r, а конечному rf. Произвольная ось вращения определяется точкой q и направлением s с ортом k. Пусть q есть радиус-вектор точки q. Выполним поворот точки r вокруг оси s на угол φ, отсчитываемый против часовой стрелки, если взгляд направить навстречу вектору s.

Плоскость вращения, а, следовательно, и векторы n, nf и b, лежащие в этой плоскости, перпендикулярны оси вращения s. Из рисунка видно, что вектор v можно представить, как разность двух векторов r – q. Этот же вектор можно представить, как сумму других векторов s + n. Манипулируя этими равенствами, попытаемся выразить конечное положение точки rf через исходные величины: r, q и φ. Имеем следующие векторные равенства:

n = v – s,

s = (v · k) k, // Скалярное произведение (v · k) определяет длину оси вращения s, а орт k — его направление

n = v – (v · k) k,

rf = q + s + nf

При вращении вектор s не изменится, а вектор n повернется на угол φ в сторону вектора b и займет положение nf. Вектор b лежит в плоскости вращения и ортогонален вектору n. Он равен векторному произведению b = k × n. Так как орт k имеет единичную длину, то длина |b| вектора b равна длине вектора |n| (радиусу вращения). Заметим, что векторное произведение других векторов k × v — это вектор, который имеет то же самое направление и длину. Длина равна |k||v|sin(v,k) в силу определения векторного произведения. Так как |v|sin(v,k) = |n|, то справедливы равенства.

b = k × n = k × (v – s) = k × (v – (v · k) k) = k × v

После поворота на угол φ вектор n станет равным вектору nf = n·cosφ +b·sinφ. В этом можно убедиться, рассматривая следущий рисунок. Учтите, что n, nf и b имеют одинаковую длину, но разные направления.

>
n
φ
b
n•cosφ
b•sinφ
nf
|nf|sinφ
|nf|cosφ

После поворота рассматриваемая точка r будет определяться радиус-вектором rf.

rf = q + s + nf = q + s + n · cosφ + b · sinφ =

= q + (v · k) k + (v – (v · k) k) cosφ + (k × n) sinφ =

= q + (v · k) k + cosφ (v – (v · k) k) + sinφ (k × (v – (v · k) k)),

Преобразуем выражение (v · k) k. Скалярное произведение (v · k) = является множителем, который стоит перед вектором k. В покомпонентном виде это произведение имеет вид.

(v · k) k = = kk · v,

Напомним, что два стоящих рядом вектора kk обозначают операцию диадного произведения векторов, которое является матрицей. Например, диадное произведения произвольных векторов x и y равно:

xy =

В нашем случае диадное произведение kk есть матрица размерностью 3×3, составленная из компонентов орта оси вращения. Мы приблизились к цели — получить формулу для матрицы поворота. Теперь вектор (v · k) k записан в виде произведения матрицы kk на вектор v. Подставим это выражение в формулу для вычисления rf.

rf = q + (v · k) k + cosφ (v – (v · k) k) + sinφ k × v =

= q + kk · v + cosφ (v – kk · v) + sinφ k × v =

= q + kk · v + cosφ (I – kk) · v + sinφ k × v = q + A · v

Матрица A, как было сказано выше, поворачивает вектор v на угол φ вокруг оси s. Ее коэффициенты мы сейчас и пытаемся определить. Распишем в покомпонентном виде векторное произведение k × v.

k × v =

Заметим, что тот же результат может быть получен путем умножения матрицы (обозначим ее k×) на вектор v.

k × v =

Подставим матрицу с необычным обозначением k× в развернутое выражение для радиуса-вектора rf. После этого можно выписать выражение для матрицы поворота A.

A = (1 – cosφ) kk + cosφ I + sinφ k×

Здесь использованы следующие обозначения для матриц.

kk = , I = , k× =

В развернутом виде матрица A будет иметь такой вид.

A =

Матрица А является ортогональной. Это означает, что при ее транспонировании изменится только знак перед последним ее слагаемым (sinφ k×), что соответствует повороту точки на угол –φ. Окончательное выражение для радиуса-вектора rf (конца вектора v) получим, подставив значение v = r – q.

rf = q + A · (r – q)

Введем обозначение: cφ = 1 – cosφ и учтем, что на практике достаточно часто ось вращения проходит через начало координат. В этом случае выражение для rf будет иметь более простой вид.

rf = A · v =







Дата добавления: 2015-10-19; просмотров: 1766. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

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

Искусство подбора персонала. Как оценить человека за час Искусство подбора персонала. Как оценить человека за час...

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

Тема: Изучение приспособленности организмов к среде обитания Цель:выяснить механизм образования приспособлений к среде обитания и их относительный характер, сделать вывод о том, что приспособленность – результат действия естественного отбора...

Тема: Изучение фенотипов местных сортов растений Цель: расширить знания о задачах современной селекции. Оборудование:пакетики семян различных сортов томатов...

Тема: Составление цепи питания Цель: расширить знания о биотических факторах среды. Оборудование:гербарные растения...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия