APP下载

一种飞行事故三维情景构建的实现方法

2016-11-15朱宝玉

高师理科学刊 2016年10期
关键词:机身材质情景

朱宝玉



一种飞行事故三维情景构建的实现方法

朱宝玉

(中国民用航空飞行学院 空管学院,四川 广汉 618307)

目前有关飞行事故的研究主要是针对事故飞机飞行过程的复原、飞行姿态的仿真,在三维飞行过程和姿态仿真技术往往采取复杂专业的技术平台.提出了一种经济有效的三维构建技术方案,即利用SketchUp软件建造飞机三维模型,运用KML语言对飞行事故进行情景构建,并以Google Earth为可视化平台进行呈现,可快速经济地构建出飞行事故的虚拟情景.

Google Earth;KML;Google Sketchup

随着我国民用航空市场的快速发展,飞行安全问题越来越受到关注,飞行事故的再现方法研究成为一个重要课题.目前,许多飞行事故仿真平台制作的飞行再现仿真需要专业的建模技术、计算机图形技术和多媒体技术等作为支撑,并且对硬件要求较高,制作周期长,价格昂贵.陆慧娟[1]等利用3dsMAX平台,将地理信息技术、三维模拟技术和移动物的移动轨迹数据结合起来,多角度观察事故发生过程;谢川[2]等提出了一种基于DirectX实现建模、仿真及动态数据回放的方法,综合利用了计算机图形技术和多媒体技术;薛源[3]等设计了基于HLA仿真框架的分布式虚拟现实事故再现系统,通过多边形建模技术、高级场景渲染技术以及虚拟现实交互技术实现事故过程的可视化.这些飞行再现仿真平台均需要复杂专业的技术,对于非专业人士,实现难度大,不容易推广.

针对这些问题,本文提出了一种高效的三维构建技术方案,即利用SketchUp软件建造飞机三维模型,运用KML语言对飞行事故进行情景构建,并以Google Earth为可视化平台进行呈现,可快速经济地构建出飞行事故的虚拟情景.

1 相关技术介绍

1.1Google Earth

本文采用Google Earth软件作为飞行事故情景构建的呈现平台,它是由谷歌公司推出的一款GIS软件,可为用户免费提供卫星影像及地形数据信息.它的功能强大,操作简便,具有高度的现实还原力和大范围的真实地形场景,给人身临其境的感觉.

Google Earth最大的优势在于基于XML语法的KML语言.KML的应用是为了增强Google Earth的功能,实现与用户的互操作性.通过KML语言可以在Google Earth上显示点、线、多边形、多面体、图片及三维模型等地理数据,还可以将地理数据从存储、风格设计、分层和显示的各个环节得到实现,并且能够很好地实现动态效果.本文最终要利用Google Earth显示飞行事故的动态效果[4].

1.2 三维建模平台

目前流行的建模软件有3D Studio Max,Maya,XSI,Multigen Creator等,其中有些软件能够构建出高精度的模型,但是模型的数据量庞大,建模周期长,软件操作复杂,不适合本文的飞机模型的构建[5].

而Google Sketchup是一款直接面向设计过程的三维建模软件,其操作简单、建模效果逼真,用户可以边构思边设计,最大限度地控制模型完成的精确性.此外,Google Sketchup和Google Earth已经实现了无缝结合,选择Google SketchUp软件建造飞机模型是最好的选择.

2 飞行事故情景构建实现过程

本文研究的主要内容是利用Sketch Up建造飞机模型,Google Earth平台结合KML语言实现飞行事故的三维情景构建,分3个步骤实现,即建立飞机三维模型、KML语言编写和三维实体在虚拟场景中的运动.

2.1 事故飞机三维建模

飞行事故情景构建的对象是事故飞机,而为了更好地体现飞机飞行姿态和运动状况的真实感,就需要尽可能多的保留原飞机的真实情况.显然使用简单的二维图标来代替三维飞机模型是不可取的,所以在建造飞机模型时,要尽可能精确地还原飞机的真实模样,以便能够达到预期的效果.本文选择Google SketchUp作为飞机三维建模平台,以乌柏林根空难中的波音757-200SF飞机为例,介绍飞机模型的建造过程.模型建造分2个步骤:

第1步:建造出无材质的飞机模型;

第2步:根据收集到的飞机真实图片、影像对模型进行贴图,获得完整的飞机模型.

波音757-200SF飞机的真实图片见图1,要建造的是和图中飞机效果相同的三维模型.

由于民航飞机都是由机身、机翼、尾翼、起落架和发动机等主要部件组成.所以在进行建模时,先分别对飞机的每个部件建模,并将各部件保存为组件,然后以机身为基础,将各个组件组装到机身上,形成一个群组,就得到了无材质的飞机初步模型.在建模时可以充分利用网络上已有的资源,减少建模的时间,建造的波音757-200SF飞机无材质的初步模型见图2.

建造完无材质的初步模型后,要根据图1中飞机真实照片对无材质模型进行贴图.其中需要贴的材质包括:机身图案、航空公司名称、航空公司航徽、国籍和登记标志等.由于飞机机身是不规则的曲面,在给曲面机身贴图时,为了避免贴图出现错位的状况,需要构造辅助模型与机身曲面相交,得到交面然后贴图,以达到无缝贴图的效果.具体操作流程为:

图1 波音757-200SF飞机真实图片

图2 波音757-200SF飞机初步模型

(1)将采集到的真实飞机材质图片导入SketchUp并进行分解,使其具有点、线、面的属性,这样就可以对它的点、线、面属性进行操作;

(2)通过推/拉工具将这个面拉成柱体,拖动柱体使得柱体与机身需要贴图处曲面相交,然后选中这2个模型,进行模型相交操作,得到一个机身曲面上的交面,删除交面外的辅助柱模型的线和面;

(3)利用吸材质工具吸取导入图片的材质,刷到相交面上,这样就形成了无缝贴图.

图3 波音757-200SF飞机Sketch Up模型

通过此方法对飞机其他部分进行贴图,得到所需模型,处理后的飞机三维模型见图3.可见,通过SketchUp软件建造的飞机模型与真实飞机基本保持一致,模型效果足以满足本文研究需要.

同样的方法,建造事故中另一架飞机三位模型见图4.其中a为图-154 m飞机真实照片,b为飞机三维建模模型.

制作好的模型还可以上传到3D Warehouse,分享给模型爱好者使用.

2.2 KML语言编写

KML文件是文本格式的,它的语言规范、执行效率高、容易理解.可以使用文本编辑器自己编写KML文件,也可以按照需求使用Google Earth client撰写KML文件,还可以使用开发环境自动生成KML文件[6].

三维模型做好后,直接在KML文件中指定显示该模型的位置就可以将该模型放置在Google Earth的三维立体空间中.模型的dae格式文件存在标签中.如代码所示:

在KML里面,路线由元素来创建,在标签内相应位置输入一串点的坐标,就可以显示为线.还可以利用标签设置线的属性,指定线的颜色和宽度[7].气泡窗可以显示一些文字信息,它的实现是通过使用CDATA元素在标记中写入HTML标记语言来实现的.情景构建中其它功能的实现可以应用相应的KML标签来实现.

2.3 三维实体在虚拟场景中的运动

对于情景构建中飞机的运动实现有多种方法,可以运用关键帧,为模型的运动增量制作一个地标并且进行显示,但是这种方法需要非常多的代码,并且动画效果流畅性不好;还可以运用“时间戳

本文介绍运用来实现飞机的动态更新,通过一段截取的KML文件介绍其实现过程:

3

smooth

李霞是在含沙射影地指责景花厂挖大发厂的人。我有点心虚。我想起阿花的狡辩之词,便有了底气。我不卑不亢地说,李课长说得对,到底是自由竞争还是在恶意猎取,谁说了都不算,如果有空,劳课长大驾去景花厂看看便知道了。我站了起来,比画着双手说,大厂有大厂的强势,小厂有小厂的优越,人才流动完全取决于员工的就业取向,决不是可以人为逆转的。李课长既然提到了自由竞争,我不妨说句实话,大发厂的优势在于工资待遇高,景花厂的优势在于工作环境好,团队精神强。如果景花厂没有优势,即使用绳子捆住员工的手脚,他们还是要跑的。

0.02

其中是Tour开始的标志,是Tour的名称;Tour是由Playlist组成的,而Playlist是一系列的点列表,其中每个点都包含在Flyto元素中; 为从上一个Flyto点到这一个Flyto点所用的时间;表示飞行动画的过渡方式;为当前视点,包括:经纬度、高度、飞行的方位角、俯仰角度和高程模式等;表示在这个flyto节点模型停留的时间.

飞机飞行后的机载数据经过破译处理后得到原始的飞行数据,从该数据中提取有关飞机经纬度位置、飞行高度、俯仰角、偏航角、滚转角、航迹角、偏流角、真空速和地速等飞机位置、姿态及速度等信息[8].将相关信息导入KML文件中相对应位置,就能实现飞机在Google Earth中的动画效果.

利用本方法可以构建出飞行事故的发生情况,通过添加事故飞机飞行之外的其他信息,如时间标注、航迹的显示和陆空通话内容等,使事故发生的情景更加全面,并且制作成一个演示课件.

图5 2架飞机相撞瞬间

3 飞行事故案例

以乌柏林根空难为例,根据飞行事故发生的整个过程,进行飞行事故的构建,动画中的截图见图5.由图5可以清楚地看到2架飞机相撞时的情景,波音757-200SF飞机的垂直尾翼从图-154 m飞机机身左下方划过,使得图-154 m飞机爆炸并解体为2段.

通过对各类典型飞行事故案例的制作,可以使人们很快认识到问题所在,避免同类错误的再次发生.也可以作为民航院校、航空公司、空管人员以及飞行员提供典型案例分析和飞行安全教育的手段,从而提高民航的安全防范意识.

4 结束语

本文通过Google Sketchup 建立飞机三维模型,利用Google Earth作为情景构建平台,用KML语言描述事故的发生,得到了较好的演示效果.同时,也证明了Google Earth及其接口语言KML可以经济、直观地实现三维民航事故情景构建,无需采购昂贵的专业三维平台.只要掌握了KML语法就可制作各种飞行情景,本方法具有普遍适用性、高效性和低成本等特点,具有很强的实用价值,值得相关人员采纳和学习.

参考文献:

[1] 陆慧娟,高波涌,周国裕,等.飞行安全及事故分析的三维仿真模拟系统的研究[J].计算机应用,2005(8):1959-1961

[2] 谢川,倪世宏,张宗麟.基于DirectX的飞行过程再现[J].计算机应用与软件,2004(9):48-49

[3] 薛源,徐浩军,胡孟权.基于综合限制函数超限的飞行事故虚拟再现系统设计[J].计算机辅助设计与图形学学报,2011(7):1166-1172

[4] 宋柯.三维航空图绘制方法初步研究及实现[J].空中交通管理,2009(8):25-27

[5] 高彦丽,刘建平,贾云朋,等.Google Earth和Sketch Up环境下三维场景建立方法研究[J].科技广场,2012(5):245-247

[6] 王浚羽,姜荔峰,张峰,等.基于Google Earth的三维飞行仿真系统设计[J].四川兵工学报,2014(7):100-102

[7] 李夏,向硕凌.三维航线仿真模型研究[J].中国西部科技,2013(1):28-30

[8] 赵向领.基于三维场景的飞行回放仿真系统研究[J].计算机工程与设计,2012(4):1518-1521

A fast way for 3D scene construction of flight accident

ZHU Bao-yu

(School of Air Traffic Control,Civil Aviation Flight University of China,Guanghan 618307,China)

The current research about the flight accident is mainly aimed at the flight process restoration of accident plane,flight attitude simulation,and complex professional technology platform is adopted in 3D flight process and attitude simulation technology.Proposed an economic and effective 3D construction technical scheme,that was to say,SketchUp software was used to build 3D plane model,and KML language was used to conduct the scenario design on flight accident, which can be presented by Google Earth as visualization platform, so the virtual scene ofaccident can be constructed quickly and economically.

Google Earth;KML;Google Sketchup

1007-9831(2016)10-0036-04

TP391.9∶V2

A

10.3969/j.issn.1007-9831.2016.10.010

2016-08-30

2015年度学校科研基金学生科技活动基金(X2015-24)

朱宝玉(1990-),男,山东临沂人,在读硕士,从事空中交通管理研究.E-mail:1060845302@qq.com

猜你喜欢

机身材质情景
情景交际
远不止DCI色域,轻量级机身中更蕴含强悍的亮度表现 光峰(Appptronics)C800
Augmented Reality comes to the classroom
石化企业情景构建的应用
衣服材质大揭秘
楼梯间 要小心
CATIA平台下的机身数字化对接测量软件开发与应用
外套之材质对比战
针织衫之材质对比战
10KV配变绕组材质鉴别初探