Vega软件中利用Lynx进行二次开发

时间:2024-03-04 点赞:44610 浏览:86345 作者原创标记本站原创

本文是一篇环境论文范文,关于环境硕士毕业论文,关于Vega软件中利用Lynx进行二次开发相关大学毕业论文范文。适合环境及文件及模型方面的的大学硕士和本科毕业论文以及环境相关开题报告范文和职称论文写作参考文献资料下载。

摘 要 :本文分析了Vega 开发环境的主要特点及Lynx各个模块的功能,重点讨论了在Vega 环境下利用Lynx开发虚拟现实应用程序的主要过程,从而完成虚拟仿真软件的开发.

关 键 词 :Vega;Lynx;应用程序接口

中图分类号:TP391.9 文献标识码:A

1.引言

目前在视景仿真领域用于视景场景管理的软件种类复杂,比较流行的有MultiGen Vega、OpenS、Vtree、WTK、OpenInvetor等.每种软件都有各自不同的特点,各个公司也有自己不同的营销策略.其中Vega作为当前实时视景仿真领域的主流高层开发平台,是一种高性能的场景管理软件,用于实时视景仿真、虚拟现实、科学计算可视化等.Vega具有很好的图形环境界面,丰富的应用程序接口API和实用函数库以及大量功能模块,可以为复杂的应用方便快捷地建立场景模型数据的驱动.

2.Vega软件简介

Vega是MultiGen-Paradigm公司推出的实时视景仿真软件环境,主要包括两个方面:一是可视化的图形编程环境Lynx;二是完整的C语言应用程序接口API.Lynx是点击式图形环境,只需鼠标点击就可以驱动图形,可以快速、容易地改变应用性能、显示通道、多CPU资源分配、视点、特殊效果、运行时间、系统配置、模型和数据库等等,而这些都不涉及源码.它能够使用户在极短的时间内开发出完整的实时仿真应用.它将最后的仿真应用程序存储为ADF(Application Definition File)格式.通过C语言接口来实现对视景仿真应用进行软件控制,使用户实现更灵活的视景仿真系统.所有的Vega应用程序接口包括头文件、相关类及函数命名都以Vg开头.每一个Vega类是一个完整的控制结构,可以随意地设置和改变模型的属性.

LynX提供了很多功能模块,大大提高了仿真对象模型构造效率.借助LynX,只需修改某些参数,不用编写任何代码或进行编译处理,就可以构造出仿真对象模型.在仿真对象模型中,可以指定可见对象、操纵方式、运动方式、视点与操纵对象间的关系、显示通道、光照环境、云雾、运动对象与其他对象间交叉关系、声音及触发方式等.Lynx编程环境的具体作用为:


(1) 图形用户界面软件(运行Lynx软件,显示界面);

(2)以图形界面的形式,供用户设置环境、操作参数等;

(3) 定义、生成和预览Vega应用程序;

(4) 参数设置结果生成、存储在ADF文件.

3.利用Lynx编程环境进行二次开发

我们利用Lynx编程环境进行二次开发时,首先要用Lynx编程环境建立一个最简单的ADF文件.由于它的各类参数已自动设置(缺省值),各类之间的关联已自动建立.我们只需要编程实现对少量特定参数的设置或修改,就可以实现特定的目标.

关于Lynx编程环境需要注意的是:

(1)Lynx编程环境首先用缺省值为每一个类设置参数;

(2)Lynx编程环境自动建立各类之间的关联关系;

(3)用户使用Lynx编程环境实际上是对缺省值进行修改,以实现特定的目标.

关于Vega类需要注意的是:

(1)类内一些参数是必设项,必须设置;

(2)类与类之间存在着关联,必须正确建立这些关联关系;

(3)二次开发编程必须用语句实现每一种关联关系.

利用Lynx编程环境建立ADF文件,并用ADF文件设置系统,可以使我们将精力集中在特定的问题上,大大减少编程工作量.

用Lynx建立一个ADF文件,我们需要注意:三维模型文件是以Object的形式调入的,经历了文件到数据集(DS),最后投入场景(Scenes)的过程;Observer与Motion关联在一起,通过对Motion的控制实现对Observer的运动控制.通过以上关联,我们设定需要的参数,许多的选项可以采用默认选项.完成后保存的ADF文件,我们可以用“记事本”打开该文件,显示其内容及存储数据格式.

Vega有三种应用程序模型:

(1)经典模型,主程序为main();

(2)标准的Windows应用程序,主程序为WinMain();

(3)基于MFC的Windows应用程序.

其应用程序模式如下:

vgInitSys(),//初始化系统

vgDefineSys( "myapp.adf" ),//定义系统

vgConfigSys(), //设置系统

while( 1 ) {//实时循环体

vgSyncFrame(),//循环同步控制

vgFrame(),//调用内部函数

}

应用程序前半部分设置系统;循环体是实现场景动画浏览的程序部分.一般在循环体前设置各个类的参数,根据需要少量参数可在循环体内设置.

以上程序编译运行后就可以对myapp.adf文件定义的场景进行漫游.如果添加了用户代码,则可以根据代码控制场景的变化.之所以这么几条语句就完成了一个模拟场景漫游的编程,完全是由于Lynx 程序定义的ADF文件完成了大量的程序初始化工作,才使得Vega 编程变得如此简单.

如果掌握了Vega 各个模块类及其函数的功能与使用方法,用户就可以根据具体任务的需求在用户代码区添加自己的代码,完成独特的虚拟仿真软件的开发.

――――――――――

作者简介

刘世彬(1977-),男(汉族),河北邯郸,沈阳炮兵学院,讲师,研究方向:作战模拟与系统仿真.

刘兴彦(1966-)男(汉族),吉林白城,沈阳炮兵学院,副教授,研究方向:自行突击炮作战训练仿真模拟.

相关论文

利用软件有效提升计算机运行速率

该文是人工智能专业计算机论文范文,主要论述了关于计算机方面本科毕业论文,与利用软件有效提升计算机运行速率相关论文范文参考文献,适合。

利用统计软件spss进行试卷质量

本文是一篇统计分析论文范文,统计分析类有关毕业论文的格式,关于利用统计软件spss进行试卷质量相关毕业论文题目范文。适合统计分析及自然科。

常用软件开发工具有效利用

本文是一篇软件开发论文范文,关于软件开发大学毕业论文,关于常用软件开发工具有效利用相关毕业论文模板范文。适合软件开发及计算机及软件工。

利用EXCEL开发电大考务信息管理软件

本文是一篇管理系统论文范文,管理系统有关毕业论文格式,关于利用EXCEL开发电大考务信息管理软件相关电大毕业论文范文。适合管理系统及软件。