【寫在前面】
四元數(shù)網(wǎng)上的資料很多汹胃,然后我覺得都是挺難懂的。即便到現(xiàn)在我也是一知半解《危現(xiàn)在我將我一知半解的內(nèi)容用自己的話簡單地寫下來着饥,盡量避免使用數(shù)學(xué)公式,都是自己的話啡邑,表述可能不會很精準(zhǔn)贱勃,有錯誤歡迎指出。日后有體會了谤逼,在更新贵扰。
——2020.12.16
【理解】
1、第一點(diǎn)理解:四元數(shù)就是表示四維空間坐標(biāo)系流部。
2戚绕、為什么要用四元數(shù)表示旋轉(zhuǎn)?
答:使用歐拉角表示旋轉(zhuǎn)的時候枝冀,雖然簡單舞丛,但是容易出現(xiàn)萬向鎖的問題耘子。
3、為什么表示旋轉(zhuǎn)的四元數(shù)“那蚯校”為1谷誓?
答:在二維空間(復(fù)數(shù)坐標(biāo)系)里面,如果要讓一個a向量旋轉(zhuǎn)一個角度吨凑,那么只需要用這個a向量乘于一個和這個角度對應(yīng)的b單位向量捍歪。如果乘于的向量不是單位向量,那么a向量在旋轉(zhuǎn)的同時鸵钝,其模也會發(fā)生變化糙臼。同理,在三維空間里面要讓一個向量旋轉(zhuǎn)一定角度也是乘于一個單位向量即可(這就是歐拉角表示法)恩商。所以在四維空間里面的四元數(shù)也必須是單位的变逃,這樣才能保證旋轉(zhuǎn)后原向量“模”不變怠堪。這也是為什么三維旋轉(zhuǎn)可以先映射到四維空間揽乱,然后在映射回三維空間的原因。
4研叫、為什么用四元數(shù)表示空間旋轉(zhuǎn)的時候锤窑,要對原向量先左乘一個四元數(shù),然后在右乘四元數(shù)的逆嚷炉?
答:類比二維空間渊啰,二維空間如果對原向量先左乘一個單位向量,然后在右乘這個單位向量的逆申屹。那么原向量會先旋轉(zhuǎn)一個角度绘证,然后在反方向旋轉(zhuǎn)這個角度。最后效果就是等于沒有旋轉(zhuǎn)哗讥。二維空間出現(xiàn)這種情況的原因是因為在這個空間里面嚷那,不管怎么旋轉(zhuǎn),其旋轉(zhuǎn)軸都是垂直于這個空間的杆煞,旋轉(zhuǎn)后的向量永遠(yuǎn)與原向量處于同一個空間魏宽;在四維空間里面,一般旋轉(zhuǎn)軸與向量并不是垂直的决乎,旋轉(zhuǎn)會將原向量偏離三維子空間队询,需要再乘以共軛形式旋轉(zhuǎn)回來,所以需要兩次旋轉(zhuǎn)构诚,所以就是左乘一個蚌斩,右乘一個。
四元數(shù)表示旋轉(zhuǎn)范嘱,本質(zhì)上是用四維空間來控制三維空間的旋轉(zhuǎn)送膳。在四維空間里面员魏,會有很多不可思議的東西,比如叠聋,四維空間里面存在兩個圓撕阎,它們互相垂直但是又沒有交點(diǎn)(想不到吧?)碌补。因此闻书,四維空間里面對原向量先左乘一個四元數(shù),然后在右乘四元數(shù)的逆脑慧,這樣旋轉(zhuǎn)不是轉(zhuǎn)回原來的位置,而是繼續(xù)保持第一次旋轉(zhuǎn)的方向繼續(xù)旋轉(zhuǎn)砰盐。(在四維空間里面闷袒,左乘一個數(shù)采用右手法則確定旋轉(zhuǎn)方向,右乘一個數(shù)則采用左手法則)其實這也就是為什么岩梳,四元數(shù)公式里面使用的是半角囊骤,而不是全角,因為我們要旋轉(zhuǎn)兩次冀值。
——2020.12.16