編集:あなたが探している操作は、ZアップまたはYアップを維持しながら座標系を変更することです。この場合、行列の2番目の列(または行)のすべての要素を逆に設定してみてください。
この質問は数学的なスタックエクスチェンジの方がよいでしょう。まず、a really helpful read on rotation matrices。
最初の問題はローテーションオーダーの問題です。私はXYZ回転順序を仮定しています。各軸であるため、以下のように我々は、回転行列を知っている:同じ回転順に由来するマトリックスを考える
は、アルファはXの角度であり、次のように得られた行列は次のようになり、ベータがY
あなたはこの行列からの各軸の角度の個々の成分を導出することができる:角度、およびγはZ角です。たとえば、逆角度を使ってYの角度を-sin(beta)
から派生させることができます。ベータを指定すると、cos(beta)sin(alpha)
からアルファを派生させることができます。 cos(beta)sin(gamma)
からガンマを導出することもできます。マトリックスの同じ番号は複数の値を表すことができます(例:sin(0)=0
およびsin(180)=0
)。
アルファ、ベータ、およびガンマを知ったので、ベータ版を元に戻して回転行列を作り直すことができます。
クォータニオンを使ってこれを行うより良い方法があるかもしれませんが、Math StackExchangeにこれらの種類の言語に依存しない質問をする必要があります。