亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Unity3D中的最短旋轉(zhuǎn)研究

        2019-12-25 01:14:48李俊龍郭仁春姜檬王志淳
        無線互聯(lián)科技 2019年20期
        關(guān)鍵詞:軸角歐拉角剛體

        李俊龍 郭仁春 姜檬 王志淳

        摘? ?要:首先,文章介紹了剛體最短旋轉(zhuǎn)的概念,剛體從一個(gè)方位旋轉(zhuǎn)到另一個(gè)方位的過程中,可以有無限種方式,在這些方式中存在一種方式,繞某一軸旋轉(zhuǎn)一次就能到達(dá)指定方位,并且該角在﹣180°~180°之間,稱這樣的旋轉(zhuǎn)方式為最短旋轉(zhuǎn)。其次,給出最短旋轉(zhuǎn)的數(shù)學(xué)表達(dá)式,即兩個(gè)方位角的四元數(shù)之比。在Unity 3D中,表示剛體方位的參數(shù)分別是歐拉角和四元數(shù)。文章采用具體實(shí)例驗(yàn)證最短旋轉(zhuǎn)與四元數(shù)的關(guān)系,給出了尋找最短旋轉(zhuǎn)的解決方案。

        關(guān)鍵詞:Unity 3D;最短旋轉(zhuǎn);四元數(shù)

        在Unity 3D中,實(shí)現(xiàn)物體旋轉(zhuǎn)有多種方式,如旋轉(zhuǎn)矩陣、歐拉角和四元數(shù)等[1]。旋轉(zhuǎn)需要兩個(gè)基本參量軸和角,物體從一個(gè)方位旋轉(zhuǎn)到另一個(gè)方位可以采用多次改變軸和角的方式,依次旋轉(zhuǎn)。其中,有一種旋轉(zhuǎn)方式是只繞一個(gè)軸旋轉(zhuǎn)一次就能達(dá)到指定方位,且旋轉(zhuǎn)角度在﹣180°~180°之間,稱這樣的旋轉(zhuǎn)方式為最短旋轉(zhuǎn)。這個(gè)定義由于沒有其他文獻(xiàn)支持,因此本文為便于理解,采用最短旋轉(zhuǎn)的說法。

        任意指定兩個(gè)方位,要找出其中的最短旋轉(zhuǎn)并不是一件容易的事。本文將給出最短旋轉(zhuǎn)的數(shù)學(xué)描述以及在Unity 3D中實(shí)現(xiàn)最短旋轉(zhuǎn)的方法。

        1? ? 最短旋轉(zhuǎn)的數(shù)學(xué)描述

        剛體的運(yùn)動(dòng)包括平動(dòng)和轉(zhuǎn)動(dòng)。描述剛體的空間位置,用三維空間坐標(biāo)點(diǎn)(x,y,z)表示,在Unity 3D中有3個(gè)基本坐標(biāo)系,分別是世界坐標(biāo)系、慣性坐標(biāo)系與本地坐標(biāo)系。相應(yīng)的,描述剛體的旋轉(zhuǎn)狀態(tài),即方位,是本地坐標(biāo)系與慣性坐標(biāo)系所形成的角度變化,采用歐拉角(α,β,γ)來描述。由于本文不涉及平移,因此為方便討論,將慣性坐標(biāo)系和世界坐標(biāo)系重合。

        眾所周知,“兩點(diǎn)之間線段最短”,同樣兩個(gè)方位之間也存在類似的關(guān)系,即最短旋轉(zhuǎn),兩點(diǎn)之間的距離用兩點(diǎn)位置之差來描述。相應(yīng)的,兩個(gè)方位之間的最短旋轉(zhuǎn)用兩個(gè)方位的四元數(shù)之比來描述。

        如果方位a的四元數(shù)為q1,方位b的四元數(shù)為q2,剛體從方位a旋轉(zhuǎn)到方位b的最短旋轉(zhuǎn)的四元數(shù)為q,則q=q2÷q1,一般寫成q= q2×q1-1

        設(shè)四元數(shù)q的4個(gè)分量分別是(x,y,z,w),該四元數(shù)隱含了旋轉(zhuǎn)軸向量n和旋轉(zhuǎn)角θ,設(shè)軸向量n的3個(gè)分量為(nx,ny,nz)。一般將軸n和角θ寫成“軸角對(duì)”的形式,即(n, θ)=( nx, ny, nz, θ)。四元數(shù)q=(x, y, z, w) 與軸角對(duì)(n, θ)=( nx, ny, nz, θ)之間的關(guān)系為:

        在Unity 3D中,改變歐拉角和改變四元數(shù)是兩種基本的旋轉(zhuǎn)方式,Unity 3D提供了Lerp和Slerp兩種插值函數(shù),在兩個(gè)方位之間進(jìn)行采樣插值。對(duì)歐拉角的Lerp插值,很難實(shí)現(xiàn)最短旋轉(zhuǎn),而四元數(shù)Slerp函數(shù)插值則非常容易實(shí)現(xiàn)最短旋轉(zhuǎn),下面通過例子來進(jìn)行驗(yàn)證。

        2? ? 在Unity3D中改變歐拉角實(shí)現(xiàn)旋轉(zhuǎn)

        在Unity 3D中,制作一個(gè)空物體,命名為a,該物體位于世界坐標(biāo)系的原點(diǎn)位置,在其下面放置一個(gè)立方體Cube和一個(gè)小球Sphere,調(diào)整立方體和小球的大小和位置,如圖1所示,讓小球位于立方體的一個(gè)角點(diǎn)。

        將該段代碼拖拽到物體x上,將場(chǎng)景中的物體a和b拖放到代碼的公共變量卡槽a和b上,代碼中的Vector3.Lerp是系統(tǒng)提供的插值函數(shù),包括3個(gè)參數(shù):起始向量a的歐拉角、結(jié)束向量b的歐拉角、插值t在0~1的取值,運(yùn)行結(jié)果如圖4所示。

        從圖4可以看到,物體x上的小球畫出了一條奇怪的軌跡,說明用歐拉角插值不能實(shí)現(xiàn)最短旋轉(zhuǎn)。

        3? ? 在Unity3D中改變四元數(shù)實(shí)現(xiàn)最短旋轉(zhuǎn)

        代碼中q1和q2分別是a, b的四元數(shù),Slerp是在兩個(gè)四元數(shù)之間進(jìn)行插值,再次運(yùn)行,結(jié)果如圖5所示。通過觀察可以看出,物體x繞某一固定軸一次旋轉(zhuǎn)到了指定位置,實(shí)現(xiàn)了最短旋轉(zhuǎn)。

        在圖5中可以清楚地看出剛體繞軸n旋轉(zhuǎn)了θ角。這個(gè)旋轉(zhuǎn)過程用語言可以描述為:一個(gè)剛體從初始方位為a,其歐拉角為(-20,-30,9),旋轉(zhuǎn)到末方位b,歐拉角為(15,80,60),找到軸角對(duì)(n, θ)實(shí)現(xiàn)最短旋轉(zhuǎn)。方位a和b的四元數(shù)q1,q2可以通過各自的歐拉角求出,計(jì)算公式可參考蘇超凡等[2]的研究,手工計(jì)算結(jié)果如下:

        4? ? 結(jié)語

        仿照最短距離,本文給出了最短旋轉(zhuǎn)的概念并給出了最短旋轉(zhuǎn)的數(shù)學(xué)描述,即兩個(gè)方位的四元數(shù)的比值。在Unity 3D中,通過修改四元數(shù)很容易實(shí)現(xiàn)最短旋轉(zhuǎn),并能夠直觀地給出旋轉(zhuǎn)軸和角,對(duì)理解四元數(shù)在Unity 3D中的應(yīng)用具有重要作用。

        [參考文獻(xiàn)]

        [1]戈洪瑤,郭仁春.基于Unity 3D的歐拉角實(shí)現(xiàn)對(duì)物體旋轉(zhuǎn)的應(yīng)用[J].湖北農(nóng)機(jī)化,2019(13):119-121.

        [2]蘇超凡,郭仁春.Unity 3D中歐拉角與四元數(shù)關(guān)系的研究[J].計(jì)算機(jī)科學(xué)與應(yīng)用,2019(5):890-895.

        猜你喜歡
        軸角歐拉角剛體
        差值法巧求剛體轉(zhuǎn)動(dòng)慣量
        基于FPGA的同步機(jī)軸角編碼器
        車載冷發(fā)射系統(tǒng)多剛體動(dòng)力學(xué)快速仿真研究
        從CATIA位置矩陣求解歐拉角的計(jì)算方法分析
        科技視界(2017年6期)2017-07-01 08:33:34
        一種基于EGI和標(biāo)準(zhǔn)人臉模板的三維人臉點(diǎn)云拼合算法
        非直視紫外光非共面通信系統(tǒng)性能分析
        剛體定點(diǎn)轉(zhuǎn)動(dòng)的瞬軸、極面動(dòng)態(tài)演示教具
        電磁耦合式位移傳感器的直接數(shù)字解調(diào)電路設(shè)計(jì)
        大姿態(tài)角入水時(shí)的魚雷半實(shí)物仿真方法研究
        閉環(huán)軸角解算誤差分析及精度補(bǔ)償方法
        成人动漫久久| 国产成人精品2021| 饥渴的熟妇张开腿呻吟视频| 四虎欧美国产精品| 国产av一区二区三区国产福利 | 亚洲第一av导航av尤物| 热久久网站| 国产av一区二区内射| 强d乱码中文字幕熟女免费| 亚洲色婷婷一区二区三区| 欧美亚洲国产另类在线观看| 亚洲国产欲色有一二欲色| 少妇连续高潮爽到抽搐| 亚洲国色天香卡2卡3卡4| 无码日韩AⅤ一区二区三区| 色老板在线免费观看视频日麻批| 色中文字幕在线观看视频| 无码日韩精品一区二区三区免费| 免费无码又爽又刺激高潮的视频网站| av一区二区三区高清在线看| 久久无码高潮喷水抽搐| 7777奇米四色成人眼影| 国产精品一区二区三区精品| 日韩av中文字幕波多野九色| 国产做无码视频在线观看| 国产亚洲av手机在线观看| 亚洲AV无码日韩一区二区乱| 青青草视频是针对华人| 亚洲精品无码av人在线播放| 四虎精品免费永久在线| 精品色老头老太国产精品| 伊人久久精品无码av一区| 丰满岳乱妇久久久| 日韩久久无码免费看A| 日本中文一区二区在线| 少妇饥渴偷公乱a级无码| 久久精品免视看国产明星| 日韩精品国产精品亚洲毛片| 777米奇色狠狠俺去啦| 无码专区中文字幕DVD| 白色白色在线视频播放平台|