紙飛行機をモデルにしてオイラー角で回転する様子をpython matplotlibで見てみます
オイラー角を使って紙飛行機を回転
PaperAirplaneEuler.py
環境
Windows10
python3.9
numpy
Matplotlib
使い方
紙飛行機を回転させる関数
PaperAirplaneEuler(angle, order)
angleに目標とする姿勢のオイラー角[x,y,z]をセットて渡します
orderは回転順でXYZ,XZY,YXZ,YZX,ZXY,ZYXの種類の中から選択します
例
angle = [20.0, 30.0, 40.0]
order = EulerOrder.XYZ
PaperAirplaneEuler(angle, order)
オイラー角(angle)にX=20度、Y=30度、Z=40度回転するようにセットします
回転順(order)にXYZ順を指定します 回転順はEulerOrder列挙型で指定します
PaperAirplaneQuaternionを実行すると3次元のグラフが表示されて[F1]キーで回転順に回転が始まります
説明
紙飛行機は各頂点の点を結んでポリゴンで表示しています
回転順に回転軸を中心に回転する様子を確認できます
オイラー角の計算
計算はこちらを参考にしました
回転行列、クォータニオン(四元数)、オイラー角の相互変換