Processing math: 100%

пятница, 30 декабря 2022 г.

Преобразование поворота

Рассмотрим, как преобразуется объект при преобраовании 3-мерного поворота: xTxˉT Случай, когда x есть скаляр, тривиален: x0Tx0ˉT=x0 Поэтому будем рассматривать вариант, когда x - 3-мерный вектор. Пусть он задан кватернионом x=ix1+jx2+kx3 и преобразование T задано как экспонента угла поворота: T=eφ=t0+t t0=cos(φ21+φ22+φ23) t=iφ1+jφ2+kφ3φ21+φ22+φ23sin(φ21+φ22+φ23) Дополнительно обозначив t=iφ1+jφ2+kφ3φ21+φ22+φ23 получим: T=cos(φ21+φ22+φ23)+tsin(φ21+φ22+φ23) Здесь t - единичный вектор вдоль угла φ.

Векторные части кватернионов в произведениях участвуют как 3-мерные векторы: ab=(a,b)+[a,b] Здесь слева кватернионное произведение, справа скалярное и векторное произведения 3-мерных векторов.

Теперь раскроем преобразование поворота: (t0+t)(x)(t0t)==t20x+t0(x,t)t0[x,t]t0(t,x)+t0[t,x]+t(x,t)++(t,[x,t])[t,[x,t]] Далее учтем, что векторное произведение имеет результат перпендикулярный к обоим аргументам, и поэтому (t,[x,t])=0 Также учтем, что (x,t)=(t,x) И раскроем двойное векторное произведение по правилу Лагранжа: [a,[b,c]]=b(a,c)c(a,b) После раскрытия и сокращения подобных получаем: t20x(t,t)x+2t0[t,x]+2t(t,x) Векторная часть x может быть представлена суммой параллельного к t вектора x|| и перпендикулярного к нему x: x=x||+x В силу линейности выражения преобразованя по вектору x оно может быть представлено в виду суммы двух выражений, для параллельной и перпендикулярной части. Учтем, что скалярное произведение перпендикулярных векторов ноль и что векторное произведение параллельных векторов ноль, и тогда получим преобразование частей: (t20(t,t))x||+2t(t,x||)(t20(t,t))x+2t0[t,x] Скалярное произведение параллельных векторов раскрываем как: 2sinφt|t||x|||=2sinφsinφ|x|||t=2sin2φx|| Тогда первое выражение превращается в: (cos2φsin2φ)x||+2sin2φx||=(cos2φ+sin2φ)x||=x|| Таким образом, сонаправленная вектору поворота t часть вектора x не изменяется.

Во втором выражении, в преобразовании перпендикулярной части, раскроем векторное произведение: 2t0[t,x]=2cosφsinφ[t,x] Справа векторное произведение по величине равно: |[t,x]|=|x| И по направлению перпендикулярно и к t и к x. Таким образом, выражение 2t0[t,x]=2cosφsinφ[t,x] трансформируется в cos(2φ)x+sin(2φ)x где x есть вектор по величине равный |x| но лежащий в плоскости, перпендикулярной и к x и к t. Но это и есть преобразование поворота x в нужной плоскости.

Таким образом, применение общего преобразования к вектору x: TxˉT где T есть экспонента от аксиального вектора, есть вращение векторной части x вокруг направления векторной части T. Здесь T задает в экспоненте половинный угол поворота на угол α: T=eα/2 α=iα5+jα6+kα7 Вращение кватернионным полуоператором, видимо, это одно из наиболее известных применений кватернионов.

Оглавление
Композиционные преобразования

Комментариев нет:

Отправить комментарий