摘 要:为了加快舰载海上航行的惯性导航仿真,论述一种基于MFC和Vega开发环境开发虚拟现实仿真系统的方法,并且详细阐述开发过程,用于开发舰载海上航行仿真系统,通过对陀螺仪和加速度数学模型的建立,完成了惯性器件仿真和舰载航行仿真系统的研究。结果表明该系统能使设计人员很直观地观察舰载的航行,航行姿态,同时,采用面向对象的设计方法,遵循软件的开发规范,验证了平台的可行性和有效性,有利于舰载惯性导航仿真的设计,同时对虚拟现实的开发也有很好的借鉴作用。
关键词:虚拟现实;系统仿真;舰载;Vega;MFC;惯性器件
虚拟现实(Virtual Reality,VR)是在信息科学的飞速发展中诞生的,其主要特点是将虚拟现实技术和系统仿真技术完美的结合在一起。其核心是由一些三维的交互式计算机生成的环境组成。这些环境可以是真实的,也可以是想象的世界模型,其目的是通过人工合成的经历表示信息。有了虚拟现实技术,复杂或抽象系统的概念形成可以通过将系统的各子部件以某种方式表示成具有确切含义的符号而成为可能,从而有助于人们理解和认识所研究系统的本质和动态规律。
1 虚拟航行仿真系统开发环境
随着虚拟现实仿真技术的不断发展,虚拟现实仿真开发平台也得到了飞速的发展。尤其是Multigen—Paradigm公司的实时场景管理和驱动软件Vega,由于它在实时视景仿真、声音仿真、虚拟现实及其他可视化领域的广泛应用,成为现在最流行的虚拟环境开发仿真平台。这里研究的舰载海上仿真系统是基于MFC和Vega开发环境基础上开发的。
Vega是在SDI Performer软件的基础之上发展起来的,为Performer增加了许多重要特性。它将易用的点击式图形界面开发环境LynX和高级仿真功能巧妙的结合起来,使用户以简单的操作迅速的创建,编辑和运行复杂的仿真应用程序。
Vega是一个类库,每个Vega类都是一个完整的控制,该控制结构包含用于处理和执行特征等各项内容,它以C语言的API形式出现,为软件人员提供最大限度的软件控制的灵活性。
2 基于Windows平台上Vega应用程序的基本框架
Vega的函数库都是基于多线程动态链接库(Mu—tithread DLL)版本的C运行时库(Run Time Library),直接用Windows API进行Vega应用程序的开发是一个非常繁琐的过程,很多基础工作(比如窗口的创建,菜单的创建等)都需要自己动手写,大部分的精力被耗费在应用程序框架的搭建和应用程序界面的设计上,所以利用可视化的应用程序开发工具(Microsoft VisuaI C++6.0)编写基于MFC的Vega应用程序是非常有必要的。Vega应用程序编程接口自带了必须的头文件和链接库,故首先配置Microsoft Vistlal C++6.O的环境。步骤如下:
(1)添加相关路径,打开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应用程序的基本框架和实现
典型Vega应用程序的框架如图1所示。