Но все таки хотелось бы разобраться до конца
Трогательно и похвально
.
Далее я, по-видимому, предлагаю то же, что и
GAA, только другими словами, более близкими к моему мозгоустройству.
Первый подход.
Имеется вектор --- ось вращения
. Поскольку мы не умеем поворачивать вокруг неё, но умеем, например, вокруг оси
, то поищем преобразование
, такое, чтобы оно нашу ось выставило вертикально. Раз уж вектор
был получен из
двумя поворотами, эту подзадачу, видимо, решают два обратных поворота, сначала на
, потом на
:
. Убедитесь, что да, векторочек ОА встал вертикально:
. Теперь совершаете известный поворот вокруг оси
на
(описываемый некой матрицей
). Теперь совершаете преобразование, обратное
. Итог: искомая матрица ---
. В частности, если было
, то итог будет
.
Самопровека: действие полученной матрицы на ось
должно оставлять её на месте при любом
.
Второй подход.
Но по-хорошему задачу надо решать в общей постановке, т.е. заняться чисто выводом той самой универсальной формулы. И желательно в приличных обозначениях. Забыть про Ваш конкретный смысл углов
: это некий частный случай, который потом можно подставлять в универсальную формулу.
Имеется вектор --- ось вращения
(
; или возьмите сферические координаты,
как предлагал GAA) . Поскольку мы не умеем поворачивать вокруг неё, но умеем, например, вокруг оси
, то поищем преобразование
, такое, чтобы оно нашу ось выставило вертикально:
. Вам было проще искать такой поворот, когда углы
трактовались в Вашем смысле (наша полемика про "составляют" --- "повёрнуты"). Что же, используйте это, посмотрите например те же проекции, найдите переход от одной терминологии к другой. Или поймите, что это предварительное преобразование есть поворот на некий угол
вокруг оси
(векторное произведение; не забыть потом про нормировку). Попробуйте его наглядно представить и реализовать. Далее --- тот же поворот на угол
или
(потому что обозначение
нам теперь не нравится) вокруг
и обратное преобразование,
.
Самопровека: действие полученной матрицы на ось
должно оставлять её на месте при любом
.
Добавлено спустя 20 минут 48 секунд:
И поймите-осознайте, что если Вы вектор
повернули матрицей
, то получили вектор
.
Если Вы затем вектор
повернули матрицей
, то получили вектор
.
Если Вы затем вектор
повернули матрицей
, то получили вектор
.
Эти три операции можно заменить одним действом, матрицей
.
Тем самым я обосновал Вам порядок матриц в произведении --- 3, 2, 1 для последовательности действий 1, 2, 3.