[3d筆記-1]基本幾何---個人理解筆記__n2

來源:互聯網
上載者:User

關於3x4(實際的4x4)矩陣的個人解說:
矩陣如下:
n11 n12 n13 n14
n21 n22 n23 n24
n31 n32 n33 n34
u   v   w   j
其中 u   v   w   j是本人加上去的,具體類似AS3中的2d矩陣最後以行,其實可以忽略

產生平移 旋轉 傾斜或剪下 的作用陣列:
n11 n12 n13
n21 n22 n23
n31 n32 n33

座標整列
n14
n24
n34

一般情況下可以定義3x4實際上應該當作4x4齊次陣列預設定義如下
n11 n12 n13 n14
n21 n22 n23 n24
n31 n32 n33 n34
0   0   0   1

平移時陣列表現:
1   0   0   n14
0   1   0   n24
0   0   1   n34
0   0   0   1
可以看出當對角線為1 最後一列前三行僅有值時作平移運動

縮放時陣列表現:
s1  0   0   0
0  s2   0   0
0   0   s3  0
0   0   0   1
s1對應x軸方向的縮放
s2對應y軸方向的縮放
s3對應z軸方向的縮放
一般應用於一同變換 可參考AS3 的matrix矩陣的scale方法,與之類似

旋轉時陣列請看繼續下一段回複

關於旋轉

聲明:

rad為將旋轉的角度

var c :Number   = Math.cos( rad );
即餘弦值
var s :Number   = Math.sin( rad );
即正弦值

繞x軸旋轉整列狀態
1   0   0   0
0   c   -s  0
0   s   c   0
0   0   0   1

繞y軸旋轉整列狀態
 c   0   s   0
 0   1   0   0
 -s  0   c   0
 0   0   0   1

繞z軸旋轉整列狀態
 c   -s  0   0
 s   c   0   0
 0   0   1   0
 0   0   0   1
 
 由於存在3軸故
 可以分為
 rotationX
 rotationY
 rotationZ
 
 值得注意的是在此矩陣x y z 變換時候不需要考慮y軸方向
 而轉換到 flash x y 時就需要定義y的方向或者考慮y的方向
 因為在舞台中y是向下的
 
 另外要考慮的是我們現在一般都採用(0,0)左上對其方式,這也需要被自訂
 或者去考慮是否要讓他們像我們數學環境下考慮的中心(0,0);不過好在這一點比起前面一點來說並不那麼重要
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.