矩陣運算 矩陣旋轉

2021-06-16 02:19:30 字數 996 閱讀 3693

以下不加證明地給出在世界座標系中,以座標點(0,0,0)為原點的旋轉矩陣

包含平移的線性變換稱作仿射變換,3d中的仿射變換不能用 3 x 3 矩陣表達,必須使用4 x 4矩陣

1.繞x座標軸旋轉

|1      0          0       0|

|0   cos(a)   sin(a)  0|

|0  -sin(a)  cos(a)   0|

|0      0          0       1|

2.繞y座標軸旋轉

|cos(a)   0   -sin(a) 0|

|0           1   sin(a)  0|

|sin(a)   0  cos(a)   0|

|0          0     0       1|

3.繞z座標軸旋轉

|cos(a)   sin(a)   0   0|

|-sin(a)  cos(a)   1   0|

|0           0          1   0|

|0           0          0   1|

4.繞任意向量n(x,y,z)旋轉a角度

|x*x(1-cos(a)+cos(a)      xy(1-cos(a))+zsin(a)       xz(1-cos(a))-ysin(a)       0|

|xy(1-cos(a))-zsin(a)       y*y(1-cos(a))+cos(a)     yz(1-cos(a))+xsin(a)       0|

|xz(1-cos(a))+ysin(a)      yz(1-cos(a))-xsin(a)      z*z(1-cos(a))+cos(a)       0|

|0                                    0                                    0                                   1|

矩陣運算 平移,旋轉,縮放

平時開發程式,免不了要對影象做各種變換處理。有的時候變換可能比較複雜,比如平移之後又旋轉,旋轉之後又平移,又縮放。直接用公式計算,不但複雜,而且效率低下。這時可以借助變換矩陣和矩陣乘法,將多個變換合成乙個。最後只要用乙個矩陣對每個點做一次處理就可以得到想要的結果。另外,矩陣乘法一般有硬體支援,比如3...

旋轉列印矩陣 旋轉儲存矩陣 之字形列印矩陣

題目 輸入乙個矩陣,按照從外向裡以順時針順序依次列印出每乙個數字。例如 如果輸入如下矩陣 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 有三問 1 如何實現轉圈列印矩陣?2 如何實現順時針旋轉矩陣?3 如何實現 之 字形列印矩陣?題外話 由於要列印輸出矩陣,從題目可以...

列印矩陣 旋轉矩陣 矩陣查詢(c )

2 旋轉正方形矩陣 vector方法 後續更新 3 之列印 後續更新 4 矩陣查詢 後續更新 不能想如何進行座標位置變換到下乙個,很難。應該考慮資料狀況,從巨集觀上進行分解。若傳入陣列為二維 int a,且不能確定長和寬。way1 下面方法也能獲取長度 1 int lines sizeof a si...