• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天行健 君子當自強而不息

            3D數學 ---- 矩陣的幾何解釋

            一般來說,方陣能描述任意線性變換。線性變換保留了直線和平行線,但原點沒有移動。線性變換保留直線的同時,其他的幾何性質如長度、角度、面積和體積可能被變換改變了。從非技術意義上說,線性變換可能“拉伸”坐標系,但不會“彎曲”或“卷折”坐標系。

             

            矩陣是怎樣變換向量的

            向量在幾何上能被解釋成一系列與軸平行的位移,一般來說,任意向量v都能寫成“擴展”形式:

            另一種略有差別的形式為:

            注意右邊的單位向量就是x,y,z軸,這里只是將概念數學化,向量的每個坐標都表明了平行于相應坐標軸的有向位移。

            讓我們將上面的向量和重寫一遍,這次分別將pqr定義為指向+x,+y和+z方向的單位向量,如下所示:

            v = xp + yq + zr

            現在,向量v就被表示成向量pqr的線性變換了,向量pqr稱作基向量。這里基向量是笛卡爾坐標軸,但事實上,一個坐標系能用任意3個基向量定義,當然這三個基向量要線性無關(也就是不在同一平面上)。以pqr為行構建一個3 x 3矩陣M,可得到如下矩陣:

            用一個向量乘以該矩陣,得到:

            如果把矩陣的行解釋為坐標系的基向量,那么乘以該矩陣就相當于執行了一次坐標轉換,如果aM=b,我們就可以說,Ma轉換到b

            從這點看,術語“轉換”和“乘法”是等價的。

            坦率地說,矩陣并不神秘,它只是用一種緊湊的方式來表達坐標轉換所需的數學運算。進一步,用線性代數操作矩陣,是一種進行簡單轉換或導出更復雜轉換的簡便方法。

             

            矩陣的形式:

            基向量[1, 0, 0], [0, 1, 0], [0, 0, 1]乘以任意矩陣M

            用基向量[1, 0, 0]乘以M時,結果是M的第1行。其他兩行也有同樣的結果,這是一個關鍵的發現:矩陣的每一行都能解釋為轉換后的基向量。

            這個強有力的概念有兩條重要性質:

            1、有了一種簡單的方法來形象化解釋矩陣所代表的變換。

            2、有了反向建立矩陣的可能 ---- 給出一個期望的變換(如旋轉、縮放等),能夠構造一個矩陣代表此變換。我們所要做的一切就是計算基向量的變換,然后將變換后的基向量填入矩陣。

            首先來看看2D例子,一個2 x 2矩陣:

            這個矩陣代表的變換是什么?首先,從矩陣中抽出基向量pq

            p = [2   1]

            q = [-1  2]

            圖7.1以“原”基向量(x軸,y軸)為參考,在笛卡爾平面中展示了這些向量。

            如圖7.1所示,x基向量變換至上面的p向量,y基向量變換至q向量。所以2D中想象矩陣的方法就是想象由行向量構成的“L”形狀。這個例子中,能夠很清楚的看到,M代表的部分變換是逆時針旋轉26度。

            當然,所有向量都被線性變換所影響,不只是基向量,從“L”形狀能夠得到變換最直觀的印象,把基向量構成的整個2D平行四邊形畫完整有助于進一步看到變換對其他向量的影響,如圖7.2所示:

            平行四邊形稱作“偏轉盒”,在盒子中畫一個物體有助于理解,如圖 7.3 所示:

            很明顯,矩陣M不僅旋轉坐標系,還會拉伸它。

            這種技術也能應用到3D轉換中。2D中有兩個基向量,構成"L"型;3D中有三個基向量,它們形成一個”三腳架“。首先,讓我們展示出一個轉換前的物品。圖7.4展示了一個茶壺,一個立方體。基向量在”單位“向量處。

            (為了不使圖形混亂,沒有標出z軸基向量[0, 0, 1],它被茶壺和立方體擋住了。)

            現在,考慮以下3D變換矩陣:

            從矩陣的行中抽出基向量,能想象出該矩陣所代表的變換。變換后的基向量、立方體、茶壺如圖7.5所示:

            這個變換包含z軸順時針旋轉45度和不規則縮放,使得茶壺比以前”高“。注意,變換并沒有影響到z軸,因為矩陣的第三行是[0, 0 , 1]。


            posted on 2008-01-09 17:16 lovedday 閱讀(14249) 評論(6)  編輯 收藏 引用 所屬分類: ■ 3D Math Basis

            評論

            # re: 3D數學 ---- 矩陣的幾何解釋[未登錄] 2008-03-19 15:44 cloud

            GOOD  回復  更多評論   

            # re: 3D數學 ---- 矩陣的幾何解釋 2008-07-21 13:28 rabbit729

            講的很好!!!!!支持樓主,請問你的插圖是從什么書中摘錄的?我想系統的學習一下,謝謝  回復  更多評論   

            # re: 3D數學 ---- 矩陣的幾何解釋 2013-10-29 18:18 靜水淵

            @rabbit729 中文書名:3D數學基礎圖形與游戲開發 英文書名:3D Math Primer for Graphics and Game Development  回復  更多評論   

            # re: 3D數學 ---- 矩陣的幾何解釋 2014-04-30 12:17 iahu

            我去,大學沒學過數學的人終于也弄懂了矩陣的概念了,多謝!
            非常形象通俗。以前看的百科里的介紹都是些公式,還不時出現些不知道意思的數學符號,根本不知所以然。  回復  更多評論   

            # re: 3D數學 ---- 矩陣的幾何解釋 2014-06-10 14:36 dusthand

            耳目一新!  回復  更多評論   

            # re: 3D數學 ---- 矩陣的幾何解釋 2016-11-15 16:12 永遇樂

            解釋的很透徹,很形像。謝謝  回復  更多評論   

            公告

            導航

            統計

            常用鏈接

            隨筆分類(178)

            3D游戲編程相關鏈接

            搜索

            最新評論

            亚洲国产精品久久电影欧美 | 久久99九九国产免费看小说| 国产亚洲欧美精品久久久| 国产精品亚洲综合久久| 国产亚洲色婷婷久久99精品91| 久久精品一区二区| 久久综合九色综合久99| 久久综合欧美成人| 18岁日韩内射颜射午夜久久成人| 国产亚洲美女精品久久久久狼| 国产精品福利一区二区久久| 97久久精品人妻人人搡人人玩| 狠狠88综合久久久久综合网| 免费精品99久久国产综合精品| 久久精品成人欧美大片| 亚洲精品tv久久久久| 久久亚洲精品无码VA大香大香| 久久久久亚洲AV成人网人人网站| 久久久一本精品99久久精品66 | 国产99久久精品一区二区| 91精品国产综合久久久久久| 亚洲国产精品热久久| 久久精品国产亚洲一区二区三区| 久久人人青草97香蕉| 久久久精品人妻一区二区三区四 | 久久综合亚洲欧美成人| 粉嫩小泬无遮挡久久久久久| 久久精品一区二区| 久久精品国产99国产精品导航| 狼狼综合久久久久综合网| 国产一区二区精品久久岳| 国产精品久久久久免费a∨| 免费精品99久久国产综合精品| 伊人久久无码精品中文字幕| 大伊人青草狠狠久久| 中文字幕久久精品| 日本久久久精品中文字幕| 中文字幕无码免费久久| 久久精品人妻一区二区三区| 粉嫩小泬无遮挡久久久久久| 久久久久久精品免费看SSS|