• <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中的方位和角位移(4)

             

            四元數(shù)乘法(叉乘)

            四元數(shù)能根據(jù)復(fù)數(shù)乘法解釋來(lái)相乘,如下:

            這導(dǎo)出了四元數(shù)乘法的標(biāo)準(zhǔn)定義,下面以兩種四元數(shù)記法給出,見(jiàn)公式10.9:

            不用為四元數(shù)叉乘使用乘號(hào),"行"或 "列"四元數(shù)也沒(méi)有什么區(qū)別。

            四元數(shù)叉乘滿足結(jié)合律,但不滿足交換律,如公式10.10所示:

            現(xiàn)在看看兩個(gè)四元數(shù)叉乘的模:

            展開(kāi)合并同類(lèi)項(xiàng):

            最后應(yīng)用四元數(shù)模的定義得到公式 10.11:

            因此,四元數(shù)乘積的模等于模的乘積。這個(gè)結(jié)論非常重要,因?yàn)樗WC了兩個(gè)單位四元數(shù)相乘的結(jié)果還是單位四元數(shù)。

            四元數(shù)乘積的逆等于各個(gè)四元數(shù)的逆以相反的順序相乘,如公式10.12所示:

            現(xiàn)在到了四元數(shù)非常有用的性質(zhì)。讓我們"擴(kuò)展"一個(gè)標(biāo)準(zhǔn)3D點(diǎn)(x, y, z)到四元數(shù)空間,通過(guò)定義四元數(shù)p=[0, (x, y, z)]即可(當(dāng)然,在一般情況下,p不會(huì)是單位四元數(shù))。設(shè)q為我們討論的旋轉(zhuǎn)四元數(shù)形式[cos(θ/2), nsin(θ/2)],n為旋轉(zhuǎn)軸,單位向量;θ為旋轉(zhuǎn)角。你會(huì)驚奇地發(fā)現(xiàn),執(zhí)行下面的乘法可以使3D點(diǎn)pn旋轉(zhuǎn):

            已經(jīng)證明,四元數(shù)乘法和3D向量旋轉(zhuǎn)的對(duì)應(yīng)關(guān)系,更多的是理論上的意義,不是實(shí)踐上的。實(shí)際上,它幾乎和把四元數(shù)轉(zhuǎn)換到矩陣形式然后再用矩陣乘以向量所用的時(shí)間一樣。

            讓我們看多次旋轉(zhuǎn)的情況,將點(diǎn)p用一個(gè)四元數(shù)a旋轉(zhuǎn)然后再用另一個(gè)四元數(shù)b旋轉(zhuǎn):

            注意,先進(jìn)行a旋轉(zhuǎn)再進(jìn)行b旋轉(zhuǎn)等價(jià)于執(zhí)行乘積ba代表的單一旋轉(zhuǎn)。因此,四元數(shù)乘法能用來(lái)連接多次旋轉(zhuǎn),這和矩陣乘法的效果一樣。根據(jù)四元數(shù)乘法的標(biāo)準(zhǔn)定義,這個(gè)旋轉(zhuǎn)是以從右向左的順序發(fā)生的。這非常不幸,因?yàn)樗仁刮覀円?nbsp;"由里向外"的順序連接多次旋轉(zhuǎn),這和以矩陣形式作同樣的運(yùn)算是不同的(至少在使用行向量時(shí)是不同的)。

            針對(duì)公式10.9所導(dǎo)致的"順序顛倒"問(wèn)題,我們將違背標(biāo)準(zhǔn)定義,以相反的運(yùn)算順序來(lái)定義四元數(shù)乘法。注意,僅僅向量叉乘部分受到了影響,見(jiàn)公式10.13:

            這并沒(méi)有改變四元數(shù)的基本性質(zhì)和用v、θ的幾何解釋?zhuān)匀荒苡盟脑獢?shù)乘法來(lái)直接旋轉(zhuǎn)向量,唯一不同的是,根據(jù)我們的定義,將四元數(shù)放在向量右邊,而把它的逆放在向量的左邊:

            能看到下面這個(gè)表達(dá)了多個(gè)旋轉(zhuǎn)連接的等式,它是自左向右的,與旋轉(zhuǎn)發(fā)生的順序一致:

            對(duì)于我們來(lái)說(shuō),讓四元數(shù)代表角位移的"高級(jí)"能力,使其易于使用,這比堅(jiān)持正式標(biāo)準(zhǔn)更加重要。我們的目的在于理解四元數(shù)的本質(zhì)和它提供給我們的操作,設(shè)計(jì)一個(gè)類(lèi)將直接引出這些操作,在需要的地方使用這個(gè)類(lèi),永遠(yuǎn)不需要再去擺弄里面的數(shù)。

             

            四元數(shù)的"差"

            利用四元數(shù)的乘法和逆,就能夠計(jì)算兩個(gè)四元數(shù)的"差"。"差"被定義為一個(gè)方位到另一個(gè)方位的角位移。換句話說(shuō),給定方位ab,能夠計(jì)算從a旋轉(zhuǎn)到b的角位移d。用四元數(shù)等式更加緊湊地表示為:ad=b

            兩邊同時(shí)左乘a-1:

            現(xiàn)在,我們就有了求得代表一個(gè)方位到另一個(gè)方位角位移的四元數(shù)的方法。

            數(shù)學(xué)上,兩個(gè)四元數(shù)之間的角度"差"更類(lèi)似于"除",而不是真正的"差"(減法)。

             

            四元數(shù)點(diǎn)乘

            四元數(shù)也有點(diǎn)乘運(yùn)算,它的記法、定義和向量點(diǎn)乘非常類(lèi)似,如公式10.14所示:

            注意,和向量點(diǎn)乘一樣,其結(jié)果是標(biāo)量。對(duì)于單位四元數(shù)ab,有-1 ≤ a . b ≤ 1。通常我們只關(guān)心 a . b 的絕對(duì)值,因?yàn)?strong>a . b = -(a . -b),所以b和-b代表相同的角位移。

            四元數(shù)點(diǎn)乘的幾何解釋類(lèi)似于向量點(diǎn)乘的幾何解釋?zhuān)脑獢?shù)點(diǎn)乘 a . b 的絕對(duì)值越大,ab代表的角位移越"相似"。


            posted on 2008-02-13 17:03 lovedday 閱讀(1670) 評(píng)論(3)  編輯 收藏 引用

            評(píng)論

            # re: 3D中的方位和角位移(4) 2008-04-08 07:54 梁全

            經(jīng)過(guò)仔細(xì)對(duì)比,公式10.9和公式10.13正好反了。

            也就是作者把四元數(shù)的 標(biāo)準(zhǔn)公式 和 改進(jìn)公式 的表達(dá)式用反了。

            這應(yīng)該只是疏忽,因?yàn)樵创a中作者按照改進(jìn)公式的思想編寫(xiě)的程序,可采用的公式是10.9的公式,看來(lái)只是寫(xiě)書(shū)的時(shí)候把表達(dá)式弄顛倒了,程序編寫(xiě)的還對(duì)。

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

            # re: 3D中的方位和角位移(4) 2008-04-09 08:37 lovedday

            不是疏忽,作者是故意改變四元數(shù)乘法的定義,目的是為了讓四元數(shù)乘法更易于表達(dá)旋轉(zhuǎn)。不過(guò)四元數(shù)是比較高級(jí)的話題,需要抽象代數(shù)的基礎(chǔ),這本書(shū)其實(shí)并沒(méi)有真正講清楚,我也不是搞的特別清楚,不過(guò)已經(jīng)理解了作者這么做的意圖。  回復(fù)  更多評(píng)論   

            # re: 3D中的方位和角位移(4) 2008-04-09 08:38 lovedday

            “對(duì)于我們來(lái)說(shuō),讓四元數(shù)代表角位移的"高級(jí)"能力,使其易于使用,這比堅(jiān)持正式標(biāo)準(zhǔn)更加重要。我們的目的在于理解四元數(shù)的本質(zhì)和它提供給我們的操作,設(shè)計(jì)一個(gè)類(lèi)將直接引出這些操作,在需要的地方使用這個(gè)類(lèi),永遠(yuǎn)不需要再去擺弄里面的數(shù)。”這是作者這么做的原因。  回復(fù)  更多評(píng)論   


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


            公告

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            隨筆分類(lèi)(178)

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

            搜索

            最新評(píng)論

            亚洲人成无码久久电影网站| 国内精品久久久久久中文字幕 | 久久久久亚洲AV无码专区桃色 | 狠狠综合久久综合88亚洲| 国产—久久香蕉国产线看观看| 久久精品国产99国产电影网 | 久久久WWW成人免费毛片| 久久996热精品xxxx| 久久亚洲电影| 久久人人爽人人爽人人片AV高清 | 91精品国产91久久久久久青草| a高清免费毛片久久| 久久超乳爆乳中文字幕| 人妻无码久久一区二区三区免费| 久久久久久夜精品精品免费啦| 久久九九亚洲精品| 国产综合免费精品久久久| 久久高清一级毛片| 中文成人久久久久影院免费观看| 免费精品国产日韩热久久| 久久婷婷成人综合色综合| 久久综合九色综合久99| 日本精品一区二区久久久| 男女久久久国产一区二区三区| 久久综合丁香激情久久| 无夜精品久久久久久| 亚洲精品乱码久久久久久自慰| 久久国产高清字幕中文| 婷婷久久综合| 99国产精品久久久久久久成人热| 久久se这里只有精品| 一本色道久久88精品综合| 国产成人香蕉久久久久| 亚洲人成网亚洲欧洲无码久久 | 久久精品国产99久久久| segui久久国产精品| 中文字幕人妻色偷偷久久| 久久久久97国产精华液好用吗| 人妻久久久一区二区三区| 久久久久久久国产免费看| 精品国产福利久久久|