単位四元数(バーサーとも呼ばれる)は、 3次元空間における要素の空間的な向きや回転(3D回転)を表すための便利な数学的表記法を提供する。これは、 2D回転に単位複素数を使用することの一般化である。具体的には、四元数は任意の軸を中心とした軸角回転に関する情報を符号化する。回転および向きの四元数は、コンピュータグラフィックス[ 1 ]、コンピュータビジョン、ロボット工学[ 2 ]、ナビゲーション、分子動力学、飛行力学[ 3 ]、衛星の軌道力学[ 4 ]、結晶学的テクスチャ解析[ 5 ]などの分野で応用されている。
回転を表す場合、単位四元数は3D 回転群を表すため、回転四元数とも呼ばれます。方向または姿勢 (基準座標系に対する物体の回転)を表す場合、それらは方向四元数または姿勢四元数と呼ばれます。 空間回転は、固定された単位軸を中心としたラジアンオイラー軸を表す四元数は、 どこそして。
回転行列と比較すると、四元数はよりコンパクトで効率的で、数値的に安定しています。オイラー角と比較すると、構成がより簡単です。ただし、直感的で理解しやすいとは言えず、正弦と余弦の周期性のため、自然周期だけ異なる回転角は同一の四元数にエンコードされ、ラジアンで復元される角度は制限されます。。

3次元空間において、オイラーの回転定理によれば、剛体または座標系の固定点を中心とした任意の回転または一連の回転は、与えられた角度による単一の回転と等価である。固定点を通る固定軸(オイラー軸と呼ばれる)を中心とした回転。 [ 6 ]オイラー軸は通常、単位ベクトルで表される。 (図に示すように)。したがって、3次元空間における任意の回転はベクトルとして表現できる。 そして角度。
四元数は、4 つの実数を使用してこの軸角表現をエンコードする簡単な方法を提供し、 R 3の原点に対する点を表す位置ベクトル(x,y,z)に対応する回転を適用 (計算) するために使用できます。[ 7 ]
(2, 3, 4)や( a x , a y , a z )のようなユークリッドベクトルは、2 i + 3 j + 4 kまたはa x i + a y j + a z kと書き換えることができ、ここでi、j、kは 3 つのデカルト軸(従来はx、y、z ) を表す単位ベクトルであり、また、ユークリッドベクトル( a x、 a y、 a z )を純粋四元数(0, a x、 a y、 a z )のベクトル部分として解釈することにより、基本四元数単位の乗算規則に従います。
角度の回転単位ベクトルで定義される軸の周り
は、単位四元数qによる共役によって表すことができる。四元数積は指数関数のテイラー級数を用いると、オイラーの公式の拡張として次の式が得られる。
[ 8 ]に示すように、通常のベクトルに所望の回転を適用することができる。3次元空間において、純粋四元数のベクトル部分とみなされる次のように表される、p ′とqの共役を評価することによって、
ハミルトン積を使用すると、純粋四元数L( p ′ ) = (0, r x , r y , r z )のベクトル部分は、回転後の点の新しい位置ベクトルになります。プログラムによる実装では、ベクトル部分がpである純粋四元数を構築し、次に四元数の共役を実行することで共役が実現されます。結果として得られる純粋四元数のベクトル部分は、目的のベクトルrです。明らかに、四元数空間から四元数空間への線形変換を提供する。[ 9 ]また、はユニタリ変換であり、変換は等長変換である。また、など葉ベクトルは不変。したがって、分解することでベクトル部分に平行なベクトルとしての そして、ベクトル部分に垂直なベクトル そして、通常の成分に対して回転させると、主張が示されます。の構成要素であるベクトル部分に直交するそして. ベクトル部分はは
p ′とqの共役は、より少ない算術演算で次のように表すことができます。
四元数とは無関係な幾何学的事実として、物理的な回転から回転変換行列への2対1のマッピングが存在する。0 ⩽⩽物理的な回転によるそして物理的な回転によるどちらも、中間的な向きを経由する互いに素な経路によって、同じ最終向きに到達します。これらのベクトルと角度を上記のqの式に代入すると、 q が最初の回転を表す場合、−qが2 番目の回転を表すことがわかります。これは、qと−qによる共役が同じ回転変換行列を生成する必要があるという幾何学的証明です。この事実は、共役がqに関して二次式であるため、 qの符号が相殺され、結果に影響を与えないことに注目することで代数的に確認できます。(SU(2) から SO(3) への 2:1 マッピングを参照)両方の回転が半回転の場合qと−qの両方の実数座標はゼロになります。それ以外の場合は、正の実数部を持ち、これは 1 未満の角度の回転を表します。、もう一方の実部は負の値となり、これは より大きい角度の回転を表します。。
数学的には、この操作は、すべての「純粋な」四元数p(実部がゼロである四元数)の集合(四元数間の3次元空間を構成する)を、軸uを中心とした角度θの回転によって、自身の中に取り込む。(この操作によって、各実四元数は自身の中に取り込まれる。しかし、3次元空間における回転の目的においては、実四元数は無視する。)
視線が時計回りの方向を向いている場合、回転は時計回りになります。。
この場合、qは単位四元数であり、
したがって、2 つの四元数の積による共役は、これらの四元数による共役の合成である。p と q が単位四元数である場合、pqによる回転 (共役)は次のようになる。
これは、 qで回転(共役)した後、pで回転(共役)することと同じです。結果のスカラー成分は必然的にゼロになります。
回転の四元数の逆数は反対の回転です。四元数回転の二乗は、同じ軸を中心とした2倍の角度の回転です。より一般的には、q nは、 qと同じ軸を中心としたn倍の角度の回転です。これは任意の実数nに拡張でき、空間方向間の滑らかな補間を可能にします。Slerpを参照してください。
2つの回転四元数は、次の関係式によって1つの等価な四元数に結合することができる。
ここで、 q ′は回転q1に続いて回転q2を行うことに対応する。したがって、任意の数の回転を組み合わせて、単一の回転として適用することができる。(四元数の乗算は可換ではないことに注意。)

pをqで共役させるとは、演算p ↦ qpq −1を指します。
軸を中心とした回転fについて考えてみましょう。回転角度は120° 、つまり2π / 3ラジアンです。

長さ√3の場合、半角はπ / 3 ( 60°) で、 cos 1/2 ( cos 60 ° = 0.5 )とsin √3 / 2 ( sin 60° ≈ 0.866 ) となります。したがって、これは単位四元数による共役です。
fが回転関数である場合、
単位四元数の逆元は、その虚数成分の符号を変えるだけで得られることが証明できる。したがって、
そして
これは、四元数演算の通常の規則を使用して、次のように簡略化できます。
予想通り、この回転は立方体を一点に固定したまま、その固定点を通る長い対角線を中心に120°回転させることに相当します(3つの軸が周期的に入れ替わっていることに注目してください)。
四元数回転(と)は代数的に操作して行列回転に変換できる、 どこ回転行列は次のように与えられます: [ 10 ]
ここqが単位四元数である場合、。
これは、ベクトル解析と線形代数を用いて表現すれば得られる。そしてスカラー部分とベクトル部分として扱い、式中の乗算演算の公式を使用します。.もし私たちが書くならばとして、としてそしてとして、 どこすると、方程式は次のようになります。スカラー部分とベクトル部分として表現される2つの四元数の乗算式を使用することにより、
この方程式は次のように書き換えることができます。
どこは外積を表します。は単位行列であり、は、ベクトルと右から乗算される変換行列です。外積を与える。
以来特定することができますとして展開すると、上記の行列形式で表された式が得られるはずです。
その表現任意のベクトル四元数を回転させるベクトルで与えられる軸を中心に角度によって、 どこそして四元数に依存する。
そして以下の式から求めることができます。
どこは2引数アークタンジェントです。機能するが、数値的に不安定(不正確)である。有限精度を持つ数値の場合。
四元数がスカラーに近づく場合は、縮退のため恒等回転の軸が明確に定義されないため、注意が必要です。
2 つの回転R BとR Aの合成の四元数定式化の利点は、合成回転R C = R B R Aの回転軸と角度を直接得ることができることです。
空間回転Rに関連付けられた四元数は、回転軸Sと回転角から構成されるものとする。この軸の周り。関連する四元数は次のように与えられる。 すると、回転R BとR Aの合成は、回転R C = R B R Aとなり、回転軸と角度は四元数の積によって定義されます。 それは
この製品を展開して入手する
この等式の両辺を恒等式(球面上の余弦定理)で割ります。 計算
これは、2 つの回転の軸によって定義される複合回転の軸に関するロドリゲスの回転公式です。彼は 1840 年にこの公式を導き出しました (408 ページを参照)。 [ 11 ]
3 つの回転軸A、B、Cは球面三角形を形成し、この三角形の辺によって形成される平面間の二面角は回転角によって定義されます。ハミルトン[ 12 ]はこれらの方程式の成分形式を示し、四元数積が 2 つの与えられた頂点とそれらに関連付けられた弧長から球面三角形の 3 番目の頂点を計算することを示しました。これはまた、楕円幾何学における点の代数を定義します。
正規化された回転軸は、展開された積からは、回転軸であるベクトルに定数を掛けたものが残ります。軸ベクトルを正規化する際に注意が必要です。はまたはベクトルが近くにある; これは恒等写像、つまりどの軸を中心とした回転も0であることを意味します。
または、角度の加算や三角関数の置換などを用いて...
最後に回転軸を正規化する:または。
回転が数値最適化によって推定される場合、回転四元数p' = q p q −1は回転四元数qに関して微分する必要があります。回転角の推定は、3D オブジェクト登録またはカメラキャリブレーションにおいて不可欠な手順です。単位qと純虚数p 、つまり 3D 空間での回転の場合、回転四元数の導関数は行列計算表記を使用して次のように表すことができます。
複素数は、通常の代数規則を満たし、さらに規則i 2 = −1 を満たす抽象記号iを導入することによって定義できます。これは、複素数演算のすべての規則を再現するのに十分です。例えば、次のようになります。
同様に、四元数は、i² = j² = k² = i j k = −1という規則と、乗法の交換法則を除く通常の代数規則を満たす抽象記号i、j、kを導入することによって定義できます(このような非交換乗法のよく知られた例は行列乗法です)。これから、四元数基底要素の乗法規則など、四元数演算のすべての規則が導き出されます。これらの規則を用いると、次のことが示せます。
想像上の部分四元数のベクトルはベクトルのように振る舞う3次元ベクトル空間では、実部a はRのスカラーのように振る舞います。幾何学で四元数を使用する場合、スカラーとベクトルの和として定義する方が便利です。
数値とベクトルは性質が大きく異なるため、数値をベクトルに加えることや、2つのベクトルを掛け合わせることは通常定義されない演算であるため、奇妙に感じる人もいるかもしれません。しかし、それが四元数の実部と虚部を表す単なる表記法であることを思い出せば、より妥当なものとなります。言い換えれば、正しい考え方は、ベクトル/虚部がゼロの四元数と、スカラー/実部がゼロの四元数を足し合わせるということです。
四元数の乗算は、ベクトル外積と内積の現代的な言語で表現できます(これらはそもそも四元数に触発されたものです[ 14 ] )。ベクトル/虚数部分を乗算する場合、規則i 2 = j 2 = k 2 = ijk = −1の代わりに、四元数の乗算規則があります。
どこ:
四元数の乗算は非可換である(反可換である外積のため)が、スカラー-スカラー乗算とスカラー-ベクトル乗算は可換である。これらの規則から、次のことが直ちに導かれる( 「四元数」§ 「四元数と三次元幾何学」を参照)。
非ゼロ四元数の(左および右)乗法逆数または逆数は、共役対ノルム比によって与えられます(詳細は参照)。
これは直接計算によって検証できる(複素数の乗法逆数との類似性に注目)。
させてを単位ベクトル(回転軸)とし、私たちの目標は、
ベクトルを生成する角度だけ回転軸の周り拡張して(そして、)、 我々は持っています
もし私たちが許せばそしての構成要素に等しい垂直かつ平行それぞれ、そしてそして結果として
三角関数のピタゴラスの定理と倍角の定理を用いると、次のようになる。
これは回転の公式ですu →軸の周り。
このセクションで使用されている特性に関する非常に正式な説明は、アルトマンによって与えられています。[ 15 ]
単位四元数は、3次元空間におけるユークリッド回転群を非常に分かりやすく表現します。回転と四元数の対応関係は、まず回転空間そのものを視覚化することで理解できます。

回転の空間を視覚化するために、より単純なケースを考えてみるとよい。3 次元における任意の回転は、ある軸を中心としたある角度の回転で表すことができる。ここでは、軸ベクトルを用いて角度の左右対称性を定義する。回転軸がxy平面上にある特殊なケースを考えてみよう。この場合、回転軸は、ベクトルが通過する円上の点で指定でき、円の半径を回転角として選択することができる。
同様に、回転軸がxy平面内にある回転は、3次元空間における固定半径の球面上の点として記述できます。3 次元空間の球面の北極から始め、北極の点を恒等回転 (0 度の回転) と指定します。恒等回転の場合と同様に、回転軸は定義されず、回転角 (0 度) は関係ありません。非常に小さな回転角を持つ回転は、xy平面に平行で北極のすぐ近くにある球面のスライスによって指定できます。このスライスによって定義される円は非常に小さくなり、回転角が小さいことに対応します。回転角が大きくなるにつれて、スライスは負のz方向に移動し、球面の赤道に達するまで円は大きくなります。これは回転角 180 度に対応します。南に向かって進むと、円の半径は小さくなります (回転角の絶対値が負の数として考えられていることに対応します)。最後に、南極点に到達すると、円は再び縮小して恒等回転状態になり、これは南極点として指定されます。
この視覚化によって、このような回転とその表現のいくつかの特徴がわかることに注目してください。回転の空間は連続であり、各回転にはほぼ同じ回転の近傍があり、この近傍は縮小するにつれて平坦になります。また、各回転は実際には球面上の中心を通る線の両端にある2つの対蹠点によって表されます。これは、各回転が何らかの軸を中心とした回転、または同等に反対方向を指す軸を中心とした負の回転(いわゆる二重被覆)として表せるという事実を反映しています。特定の回転角を表す円の「緯度」は、その回転によって表される角度の半分になります。これは、点が北極から南極に移動すると、緯度は0度から180度まで変化するのに対し、回転角は0度から360度まで変化するためです(この場合、点の「経度」は特定の回転軸を表します)。ただし、この回転の集合は合成に関して閉じていないことに注意してください。xy平面上の軸を持つ2つの連続した回転は、必ずしも軸がxy平面上にある回転を与えるとは限らず、したがって球面上の点として表現することはできません。これは、3次元空間における一般的な回転には当てはまりません。3次元空間では、回転は合成に関して閉じた集合を形成します。

この視覚化は、3次元空間における一般的な回転に拡張できます。恒等回転は点であり、ある軸を中心とした小さな回転角は、半径の小さい球面上の点として表すことができます。回転角が大きくなるにつれて球面も大きくなり、回転角が180度に達すると球面は縮小し始め、角度が360度(または負の方向から0度)に近づくにつれて点になります。このように拡大と縮小を繰り返す球面の集合は、4次元空間における超球面(3次元球面)を表します。上記のより単純な例と同様に、超球面上の点として表される各回転は、その超球面上の対蹠点に対応します。超球面上の「緯度」は対応する回転角の半分となり、任意の点の近傍は、近傍が縮小するにつれて「平坦化」(つまり、3次元ユークリッド空間の点として表される)します。この挙動は、単位四元数の集合によって再現されます。一般的な四元数は4次元空間内の点を表しますが、その大きさを1に制限すると、超球面の表面に相当する3次元空間が得られます。単位四元数の大きさは1となり、これは半径が1の超球面に対応します。単位四元数のベクトル部分は、回転軸に対応する2次元球面の半径を表し、その大きさは回転角の半分の正弦です。各回転は、符号が反対の2つの単位四元数で表され、3次元の回転空間と同様に、2つの単位四元数の積は単位四元数になります。また、単位四元数の空間は、与えられた単位四元数の任意の微小近傍において「平坦」です。
球面の表面は、緯度と経度といった2つの座標でパラメータ化できます。しかし、緯度と経度は、北極と南極では性質が異なり(毛玉定理で説明されるように退化します)、極は球面上の他の点と本質的に違いはありません。極(緯度+90°と-90°)では、経度は意味をなさなくなります。
2パラメータ座標系ではこのような縮退を回避できないことが示されています。このような問題は、球を3次元空間に埋め込み、3つのデカルト座標( w , x , y )でパラメータ化することで回避できます。北極を( w , x , y ) = (1, 0, 0)、南極を( w , x , y ) = (−1, 0, 0)、赤道をw = 0、x² + y² = 1とします。球上の点はw² + x² + y² = 1という制約を満たすため、3つの座標があるにもかかわらず、自由度は2つしかありません。球上の点( w , x , y )は、ベクトル( x , y , 0 )によって方向付けられる水平軸を中心とした通常の空間での回転を角度で表します。。
同様に、3D回転の超球面空間は3つの角度(オイラー角)でパラメータ化できますが、そのようなパラメータ化は超球面上のいくつかの点で縮退し、ジンバルロックの問題を引き起こします。これを回避するには、 w² + x² + y² + z² = 1を満たす4つのユークリッド座標w、 x、 y、 zを使用します。点( w、 x、 y、 z )は、ベクトル( x、 y、 z )によって方向付けられる軸を中心とした角度だけの回転を表します。

四元数の乗算は非可換である。この事実は、定義によりq q −1 = 1であるにもかかわらず、 p ↦ q p q −1という式がそもそも成り立つ理由を説明する。単位四元数の乗算は三次元回転の合成に対応するため、三次元回転は一般に可換ではないことを示すことで、この性質を直感的に理解することができる。
右の図は、サイコロを使ってこれを説明しています。右手を使って、90 度の回転を2回行います。どちらのサイコロも、最初は左上の図のように配置されています(上面に1つの点があります)。パスAは、-y軸を中心とした回転(右手の法則を使用)から始まり、続いて+ z軸を中心とした回転が行われ、左下の図のような配置になります(上面に5つの点があります)。パスBは回転の順序を逆にして、上面に3つの点ができます。
あるいは、2冊の本を並べて置きます。一方の本をz 軸を中心に時計回りに90度回転させ、次にx軸を中心に180度回転させます。もう一方の本を、まずx軸を中心に180度回転させ、次にz軸を中心に時計回りに90度回転させます。2冊の本は平行になりません。これは、一般に、2つの異なる空間軸を中心とした2つの異なる回転の合成は可換ではないことを示しています。
軸角表現を定義するために使用されるベクトル外積は、空間に方向(「左右対称性」)を与えます。3次元ベクトル空間では、方程式a × b = cの 3 つのベクトルは常に右手系(または外積の定義方法によっては左手系)を形成し、ベクトル空間の方向を固定します。あるいは、方向への依存性は、次のような参照によって表現されます。これは、軸ベクトルに関する回転を指定します。四元数形式では、空間の向きの選択は乗算の順序に対応します。つまり、 ij = kですが、ji = − kです。向きを反転すると、上記の式はp ↦ q −1 p qとなり、つまり、単位qが共役四元数に置き換えられます。これは軸ベクトルと同じ挙動です。
航空宇宙分野、そして程度は低いもののロボット工学分野で代替四元数規約が存在し、継続的に使用されていることが、大きな継続的なコストを招いていると報告されている[ 16 ]。この代替規約は、Shuster MDによって[ 17 ]で提案されており、四元数基底要素の乗算の定義を逆転させることで従来とは異なるものとなっている。Shusterの規約では、一方、ハミルトンの定義はこの表記法は、 NASAのジェット推進研究所の一部で使用されていることから、「JPL表記法」とも呼ばれています。
シュスターの慣例によれば、2つの四元数を乗算する式は次のように変更される。
ベクトルを四元数で回転させる式は次のように変更されます。
シュスターの慣例による変更点を確認するには、外積の前の符号がプラスからマイナスに反転している点に注目してください。
最後に、四元数を回転行列に変換する式は次のように変更されます。
これは、従来の慣例に従って変換された回転行列の転置行列と全く同じである。
以下の表は、アプリケーションをクォータニオン規約のいずれかに準拠しているかどうかで分類したものです。[ 16 ]
どちらの規約を使用しても、作成されたアプリケーションの機能や正確性には影響しませんが、[ 16 ]の著者らは、シュスター規約はハミルトンによるはるかに古い四元数乗算規約から逸脱しており、数学や理論物理学の分野では決して採用されない可能性があるため、放棄すべきだと主張しました。
回転を四元数(4つの数値)で表現する方が、直交行列(9つの数値)で表現するよりも簡潔です。さらに、与えられた軸と角度から対応する四元数を容易に構築でき、逆に、与えられた四元数から軸と角度を容易に読み取ることができます。これらは、行列やオイラー角でははるかに困難です。
ビデオゲームやその他のアプリケーションでは、「滑らかな回転」が求められることがよくあります。これは、シーンが一度に回転するのではなく、ゆっくりと回転することを意味します。これは、四元数における球面線形補間などの曲線を選択することで実現できます。この曲線の一方の端点は恒等変換1(またはその他の初期回転)であり、もう一方の端点は目的とする最終回転です。回転の他の表現方法では、この問題はより複雑になります。
コンピュータ上で複数の回転演算を行う場合、丸め誤差は必然的に蓄積されます。わずかにずれた四元数は、正規化後も回転を表しますが、わずかにずれた行列は直交性を失ってしまう可能性があり、適切な直交行列に戻すのが難しくなります。
四元数は、例えばピッチ/ヨー/ロール回転システムにおいて、ピッチが90°上下に回転するとヨーとロールが同じ動きに対応し、回転の自由度が失われるという、ジンバルロックと呼ばれる現象も回避します。例えば、ジンバルベースの航空宇宙慣性航法システムでは、航空機が急降下または急上昇している場合、これは致命的な結果を招く可能性があります。
単位四元数z = a + b i + c j + d k ( | z | = 1 )による回転に対応する直交行列を列ベクトルで右から乗算すると、次のようになる。
この回転行列はベクトルwに使用されます。この回転の四元数表現は次のように表されます。
どこは四元数の共役ですによって与えられた
また、四元数の乗算は次のように定義されます(aとbが上記のzのような四元数であると仮定します)。
ここで、2つのベクトルの外積は可換ではないため、a、bの順序が重要になります。
四元数を単位正規化する必要がない、より効率的な計算方法は[ 20 ]で示されている。
ここで、以下の中間量が定義されている。
回転行列を四元数に変換する際には注意が必要です。回転行列のトレース(対角要素の合計)がゼロまたは非常に小さい場合、いくつかの単純な変換方法は不安定になる傾向があるためです。直交行列を四元数に変換する安定した方法については、「回転行列#四元数」を参照してください。
上記のセクションでは、3 × 3回転行列Qから四元数qを復元する方法について説明しました。しかし、丸め誤差などにより、純粋な回転行列ではない行列Q があり、 Qを最も正確に表す四元数qを見つけたいとします。その場合、対称な4 × 4行列を構築します。
そして、最大の固有値に対応する固有ベクトル( x、 y、 z、 w )を見つけます (その値は、 Qが純粋な回転である場合に限り 1 になります)。このようにして得られた四元数は、元の行列Q に最も近い回転に対応します。[ 21 ]
このセクションでは、3D空間での回転を実行する際に、クォータニオンを使用する場合と他の方法(軸/角度行列または回転行列)を使用する場合のパフォーマンス上の影響について説明します。
回転は単位四元数で表されるため、四元数の成分のうち独立なのは3つだけです。通常、さらなる計算には4つの要素すべてが必要となるため、すべての計算において4番目の成分を復元するための追加コストが発生します。同様に、角度軸は単位方向と角度(またはその関数)を乗算することで3成分ベクトルに格納できますが、計算に使用する際には追加の計算コストが発生します。同様に、回転行列には直交基底ベクトルが必要なので、3D空間では、最初の2つのベクトルから外積によって3番目のベクトルを一意に計算できます(ただし、不適切な回転が許容される場合は、3番目のベクトルの符号に曖昧さが生じます)。
*四元数は暗黙的に回転のような行列(12回の乗算と12回の加算/減算)に変換でき、これにより回転行列法による以下のベクトルの回転コストが均一化されます。
ベクトルvを回転させるには、次の3つの基本的な方法があります。
単位四元数のペアそして4D空間における任意の回転を表現できます。4次元ベクトルが与えられた場合四元数として表現次のように回転させることができます。
行列はそしてはそれぞれ左四元数と右四元数の乗算を表します。これらの行列は、回転の等傾角分解を形成します。四元数の乗算は結合法則を満たすので、次のようになります。
したがって、2 つの行列そして可換でなければならない。これは、4次元回転群の中に2つの可換な部分群が存在することを意味する。任意の4次元回転は6つの自由度を持ち、各行列はこれらの6つの自由度のうち3つに寄与する。
4次元回転の生成子は(以下のように)四元数のペアで表すことができるため、すべての4次元回転も表すことができます。