三维空间中通常可以用旋转矩阵、旋转向量、欧拉角和四元数来描述旋转
旋转矩阵
先回顾下向量的内积和外积
⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪a⋅b=aTb=∑3i=1aibi=|a||b|cos(a,b)a×b=⎡⎣⎢ia1b1ja2b2ka3b3⎤⎦⎥=⎡⎣⎢a2b3−a3b2a3b1−a1b3a1b2−a2b1⎤⎦⎥=⎡⎣⎢0a3−a2−a30a1a2−a10⎤⎦⎥b=a^b(1) { a ⋅ b = a T b = ∑ i = 1 3 a i b i = | a | | b | c o s ( a , b ) a × b = [ i j k a 1 a 2 a 3 b 1 b 2 b 3 ] = [ a 2 b 3 − a 3 b 2 a 3 b 1 − a 1 b 3 a 1 b 2 − a 2 b 1 ] = [ 0 − a 3 a 2 a 3 0 − a 1 − a 2 a 1 0 ] b = a ^ b ( 1 )
其中 a^=⎡⎣⎢0a3−a2−a30a1a2−a10⎤⎦⎥ a ^ = [ 0 − a 3 a 2 a 3 0 − a 1 − a 2 a 1 0 ] 是取向量 a a 的 反对角矩阵
外积只对三维向量存在定义,并且可以表示向量的旋转:
假设两个不平行向量
, b b ,可以用一个与