繞任意單位軸旋轉矩陣計算

2021-08-31 10:04:17 字數 1148 閱讀 9509

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!

在三維變換中,經常要用到旋轉變換,而且很多變換是圍繞任意軸的。那麼下面就介紹繞任意單位軸旋轉的兩種方法。

假設要旋轉的角度是a,圍繞的軸是r。

方法一:

(1)構建新的基

尋找另外兩條單位長度的座標軸s、t,他們相互垂直,而且與r垂直。這樣r、s、t組成了一組新基。

具體求s的方法:

找到r中的最小分量,將其設定為0.然後交換其他兩個分量,接著將第乙個非零的分量取反(實際上也可以對另外乙個非零分量取反)。

要求t,只需求r、s的叉積即可。

詳細計算公式:

這樣就確保了r、s、t組成了一組正交單位基。

(2)將標準基變換到新的基。

需要通過變換使得r和x軸重合,這樣之後的旋轉就是繞x軸的普通旋轉。另外的兩個軸也相互重合。

變換矩陣由上面的r、s、t向量組成:

(3)旋轉

因為r與x重合,在新的基中我們只需圍繞x軸進行旋轉(正常情況下的旋轉)即可。

假設旋轉矩陣是rx(a)。

(4)變換回到原來的標準基。

變換矩陣應該是m的逆矩陣,由於m是正交的,因此其逆矩陣就是其轉置矩陣。

因此,最終的繞任意單位軸的變換矩陣是:

方法二

根據goldman給出的公式進行計算,這個公式有點複雜:

具體推導過程可以參考:

給我老師的人工智慧教程打call!

繞任意軸旋轉

關於最常見的繞座標軸旋轉,可以看看前一篇 幾何變換詳解。繞任意軸旋轉的情況比較複雜,主要分為兩種情況,一種是平行於座標軸的,一種是不平行於座標軸的,對於平行於座標軸的,我們首先將旋轉軸平移至與座標軸重合,然後進行旋轉,最後再平移回去。整個過程就是 對於不平行於座標軸的,可按如下方法處理。該方法實際上...

繞任意軸旋轉

繞任意軸旋轉 關於最常見的繞座標軸旋轉,可以看看前一篇 幾何變換詳解。繞任意軸旋轉的情況比較複雜,主要分為兩種情況,一種是平行於座標軸的,一種是不平行於座標軸的,對於平行於座標軸的,我們首先將旋轉軸平移至與座標軸重合,然後進行旋轉,最後再平移回去。整個過程就是 對於不平行於座標軸的,可按如下方法處理...

繞任意軸旋轉

關於最常見的繞座標軸旋轉,可以看看前一篇 幾何變換詳解。繞任意軸旋轉的情況比較複雜,主要分為兩種情況,一種是平行於座標軸的,一種是不平行於座標軸的,對於平行於座標軸的,我們首先將旋轉軸平移至與座標軸重合,然後進行旋轉,最後再平移回去。整個過程就是 對於不平行於座標軸的,可按如下方法處理。該方法實際上...