基于MFC和Vega的導航仿真系統(tǒng)
摘 要:為了加快艦載海上航行的慣性導航仿真,論述一種基于MFC和Vega開發(fā)環(huán)境開發(fā)虛擬現(xiàn)實仿真系統(tǒng)的方法,并且詳細闡述開發(fā)過程,用于開發(fā)艦載海上航行仿真系統(tǒng),通過對陀螺儀和加速度數(shù)學模型的建立,完成了慣性器件仿真和艦載航行仿真系統(tǒng)的研究。結(jié)果表明該系統(tǒng)能使設計人員很直觀地觀察艦載的航行,航行姿態(tài),同時,采用面向?qū)ο蟮脑O計方法,遵循軟件的開發(fā)規(guī)范,驗證了平臺的可行性和有效性,有利于艦載慣性導航仿真的設計,同時對虛擬現(xiàn)實的開發(fā)也有很好的借鑒作用。
關(guān)鍵詞:虛擬現(xiàn)實;系統(tǒng)仿真;艦載;Vega;MFC;慣性器件
虛擬現(xiàn)實(Virtual Reality,VR)是在信息科學的飛速發(fā)展中誕生的,其主要特點是將虛擬現(xiàn)實技術(shù)和系統(tǒng)仿真技術(shù)完美的結(jié)合在一起。其核心是由一些三維的交互式計算機生成的環(huán)境組成。這些環(huán)境可以是真實的,也可以是想象的世界模型,其目的是通過人工合成的經(jīng)歷表示信息。有了虛擬現(xiàn)實技術(shù),復雜或抽象系統(tǒng)的概念形成可以通過將系統(tǒng)的各子部件以某種方式表示成具有確切含義的符號而成為可能,從而有助于人們理解和認識所研究系統(tǒng)的本質(zhì)和動態(tài)規(guī)律。
1 虛擬航行仿真系統(tǒng)開發(fā)環(huán)境
隨著虛擬現(xiàn)實仿真技術(shù)的不斷發(fā)展,虛擬現(xiàn)實仿真開發(fā)平臺也得到了飛速的發(fā)展。尤其是Multigen―Paradigm公司的實時場景管理和驅(qū)動軟件Vega,由于它在實時視景仿真、聲音仿真、虛擬現(xiàn)實及其他可視化領(lǐng)域的廣泛應用,成為現(xiàn)在最流行的虛擬環(huán)境開發(fā)仿真平臺。這里研究的艦載海上仿真系統(tǒng)是基于MFC和Vega開發(fā)環(huán)境基礎(chǔ)上開發(fā)的。
Vega是在SDI Performer軟件的基礎(chǔ)之上發(fā)展起來的,為Performer增加了許多重要特性。它將易用的點擊式圖形界面開發(fā)環(huán)境LynX和高級仿真功能巧妙的結(jié)合起來,使用戶以簡單的操作迅速的創(chuàng)建,編輯和運行復雜的仿真應用程序。
Vega是一個類庫,每個Vega類都是一個完整的控制,該控制結(jié)構(gòu)包含用于處理和執(zhí)行特征等各項內(nèi)容,它以C語言的API形式出現(xiàn),為軟件人員提供最大限度的軟件控制的靈活性。
2 基于Windows平臺上Vega應用程序的基本框架
Vega的函數(shù)庫都是基于多線程動態(tài)鏈接庫(Mu―tithread DLL)版本的C運行時庫(Run Time Library),直接用Windows API進行Vega應用程序的開發(fā)是一個非常繁瑣的過程,很多基礎(chǔ)工作(比如窗口的創(chuàng)建,菜單的創(chuàng)建等)都需要自己動手寫,大部分的精力被耗費在應用程序框架的搭建和應用程序界面的設計上,所以利用可視化的應用程序開發(fā)工具(Microsoft VisuaI C++6.0)編寫基于MFC的Vega應用程序是非常有必要的。Vega應用程序編程接口自帶了必須的頭文件和鏈接庫,故首先配置Microsoft Vistlal C++6.O的環(huán)境。步驟如下:
(1)添加相關(guān)路徑,打開Microsoft Visual C++6.0界面,單擊“Tools”菜單條下的“Options”選項,單擊“Directories”將Vega安裝目錄下的“Inelude”目錄添加進來,單擊“Show directories for”下拉選項,選擇“Library files”項把Vega安裝目錄下的“Include”目錄添加進來。
(2)更改編譯選項,單擊“Project”菜單下的“Set―tings…”選項,將“PrOject Options”中的“MLd”,改為“MD”。
2.1 Vega應用程序的基本框架和實現(xiàn)
典型Vega應用程序的框架如圖1所示。
評論