Кватерніони і повороти простору
Кватерніон можна представити у вигляді пари скаляра та 3-вимірного вектора:
- ,
множення кватерніонів буде виражатись через скалярний та векторний добутки 3-вимірних векторів:
Виразимо векторний добуток через добуток кватерніонів:
Поворот точки навколо осі в 3-вимірному просторі
Покажемо що результатом повороту вектора на кут відносно осі (одиничний вектор) буде: , де
- — чисто векторний кватерніон,
- — чисто векторний кватерніон,
Перепишемо останній кватерніон в іншій формі:
Спершу обчислимо необхідний нам вираз (використали властивість подвійного векторного добутку):
Обчислимо добуток:
де та компоненти вектора паралельні і перпендикулярні до відповідно:
Кожен з трьох доданків є ортогональним до двох інших.
Кількість операцій
Зберігання | Множення | Додавання | |
---|---|---|---|
Матриця повороту | 9 | 27 | 18 |
Кватерніон | 4 | 16 | 12 |
Зберігання | Множення | Додавання | |
---|---|---|---|
Матриця повороту | 9 | 9 | 6 |
Кватерніон | 4 | 15 | 12 |
Матриця повороту
- Поворотові за допомогою одиничного кватерніона відповідає наступна матриця повороту
- Якщо представимо кватерніон у вигляді тоді
Доданки ідентичні доданкам із формули отриманої через кватерніони.
Для спрощення обчислень, зведемо подібні доданки та вернемось до векторної форми (формула повороту Родрігеса):
Перший та другий доданки вже не є обов'язково ортогональними.