本文主要是介绍欧拉角旋转之困惑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
MATLAB 欧拉角旋转
1) eul = [ pi/2 0 0];
rotmZYX = eul2rotm(eul)
rotmZYX =
0.0000 -1.0000 0
1.0000 0.0000 0
0 0 1.0000
2)rotz(90)
ans =
0 -1 0
1 0 0
0 0 1
Eigen欧拉角旋转
Eigen::AngleAxisd v(M_PI/4,Eigen::Vector3d(0,0,1));//沿z轴旋转了45度
rotation vector: Angle is: 45
Axis is: 0 0 1
cout << "rotation vector: Angle is: " << v.angle() * (180 / M_PI)<<endl//旋转角 24 << " Axis is: " << v.axis().transpose() << endl<<endl;//旋转轴
输出为rotation vector: Angle is: 45
Axis is: 0 0 1
R=
0.707107 -0.707107 0
0.707107 0.707107 0
0 0 1
貌似都按照如下公式进行转换的
这篇关于欧拉角旋转之困惑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!