Кватерніони і повороти простору

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Кватерніон можна представити у вигляді пари скаляра та 3-вимірного вектора:

,

множення кватерніонів буде виражатись через скалярний та векторний добутки 3-вимірних векторів:

Виразимо векторний добуток через добуток кватерніонів:

Поворот точки навколо осі в 3-вимірному просторі

[ред. | ред. код]

Покажемо що результатом повороту вектора на кут відносно осі (одиничний вектор) буде: , де

— чисто векторний кватерніон,
— чисто векторний кватерніон,

Перепишемо останній кватерніон в іншій формі:

Спершу обчислимо необхідний нам вираз (використали властивість подвійного векторного добутку):

Обчислимо добуток:

де та компоненти вектора паралельні і перпендикулярні до відповідно:

Кожен з трьох доданків є ортогональним до двох інших.

Кількість операцій

[ред. | ред. код]
Обчислення результату двох поворотів
Зберігання Множення Додавання
Матриця повороту 9 27 18
Кватерніон 4 16 12
Обчислення повороту точки
Зберігання Множення Додавання
Матриця повороту 9 9 6
Кватерніон 4 15 12

Матриця повороту

[ред. | ред. код]
Докладніше: Матриця повороту
  • Поворотові за допомогою одиничного кватерніона відповідає наступна матриця повороту
  • Якщо представимо кватерніон у вигляді тоді

Доданки ідентичні доданкам із формули отриманої через кватерніони.

Для спрощення обчислень, зведемо подібні доданки та вернемось до векторної форми (формула повороту Родрігеса):

Перший та другий доданки вже не є обов'язково ортогональними.