• <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>

            天行健 君子當(dāng)自強(qiáng)而不息

            3D數(shù)學(xué) ---- 矩陣和線性變換(1)

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

            一般來(lái)說(shuō),變換物體相當(dāng)于以相反的量變換描述這個(gè)物體的坐標(biāo)系。當(dāng)有多個(gè)變換時(shí),則需要以相反的順序變換相反的量。例如,將物體順時(shí)針旋轉(zhuǎn)20度,擴(kuò)大200%,等價(jià)于將坐標(biāo)系縮小200%,再逆時(shí)針旋轉(zhuǎn)20度。

             

            2D中的旋轉(zhuǎn)

            在2D環(huán)境中,物體只能繞某個(gè)點(diǎn)旋轉(zhuǎn),因?yàn)楝F(xiàn)在暫不考慮平移。這里我們進(jìn)一步限制物體,使其只繞原點(diǎn)旋轉(zhuǎn)。2D中繞原點(diǎn)的旋轉(zhuǎn)只有一個(gè)參數(shù),角度θ,它描述了旋轉(zhuǎn)量。逆時(shí)針旋轉(zhuǎn)經(jīng)常(不是必須)被認(rèn)為是正方向,順時(shí)針?lè)较蚴秦?fù)方向。圖8.5展示了基向量pq繞原點(diǎn)旋轉(zhuǎn),得到新的基向量p'q'

            現(xiàn)在我們知道了旋轉(zhuǎn)后基向量的值,就可以以公式8.1的形式構(gòu)造矩陣如下:

            3D中繞坐標(biāo)軸的旋轉(zhuǎn)

            在3D場(chǎng)景中,繞軸旋轉(zhuǎn)而不是點(diǎn)(此時(shí)軸指的是旋轉(zhuǎn)所繞的直線,不一定是笛卡爾坐標(biāo)軸x,y,z)。再次聲明,這里暫不考慮平移,所以只討論旋轉(zhuǎn)軸穿過(guò)原點(diǎn)的情況。

            繞軸旋轉(zhuǎn)角度θ時(shí),必須知道哪個(gè)方向被認(rèn)為“正”,哪個(gè)方向被認(rèn)為“負(fù)”,左手坐標(biāo)系中定義此方向的規(guī)則為左手法則。首先,要明確旋轉(zhuǎn)軸指向哪個(gè)方向。當(dāng)然,旋轉(zhuǎn)軸在理論上是無(wú)限延伸的,但我們還是要認(rèn)為它有正端點(diǎn)和負(fù)端點(diǎn)。與笛卡爾坐標(biāo)軸定義坐標(biāo)系相同,左手法則是這樣的:伸出左手,大拇指向上,其余手指彎曲。大拇指指向旋轉(zhuǎn)軸的正方向,此時(shí),四指彎曲的方向就是旋轉(zhuǎn)的正方向。如圖8.6所示。

            如果用的是右手坐標(biāo)系,也有類似的法則,不過(guò)是用右手代替左手,如圖8.7所示:

            圖8.8顯示了另一種正方向的定義:

            最為常見的旋轉(zhuǎn)是繞某坐標(biāo)軸的簡(jiǎn)單旋轉(zhuǎn),讓我們從繞x軸旋轉(zhuǎn)開始,如圖8.9所示:

            求出旋轉(zhuǎn)后的基向量,可以得到矩陣,見公式8.2。

            Rotation about the y-axis is similar:

            The matrix to rotate about the y-axis:

            Finally, rotating about the z-axis:

             

            3D中繞任意軸的旋轉(zhuǎn)

            當(dāng)然也能繞3D中的任意軸旋轉(zhuǎn)。因?yàn)檫@里不考慮平移,可以假設(shè)旋轉(zhuǎn)軸通過(guò)原點(diǎn),這種旋轉(zhuǎn)比繞坐標(biāo)軸的旋轉(zhuǎn)更復(fù)雜也更少見。用單位向量n描述旋轉(zhuǎn)軸,和前面一樣用θ描述旋轉(zhuǎn)量。

            讓我們導(dǎo)出繞軸n旋轉(zhuǎn)角度θ的矩陣,也就是說(shuō),我們想得到滿足下面條件的矩陣 R(n, θ):

            vR(n, θ) = v'

            v'是向量v繞軸n旋轉(zhuǎn)后的向量。讓我們看看能否用vn和θ表示v'。我們的想法是在垂直于n的平面中解決這個(gè)問(wèn)題,那么這就轉(zhuǎn)換為了一個(gè)簡(jiǎn)單的2D問(wèn)題。為了做到這一點(diǎn),將v分解為兩個(gè)分量:v||v⊥,分別平行于n和垂直于n,并有v = v|| + v⊥。因?yàn)?strong>v||平行于n,所以繞n旋轉(zhuǎn)不會(huì)影響它。故只要計(jì)算出v⊥n旋轉(zhuǎn)后的 v⊥',就能得到 v' =v|| + v⊥'。為了計(jì)算v⊥',我們構(gòu)造向量v||v⊥和臨時(shí)向量w,如圖8.12所示:

            上圖展示了以下向量:

            (1)v||v平行于n的分量,另一種說(shuō)法就是v||vn上的投影,用(v.n)n計(jì)算。

            (2)v⊥v垂直于n的分量,因?yàn)? v = v|| + v⊥,所以 v⊥ = v - v||。v⊥v投影到垂直于n的平面上的結(jié)果。

            (3)w是同時(shí)垂直于v||v⊥的向量它的長(zhǎng)度和v⊥的相同。wv⊥同在垂直于n的平面中,wv⊥n旋轉(zhuǎn)90度的結(jié)果,由n x v⊥可以得到。

            現(xiàn)在,v'垂直于n的分量可以表示為:

            posted on 2008-01-12 16:44 lovedday 閱讀(12822) 評(píng)論(1)  編輯 收藏 引用

            評(píng)論

            # re: 3D數(shù)學(xué) ---- 矩陣和線性變換(1)[未登錄] 2008-11-22 16:01 dd

            well done  回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            公告

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            隨筆分類(178)

            3D游戲編程相關(guān)鏈接

            搜索

            最新評(píng)論

            久久99国产一区二区三区| 97久久精品无码一区二区| 99久久精品久久久久久清纯| 久久夜色tv网站| 无码乱码观看精品久久| 精品久久久久久中文字幕大豆网| 中文字幕乱码人妻无码久久| 91精品国产高清久久久久久io | 精品久久久久久综合日本| 91精品国产综合久久久久久| 久久久WWW免费人成精品| 久久国产免费直播| 久久综合九色综合久99 | 久久99精品国产麻豆宅宅| 亚洲欧美日韩中文久久| 精品多毛少妇人妻AV免费久久| 狠狠色丁香久久婷婷综合| 狠狠色综合久久久久尤物| 亚洲中文精品久久久久久不卡| 久久国产亚洲精品麻豆| 亚洲AV日韩精品久久久久| 国产精品免费久久久久久久久| 思思久久99热只有频精品66| 久久精品国产99国产精品| 午夜欧美精品久久久久久久| 久久婷婷五月综合成人D啪 | 久久精品国产99久久丝袜| 精品国产乱码久久久久久郑州公司| 天堂无码久久综合东京热| 久久er国产精品免费观看2| 无码AV波多野结衣久久| 伊人久久大香线蕉AV一区二区| 精品无码人妻久久久久久| 久久久精品免费国产四虎| 久久精品亚洲一区二区三区浴池| 性做久久久久久久久浪潮| 人妻丰满?V无码久久不卡| 久久久久亚洲精品天堂久久久久久 | 一级做a爰片久久毛片毛片| 精品久久久久久无码国产| 伊人丁香狠狠色综合久久|