freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

飛行模擬器視景仿真畢設(shè)論文-資料下載頁

2024-11-05 12:17本頁面

【導(dǎo)讀】模擬器進(jìn)行飛行模擬訓(xùn)練,以有效地減少飛行訓(xùn)練的成本,提高飛行訓(xùn)練的效果。行各種飛行操作設(shè)備,順利完成各種飛行任務(wù)操作以達(dá)到培訓(xùn)目的。功能,提供多種飛行訓(xùn)練場(chǎng)景,有助于飛行技術(shù)的提高和飛行體驗(yàn)。提供良好的飛行仿真環(huán)境。飛行條件,提供多種飛行場(chǎng)景方案,但同時(shí)也有控制功能較少,場(chǎng)景較為單一的缺點(diǎn),待后續(xù)技術(shù)條件成熟時(shí)進(jìn)一步的完善與提高。KeyWords:VisualSimulation;Creator;VegaPrime;Virtual

  

【正文】 t,在 Additional library path 中輸入: $(MPI_LOCATE_VEGA_PRIME_LIB)。 3) 編譯源程序,連接成可執(zhí)行文件。 基于 Vega Prime 的應(yīng)用程 序結(jié)構(gòu) Vega Prime 主程序流程包括初始化、定義、配置、幀循環(huán)、關(guān)閉五個(gè)部分。這五部分的主要作用如下: 1) 初始化 (Initialization)—— 初始化內(nèi)核、分配內(nèi)存、初始化場(chǎng)景和渲染庫等。 2) 定義 (Definition)—— 加載已經(jīng)配置好的 ACF 文件,系統(tǒng)在初始化時(shí)初始化了ACF 文件的剝析程序,在這里 ACF 文件能自動(dòng)轉(zhuǎn)為 C++程序。 3) 配置 (Configuration)—— 配置成 ACF 中分解而來,并將不同的類關(guān)聯(lián)起來。 4) 幀循環(huán) —— 構(gòu)成整個(gè)應(yīng)用程序的刷新與循 環(huán)。 5) 關(guān)閉 —— 清除場(chǎng)景中的對(duì)象,內(nèi)存釋放,結(jié)束整個(gè)程序。 系統(tǒng)初始化配置 系統(tǒng)的初始化主要是在 Lynx Prime 圖形用戶界面配置工具完成的。系統(tǒng)初始化包括系統(tǒng)運(yùn)行信息設(shè)置、模型初始化配置等。 系統(tǒng)運(yùn)行信息設(shè)置包括設(shè)置幀速率、窗口大小、通道大小等。對(duì)于這部分信息一般都采用默認(rèn)值設(shè)置。 模型的初始化配置是將第三章建立的模型導(dǎo)入到 Lynx Prime 中,并設(shè)置各個(gè)模型的初始位置。 這部分配置的是系統(tǒng)初始運(yùn)行的場(chǎng)景,在后續(xù)研究中還會(huì)不斷的對(duì)此場(chǎng)景進(jìn)行修改并加入新的內(nèi)容,如粒子系統(tǒng)、碰撞檢測(cè)等。 配 置好的系統(tǒng)被保存為 ACF 文件,在程序中通過函數(shù) define(conchar *configFile)將 ACF 文件加載到系統(tǒng)中,系統(tǒng)會(huì)自動(dòng)將此文件翻譯成 C++的代碼。通過此方法可以明顯的減少了系統(tǒng)的編碼的工作量。這一特色是 Vega Prime 與其他視景仿真平臺(tái)的最大區(qū)別之一。我們通過用文本文檔直接打開 ACF 配置文件,可以發(fā)現(xiàn) ACF 文件實(shí)際上是一 XML 程序文件,系統(tǒng)在加載時(shí)自動(dòng)將 XML 程序翻譯成 C++程序。當(dāng)然開發(fā)人員可以自己開發(fā)配置文件的代碼而不需借助 ACF 的配置文件,很明顯這是一個(gè)不可取的方法。 視景場(chǎng)景的 生成 系統(tǒng)在 Lynx Prime 配置完成生成 ACF 文件后,就將其在三維場(chǎng)景中顯示出來。 但是,此時(shí)場(chǎng)景中的各個(gè)模型都是靜態(tài)的三維模型,用戶無法與其進(jìn)行交互,更不會(huì)有身臨其境的感覺,所以在三維視景模型完成之后還要完成三維視景仿真環(huán)境的設(shè)計(jì)工作,通過視景仿真環(huán)境完成場(chǎng)景的各種感官效果以及用戶與場(chǎng)景的交互。 三維視景仿真環(huán)境包括以下的五大部分: 1 飛機(jī)飛行驅(qū)動(dòng)模塊; 2 視點(diǎn)模塊; 3平顯模塊; 4 碰撞檢測(cè)模塊; 5 仿真氣象模塊。通過這五個(gè)部分組成的仿真環(huán)境可以給用戶一個(gè)具有較強(qiáng)真實(shí)感的可操作的三維虛擬場(chǎng)景。 飛機(jī)飛行驅(qū)動(dòng)模 塊 飛機(jī)飛行的實(shí)現(xiàn)主要是控制飛機(jī)模型在虛擬場(chǎng)景中的六自由度運(yùn)動(dòng)。其主要實(shí)現(xiàn)函數(shù)是: setTranslate (double x,double y,double z,bool),賦予對(duì)象分別沿 XYZ 軸平移量,bool值決定輸入的值是替換當(dāng)前對(duì)象還是累加到當(dāng)前對(duì)象上。 setRotate (double h,double p,double r,bool),賦予對(duì)象分別繞 XYZ軸的旋轉(zhuǎn)量, bool值決定輸入的值是替換當(dāng)前對(duì)象還是累加到當(dāng)前對(duì)象上。 但要注意的是 Vega Prime 中的規(guī)定的沿軸平移量的正負(fù)和繞 軸轉(zhuǎn)動(dòng)時(shí)的角 度正負(fù)是與實(shí)際中飛行數(shù)據(jù)的正負(fù)有差別的。圖 為 Vega Prime 的坐標(biāo)系統(tǒng)。 圖 Vega Prime 的坐標(biāo)系統(tǒng) Vega Prime 中默認(rèn)的視點(diǎn)是沿著 Y 軸正方向的,將飛機(jī)三維模型加到虛擬場(chǎng)景中,機(jī)頭方向是從 Y 到 +Y。所以無人機(jī)的橫向偏移是沿 Y 軸偏移,側(cè)向偏移是沿著X 軸方向,縱向偏移是沿著 Z 軸方向。在實(shí)際數(shù)據(jù)中,飛機(jī)的位置是由經(jīng)緯度給出的,經(jīng)度是越向西越大,以起飛點(diǎn)為原點(diǎn)解算出來的側(cè)向偏移是右為正,這是與 Vega Prime 規(guī)定的坐標(biāo)相反,所以需要在側(cè)向偏移上加負(fù)號(hào) ,同樣,需要在偏航角上加入負(fù)號(hào)。 同樣的 Vega Prime 提供了各種運(yùn)動(dòng)模型。運(yùn)動(dòng)模型就是一種位置策略,使我們用標(biāo)準(zhǔn)輸入能實(shí)現(xiàn)模型的動(dòng)態(tài)定位。 Vega Prime 用 vpMotion 定義抽象的運(yùn)動(dòng)模型。運(yùn)動(dòng)模型可以應(yīng)用在 observer 上,也可以應(yīng)用在 object 上。 Vega Prime 中定義了七種運(yùn)動(dòng)模型,分別是: vpMotionDrive, vpMotionFly, vpMotionUFO, vpMotionWalk,vpMotionWrap, vpMotionGame 和 vpMotionSpin。 VpMotionDrive 是一個(gè) drive 模型,用戶可以控制其運(yùn)動(dòng)速度和轉(zhuǎn)向; vpMotionFly 是一個(gè)簡單的飛行模擬模型,這個(gè)模型的效果和空氣動(dòng)力學(xué)的響應(yīng)、推動(dòng)力以及飛機(jī)模型的質(zhì)量有關(guān),這三個(gè)參數(shù)是可以在 .acf 文件或者程序中設(shè)置的。飛行模型能夠模擬質(zhì)點(diǎn)六個(gè)自由度的變化;vpMotionUFO 是一個(gè)無重力的運(yùn)動(dòng)模型,它使質(zhì)點(diǎn)能夠高速運(yùn)動(dòng),并能夠在任意位置盤旋; vpMotionWalk 模擬基本的步行運(yùn)動(dòng); vpMotionGame 模擬第一人稱射擊游戲中主角的運(yùn)動(dòng)方式; vpMotionSpin 模擬站在一個(gè)球體表面隨球體轉(zhuǎn)動(dòng) 的運(yùn)動(dòng)模型。每個(gè)運(yùn)動(dòng)模型運(yùn)動(dòng)方式的具體實(shí)現(xiàn)方法(前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn))是封裝起來的,用戶看不見。用戶只能通過 API 修改速度、轉(zhuǎn)向等等的漸增值。我們可以選用其中的飛 行模式進(jìn)行簡單的飛行仿真。 視點(diǎn)模塊 視點(diǎn)是亦相當(dāng)于人的眼睛,是在系統(tǒng)中觀察飛機(jī)飛行的位置。飛機(jī)在飛行過程中,最值得關(guān)注的是幾個(gè)舵面的偏轉(zhuǎn)情況和俯仰角、滾轉(zhuǎn)角(其它的關(guān)注對(duì)象目前并不能在虛擬場(chǎng)景中表示出來,如發(fā)動(dòng)機(jī)推力)。為了觀察這幾個(gè)對(duì)象,可以通過移動(dòng)視點(diǎn)來實(shí)現(xiàn),但這樣并不能保證能同時(shí)觀察到這幾個(gè)對(duì)象,對(duì)于想同時(shí)觀察到這幾個(gè)對(duì)象來說,則需要提供 多個(gè)窗口來觀察。為此,系統(tǒng)中定義了兩種觀察方法,多通道和單通道。同樣,視點(diǎn)可以實(shí)時(shí)的跟隨著飛機(jī),也可以在確定的一個(gè)位置觀察飛機(jī)的飛行,這樣系統(tǒng)也可以將視點(diǎn)分為定點(diǎn)視點(diǎn)和跟隨視點(diǎn),下面就這些的區(qū)別和實(shí)現(xiàn)加以詳細(xì)說明。 Vega Prime 中的窗口是一顯示窗口,它定義了基本的消息處理機(jī)制,也提供了方法來配置幀緩沖區(qū)和對(duì)鍵盤、鼠標(biāo)等輸入的處理,而通道則控制場(chǎng)景的繪制區(qū)域。一個(gè) Vega Prime 程序中允許有多個(gè)窗口,一個(gè)窗口中允許有多個(gè)通道,但對(duì)于一般的視景仿真來說,一般只需定義一個(gè)窗 Lynx Prime 中可以設(shè)置窗口的位置和大小,也可以設(shè)置通道在窗口中的位置和大小。圖 說明了顯示器窗口、窗口和通道三者之間的關(guān)系。 圖 顯示器窗口、窗口和通道關(guān)系 定點(diǎn)是指在某時(shí)刻得到此刻飛機(jī)的位置后,將此點(diǎn)設(shè)為視點(diǎn)觀察位置。跟隨視點(diǎn)是將視點(diǎn)設(shè)置在飛機(jī)旁的某個(gè)位置,時(shí)時(shí)的跟隨著飛機(jī)。定點(diǎn)觀察可以用于飛機(jī)起飛 或著陸時(shí)在跑道的兩側(cè)觀測(cè)飛機(jī)的飛行過程,跟隨觀察則用于在飛行過程中對(duì)飛機(jī)狀態(tài)的觀測(cè)。 跟隨視點(diǎn)的實(shí)現(xiàn)可以在 Vega Prime 的幀循環(huán)部分實(shí)時(shí)得到飛機(jī)的位置,并將飛機(jī)的位置經(jīng)過簡單 處理后設(shè)置為視點(diǎn)的位置,但這樣實(shí)時(shí)的解算位置,會(huì)增加系統(tǒng)的損耗,為此可利用 Vega Prime 中的 VpTransform 類定義一局部坐標(biāo)系,將視點(diǎn)設(shè)置為這一局部坐標(biāo)系的原點(diǎn),并將 VpTransform 的父節(jié)點(diǎn)設(shè)為飛機(jī),這樣使飛機(jī)與這個(gè)局部坐標(biāo)系關(guān)聯(lián)起來,默認(rèn)局部坐標(biāo)系的原點(diǎn)在飛機(jī)的中心處,這樣只需更改局部坐標(biāo)系的原點(diǎn)位置就能實(shí)現(xiàn)跟隨的效果,同樣,只需調(diào)整局部坐標(biāo)系的原點(diǎn)位置就可以改變視點(diǎn)的位置。 囿于時(shí)間與技術(shù)的原因,本系統(tǒng)只定義了兩個(gè)視角觀察模式: 視角。機(jī)后視角視點(diǎn)位于飛機(jī)的( 0, 40,8)處。 碰撞檢測(cè)模塊 虛擬視景中,由于用戶的交互和物體的運(yùn)動(dòng),物體間經(jīng)常發(fā)生碰撞,為保證視景的真實(shí)感,需要及時(shí)檢測(cè)到這些碰撞,并做出相應(yīng)的反應(yīng),否則物體間會(huì)發(fā)生穿透現(xiàn)象,破壞虛擬場(chǎng)景的真實(shí)性和用戶的沉浸感。具體到飛機(jī)視景系統(tǒng),飛機(jī)在起飛著陸時(shí)與跑道之間是有接觸的,在飛行過程中是否與地形發(fā)生了碰撞,這些都是碰撞檢測(cè)的體現(xiàn),所以在虛擬仿真系統(tǒng)中的碰撞檢測(cè)技術(shù)對(duì)虛擬場(chǎng)景的真實(shí)性是至關(guān)重要的。 碰撞檢測(cè)是構(gòu)造可視化系統(tǒng)的不可缺少的一個(gè)重要部分,它的來源是基于現(xiàn)實(shí)中的一個(gè)普遍存在的事實(shí):兩個(gè) 不可穿透的物體不可能共享相同的區(qū)域,與碰撞檢測(cè)相關(guān)的令一個(gè)問題是碰撞響應(yīng),它們倆構(gòu)成了碰撞問題的主要方面,兩者的區(qū)別在于碰撞檢測(cè)的目標(biāo)是發(fā)現(xiàn)碰撞并報(bào)告,碰撞響應(yīng)是在碰撞發(fā)生后,根據(jù)碰撞點(diǎn)和其它參數(shù)促使發(fā)生碰撞的對(duì)象做出正確的動(dòng)作,以反應(yīng)真實(shí)的動(dòng)態(tài)效果。 目前實(shí)現(xiàn)碰撞檢測(cè)的算法多種多樣,但最常見的還是采用包圍盒的方法,所謂包圍盒是包圍著物體對(duì)象的盒子,它的各線段與坐標(biāo)軸平行,這樣包圍盒就是能包 圍虛擬物體的最小長方體。圖 就是設(shè)置了包圍盒的虛擬物體,包圍盒最大好處是可以實(shí)現(xiàn)快速碰撞檢測(cè),但它的檢測(cè)是非常粗略的,當(dāng)兩個(gè)物體的包圍盒相交時(shí)并不能保證這兩個(gè)物體一定相交。 圖 帶有包圍盒的物體 要實(shí)現(xiàn)精確的碰撞檢測(cè)則需要精確碰撞檢測(cè),即采用包圍盒表示虛擬物體邊界的同時(shí),還采用多個(gè)多邊形來表示包圍盒,這樣虛擬物體邊界就能用一組多邊形表示。當(dāng)判斷物體是否相交時(shí),只需判斷兩個(gè)多邊形集合是否相交。 Prime 碰撞檢測(cè)算法 Vega Prime 作為一專業(yè)的視景仿真平臺(tái),它封裝了碰撞檢測(cè) 算法,用戶只需根據(jù)提供的接口選擇合適的碰撞算法,根據(jù)實(shí)際的碰撞反應(yīng)為虛擬環(huán)境加入碰撞反應(yīng)就能完成碰撞問題,但用戶也可以根據(jù)實(shí)際情況來自定義碰撞檢測(cè)算法。 Vega Prime 一改采用包圍盒或多邊形的碰撞算法,部分采用了一條直線來檢測(cè)碰撞。 Vega Prime 定義了七種碰撞檢測(cè)模式: Tripod、 Bump、 Los、 HAT、 XYZPR、 ZPR 和 Z。 Tripod 碰撞采用了三條線段構(gòu)成一三角形檢測(cè)碰撞,其主要用在不平坦的地面上行走,保證行走不會(huì)沉下去或漂浮起來。 Bump 碰撞是這七種碰撞算法中最耗系統(tǒng)資源 的,它定義了六條線段來檢測(cè)碰撞, 剩下的五種碰撞檢測(cè)都是定義了一條碰撞檢測(cè)線來檢測(cè)碰撞。 Los 是定義了沿著視點(diǎn)方向的一條線段。 HAT、 XYZPR、 ZPR 和 Z 都是定義了條沿著 Z 軸方向的線段。它們之間略有不 同, HAT 是求距離地面的高度, XYZPR 是在 Tripod 基礎(chǔ)上還求得碰撞的,碰撞中心的 x、 y、 z、 p、 r 值, ZPR 是在 Tripod 基礎(chǔ)上還求得碰撞的碰撞中心的 x、 y、 z值。Z 是用于求地面的海拔高度。 用戶可根據(jù)自己的需要選擇合適的碰撞檢測(cè)算法。 除了上述的七種方法外, Vega Prime 還支持自定義的碰 撞檢測(cè)方法。可以在vpIsect 類中繼承一新類,在新類中通過 push_back_segment()函數(shù)加入所需要的檢測(cè)線條數(shù),通過 setSegment()設(shè)置檢測(cè)線的位置。系統(tǒng)屏蔽了其它的實(shí)現(xiàn),會(huì)自動(dòng)將設(shè)置好的做為碰撞檢測(cè)線。 根據(jù)上面的七種碰撞算法介紹,可以為飛機(jī)的視景仿真選擇不同的碰撞檢測(cè)算法。在起飛著陸階段,檢測(cè)的是與跑道和地形的碰撞,這可以選擇 Z 碰撞算法。飛機(jī)在飛行過程中,主要是判斷在飛行軌跡上與地形的碰撞,可以 LOS 碰撞算法檢測(cè)無人機(jī)與地形的碰撞。 Vega Prime 中并沒有像游戲中那樣將碰撞響 應(yīng)也封裝進(jìn)去,它只是提供了碰撞響應(yīng)的接口,具體的實(shí)現(xiàn)將要集合現(xiàn)實(shí)中的實(shí)際效果編寫。在編寫具體效果時(shí),比如無人機(jī)的爆炸效果,爆炸時(shí)要生成煙、火焰等。這些都是借助一種叫粒子系統(tǒng)的來實(shí)現(xiàn),所以在研究無人機(jī)視景系統(tǒng)的碰撞前有必要對(duì)粒子系統(tǒng)做一個(gè)簡單介紹。 1983 年, Reeves 首次突出了粒子系統(tǒng)。所謂的粒子系統(tǒng)是使用大量的簡單的體素來構(gòu)造復(fù)雜的物體,它為火焰、水、雪、雨以及尾焰、爆炸、碰撞及毀傷提供了強(qiáng)有力的技術(shù)手段。每一個(gè)粒子系統(tǒng)都有一組屬性如位置、速度、顏色和生命期。一個(gè)粒子系統(tǒng)的產(chǎn)生主要包括:粒子源產(chǎn)生新粒 子、更新粒子屬性、刪除死粒子、繪制粒子。粒子系統(tǒng)的主要優(yōu)點(diǎn)有: 1) 簡單體素和復(fù)雜物體行為有機(jī)結(jié)合。例如,利用粒子系統(tǒng)可以很容易的生成火焰。 2) 易于實(shí)現(xiàn)。只要提供給粒子屬性的隨機(jī)過程一些參數(shù)即可定義一個(gè)粒子系統(tǒng)。 3) 粒子簡單。易于顯示 而且顯示效率較高。 主要缺點(diǎn)有: 1)每一時(shí)間步均需要計(jì)算粒子的動(dòng)態(tài)屬性,增加了系統(tǒng)的開銷。 2)粒子的幾何特性過于簡單,可以構(gòu)造的物體范圍有限。 在三維視景系統(tǒng)中,對(duì)視覺效果的要求不僅僅停留在簡單表達(dá)飛行物體的運(yùn)動(dòng)狀態(tài)上,而且要求包括尾焰、爆炸、碰撞及毀傷效 果的形象表達(dá)。這些需要借助粒子系統(tǒng)的特殊效果來解決 Vega Prime 粒子系統(tǒng)模塊內(nèi)置了大量的可直接使用的特殊效果,如三維煙、旋轉(zhuǎn)的螺旋槳、光點(diǎn)跟蹤、火、火焰、爆炸、噴口閃光、歲片、高射炮火、導(dǎo)彈軌跡、水花等通過粒子動(dòng)畫編輯器或 API 定義,創(chuàng)建特殊效果。通過定義選定的粒子系統(tǒng)的大小、方位、開始時(shí)間和持續(xù)時(shí)間,將其附著到運(yùn)動(dòng)體或場(chǎng)景里,實(shí)時(shí)控制其相關(guān)的視覺屬性。 仿真氣象模塊 飛機(jī)能在多種天氣環(huán)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1