---
# System prepended metadata

title: 剛體在三維空間中的旋轉

---

# 剛體在三維空間中的旋轉

在高中，大家肯定學過二維空間中的旋轉矩陣，那你是否有想過三維空間中的旋轉是長怎樣的呢?
事實上，三維空間中的旋轉是比二維平面還要複雜許多。
為了描述空間中的旋轉，科學家建構了許多數學模型來描述此問題。

## 歐拉角
如果有人問你火車站在哪裡，你會說「24°33'12"N 121°20'4"E」還是「8點鐘方向、500公尺處」? 答案顯然是後者吧。因此，我們會喜歡用「相對」的概念來描述一個物體的位置，或者甚至是旋轉。

因此，萊昂哈德·歐拉(Leonhard Euler)定義了「歐拉角」來描述三維空間中的旋轉。

![](https://i.imgur.com/rDbxo6H.png)

參閱上圖，xyz 座標是地面坐標系；XYZ 是剛體坐標系
zxz順規的歐拉角可以靜態地這樣定義：
- $\alpha$ （進動角）是 x 軸與交點線(N)的夾角
- $\beta$ （章動角）是 z 軸與 Z 軸的夾角
- $\gamma$ （自旋角）是交點線(N)與 X 軸的夾角
$0\leq\alpha,\gamma\leq2\pi$，$0\leq\beta\leq\pi$

由上圖我們可以看出，歐拉角是按照 x → Z → X 軸來進行旋轉。

接著，我想用幾種簡單易懂的方法來解釋何謂歐拉角。

### 以飛機觀點解釋歐拉角
直接看動畫：
![](https://i1.wp.com/pic2.zhimg.com/50/v2-5480232b0c74e8d236044529bd170834_hd.gif)

一般來說，我們將三個角分別定義為：
- $\psi$ 稱為「偏航(Yaw)」

![](https://i1.wp.com/pic3.zhimg.com/50/v2-61f08ff3a016363478b719b8e2749d31_hd.gif)

- $\theta$ 稱為「俯仰(Pitch)」

![](https://i1.wp.com/pic1.zhimg.com/50/v2-c9097bcf4ad39e39c684a2fdae7ef7d8_hd.gif)

- $\phi$ 稱為「滾筒(Roll)」

![](https://i1.wp.com/pic2.zhimg.com/50/v2-bba8ed67cb1f4a6f495a157df0a5208d_hd.gif)

由最上面的動畫，我們可以看出

### 萬向節死鎖
萬向節 (Gimbal)
![](https://i1.wp.com/pic3.zhimg.com/50/v2-2f3d8c9c2de8c7f225ab65092598685d_hd.gif)

## 四元數
為了避免萬向節死鎖的情況發生，科學家建構了一套數學模型---「四元數」來描述一個剛體的轉動現象。

### 甚麼是四元數
四元數很像是複數 (compelx)，只是他有 ***3個虛部***。

## 參考資料
[Wiki - 歐拉角](https://zh.wikipedia.org/wiki/%E6%AC%A7%E6%8B%89%E8%A7%92)
[Wiki - 四元數與空間旋轉](https://zh.wikipedia.org/wiki/%E5%9B%9B%E5%85%83%E6%95%B0%E4%B8%8E%E7%A9%BA%E9%97%B4%E6%97%8B%E8%BD%AC)
[Wiki - Rotation Matrix](https://en.wikipedia.org/wiki/Rotation_matrix)
[3B1B - Visualizing Quaternions](https://www.youtube.com/watch?v=d4EgbgTm0Bg)
[通俗的解釋歐拉角，之後為何要引入四元數？](https://www.getit01.com/p20180125647736315/)