Формула повороту Родрігеса
У теорії тривимірних обертань, формула повороту Родрігеса (названа на честь Олінда Родрігеса) — дієвий алгоритм для обертання вектора у просторі, за заданими віссю та кутом.
Якщо — вектор у і — одиничний вектор, що описує вісь обертання, навколо якої ми хочемо повернути на кут , то формула Родрігеса має вигляд:
Виведення
Для певної осі обертання z, яка представлена одиничним вектором k = (kX, kY, kZ), і вектором v = (vX, vY, vZ), який ми хочемо повернути, вектор
є складовою v паралельною до z, також відомою як проєкція вектора v на k, і вектор
є проєкцією v на площину xy ортогональну до z, відомою як відкидання вектора.
Зауважте, що ми вибрали систему відліку xyz, в якій z вісь вирівняна з віссю повороту, а x вісь з відкиданням вектора v від k. Це спрощує демонстрацію, бо це має на увазі, що v лежить у площині xz і його складова vy є нулем. Однак, xyz не збігається з XYZ в якій вектори v, k, vx і vz представлені. Наприклад, v = (vX, vY, vZ) ≠ (vx, vy, vz). Інакше кажучи, формула Родрігеса незалежна від орієнтації в просторі системи відліку XYZ у якій v і k представлені.
Далі
- .
Зауважимо, що vx і w мають одну й ту саму довжину. За визначенням векторного добутку, довжина w становить:
де φ позначає кут між z і v. з того, що k має одиничну довжину,
Це збігається з довжиною vx, обрахованою тригонометрично так:
Отже w можна розглядати як копію vx обернуту на 90° навколо z. Використовуючи тригонометрію, ми можемо повернути vx на θ навколо z, щоб отримати vx rot. Його два компоненти щодо x і y є vxcosθ і wsinθ, відповідно. Таким чином,
vx rot також можна записати як проєкцію на xy вектора, який ми повертаємо, vrot. Тому що поворот навколо z не зачіпає vz, другий компонент vrot (тобто проєкція на z) збігається з vz. Отже,
як і вимагалось.
Матричний запис
Представивши v і k у вигляді вектор-стовпців і як матрицю векторного добутку , тобто,
- ,
Формулу Родрігеса можна записати так:
Використовуючи розклад потрійного векторного добутку, це можна записати як:
бо для нормалізованого вектора.
Остаточно, матриця повороту така:
Кватерніони і формула повороту
Якщо ми хочемо повернути на кут навколо , тоді ми можемо записати це як кватерніон Це одиничний кватерніон.
Тоді , що після виконання множень переходить у формулу повороту Родрігеса.
Див. також
Посилання
- Weisstein, Eric W. Формула повороту Родрігеса(англ.) на сайті Wolfram MathWorld.