directx數學基礎2

矩陣(matrix):在遊戲中提供高效的變換方式,幾何變換與座標變換

矩陣(矩形實數數組)

矩陣乘法(a中的行向量的維數必須與b中的列向量的維數相同)

例如:

轉置矩陣(transpose: 對一個矩陣的行和列進行互換)

標記爲T

單位矩陣(identity: 除了對角線上的元素爲1外,其他元素均爲0)

單位矩陣相當於1

逆矩陣(inverse: 乘法的逆運算(矩陣除法運算))

性質

基本變換(4x4矩陣與向量-矩陣乘積來描述變換)

齊次座標(homogeneous coordinate): 用於表示3D向量或點的四元組
通過它的第4個座標分量w(控制平移)來判斷:

縮放

例子:
假設我們通過一個最小點(−4,−4,0)和一個最大點(4,4,0)來定義一個正方形,我們希望
將正方形沿 x 軸縮小 0.5 倍,沿 y 軸放大 2.0 倍,z 軸保持不變則對應的縮放矩陣爲:

再對正方形進行縮放(變換),將正方形的兩個點與該矩陣相乘

結果

旋轉
繞n(x,y,z)軸旋轉的’萬能’旋轉矩陣

正交矩陣(orthogonal matrix): 行向量都是相互垂直且爲單位長度
性質
它的逆矩陣與它的轉置矩陣相等

繞x,y,z軸(n=(1,0,0) n=(0,1,0) n=(0,0,1))旋轉的矩陣

例子:
假設我們通過一個最小點(−1,0,−1)和一個最大點(1,0,1)來定義一個正方形。讓正方形
繞着 y 軸的順時針方向旋轉−30º(即,逆時針方向旋轉 30º)。則y軸旋轉矩陣爲:

再對正方形進行旋轉(變換),將正方形的兩個點與該矩陣相乘:

結果

平移

平移矩陣的逆矩陣如下:

例子:
假設我們通過一個最小點(−8,2,0)和一個最大點(−2,8,0)來定義一個正方形。讓正方形
沿x軸平移12,沿y軸平移−10,z軸保持不變。則對應的平移矩陣如下:

再對正方形進行平移(變換),將正方形的兩個點與該矩陣相乘:

結果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章