Я использую функцию MATLAB angle2dcm, которая дает мне разные результаты от ожидаемого. Покопавшись в код (angle2dcm.m), я нашел определение формирования матрицы вращения отличным от стандартного.Matlab angle2dcm другое определение
Например, вращение Rx Ry Rz (т.е. 'XYZ' заказать) определяется как:
% [ cy*cz, sz*cx+sy*sx*cz, sz*sx-sy*cx*cz]
% [ -cy*sz, cz*cx-sy*sx*sz, cz*sx+sy*cx*sz]
% [ sy, -cy*sx, cy*cx]
в то время как правило, он должен быть (обратитесь к ссылке): http://inside.mines.edu/fs_home/gmurray/ArbitraryAxisRotation/
Разве это другое определение матрицы косинуса направления и матрицы вращения? Спасибо!
быстрый комментарий: по умолчанию для функции Matlab angle2dcm по умолчанию используется значение «zyx». Чтобы инвертировать порядок, можно использовать «xyz». –
@ linzhang.robot спасибо за ваш комментарий, я сделал редактирование. Надеюсь, теперь все в порядке. –