GL Studio

3D

前言:

GL Studio是目前世界上最先进的人机接口(HMI)开发工具,它非常专业,因此做得非常优秀。在训练仿真领域占有非常大的份额,2005年12月的IITSEC中,至少有35家参展厂商采用它开发仪表和面板。并且它被许多软件采用,做为它们的仪表、面板和界面制作模块,例如MPI的视景仿真软件Vega Prime采用它替换了自己以前的仪表面板模块Symbology,在三维场景中显示仪表和面板。GL Studio被其它许多软件采用,一方面说明它的先进性,开发效率高、开发质量好;另一方面说明它软件结构好,非常便于重用,它完全采用面向对象技术,开发出来的应用非常容易被重用。它在Windows下的开发编译环境就是Microsoft的Visual Studio,非常便于使用,它可以编译生成.exe、.dll或ActiveX控件,它的运行不需要其它软件支撑

GL Studio虚拟仪表开发工具

GL Studio是美国DiSTI公司的旗舰产品,它是一个独立平台的快速原型工具,用来创建实时的、照片级别的、可交互的图形界面,既可以用于仿真,又可以用于实际装备。照片级别的图形显示界面的创建需要人们有两种不同类型的技能:图形艺术家和软件开发者。DiSTI设计了对图形艺术家和软件开发者都非常友好的GL Studio。GL Studio生成的c++和opengl源代码可以单独运行,也可以嵌入其他应用中;它能运行于Windows、Linux、Vxworks等操作系统上。

GL Studio特点

1)GL Studio具有极强的软件重用性
GL Studio是世界上第一个采用面向对象方法的人机接口开发工具(HMI)包,其生成的HMI支持对象重用。其任何设计的对象或者由对象组成的新的对象,都可以作为一个新的重用对象。也就是说,GL Studio开发的HMI都是RSO(Reusable Software Object):
  – RSO可独立运行;
  – RSO具有对外接口;
  – RSO包括外观和内在行为;
  – RSO可以由其它RSO构成。
因此,使用GL Studio可以方便团队进行设计开发人机接口,每个团队成员开发各自的HMI,然后把这些RSO集成在一起就可以了。而且这些RSO是软件重用的资产,还可在以后的HMI开发中重用。
  2)GL Studio不仅支持3D仪表而且支持场景中的3D仪表显示
  GL Studio是第一个实现3D的HMI开发工具包,它开发的HMI都是3D的,而且它可以导入3D模型,把HMI布置在3D模型上,实现场景中的三维仪表显示。它直接支持的3D模型数据为:
  – 3D Studio MAX ASE;
  – Designers Workbench DWB;
  – Alias/Wavefront OBJ;
  – OpenFlight FLT。
  其它3D模型数据,例如CAD(CATIA, AutoCAD, Pro/E)等数据,可以通过上述数据格式 导入到GL Studio编辑器中。
  

GL Studio_第1张图片
3D模型

GL Studio_第2张图片
3D环境

3)GL Studio开发HMI时可以实现一次开发多次发布
  用户开发HMI 软件主要是应用于以下几个方面:
  – 原型设计 (侧重考虑人机工程因素,用于产品的原型设计与验证)
  – 使用训练 (各种与人机接口相关的培训,既可用于操作训练,又可用于维护训练)
  – 课件制作 (用于本地教学和远程教育)
  – 嵌入式应用(应用于真实的设备中)
据相关机构统计,在HMI以上几个应用方面中,仅关心一个方面的用户,占9%;关心二个方面的用户占30%,关心三个或三个以上方面的用户,占61%。因此GL Studio在设计时不仅可以分别满足这几个方面应用的要求,而且格外关注同时满足这几个方面应用的要求。GL Studio做到了为其中一个方面开发的HMI不更改任何设计和代码就可以应用于其它方面,这样减少了工作量,更重要的是提高了软件质量,这是其它HMI开发工具做不到的。下图是GL Studio开发的HMI同时应用于原型设计、训练模拟器和真实装备上的流程图。
  


GL Studio_第3张图片
人机交互接口

4)GL Studio提供开放的对外接口
GL Studio是完善的HMI开发工具,因此其不仅提供了HMI开发平台,而且提供了开放的对外接口。它可以通过CORBA、DIS、HLA、Shared Memory、SCRAMNet® 、TCP/IP or UDP/IP、RS232/422等协议读取外界数据。可以与众多第三方软件集成在一起,例如:Vega Prime、EPX、MAK Stealth、Open Scene Graph、Delta 3D、pC-NOVA、V-Tree、X-Plane、MatLab、PowerPoint、MFC、KineMap、BlueRidge Radar、MapLink、Harris Moving Map、I-Log、ToolBook、FLTK and QT等等。
GL Studio编辑器
GL Studio编辑器是一个经过长时间实践验证的3D的所见即所得的绘制工具。它直观的用户图形界面,包括了用户所期望的所有图形界面的元素,非常易于使用,不需要任何编程知识:
  

GL Studio_第4张图片
GL Studio编辑器

1)浮动工具条
  2)工具提示
  3)多文档界面
  4)在线查找帮助
  5)内容敏感的菜单
  6)最近调用的文件列表
除了众多图形应用程序都提供的画布之外,GL Studio编辑器还包含了层次视图,层次视图显示了所有设计中的对象列表,用一个可折叠的树状结构来显示。层次视图使得对象容易被提取和编辑——即使其它对象堆叠在它们上面;层次视图还可以让用户将对象和名称关联起来,名称有助于更方便地查找对象。它还集成了GL Studio代码生成器,使设计出来的图形对象很容易转换为所需要的代码,并且它可以把用户定义的源代码加入到设计对象中。
GL Studio编辑器有十几种图形原形,包括规则多边形、TrueType文本对象等等,通过原形可以组合成更复杂的对象。GL Studio编辑器支持所有的绘图操作,包括剪切、粘贴、转换、缩放、修剪、剔除、顶点编辑、插入和移除顶点、水平翻转、垂直翻转、左旋转、右旋转、自由旋转、扭曲、排列对象和改变绘图命令等等。
GL Studio编辑器可支持多视图,包括三个正交投影视图和一个自由视角的透视视图。设计出来的对象可以通过网格、无纹理或是有纹理等方式来观察。平移和缩放可以通过使用滚动条和三种不同的缩放方法来实现。为了有助于对象的布局,对齐网格的功能可以使对象在格子的边界上排成一行。格子的尺寸可以根据需要来调整。编辑器保存了在一次编辑中进行的所有操作的历史记录,允许使用者撤销已执行的任意操作,直到当前编辑器的开始状态。

  • GL Studio编辑器支持照片级纹理的应用。一切多边形的对象都可以贴纹理。纹理工具可以导入大多数格式的贴图,如PNG、TIFF、JPEG、BMP等。贴图能轻松地在对象上缩放、旋转和平铺,以达到预期的效果。纹理还能与对象颜色混合,并支持透明度。

  • GL Studio编辑器还允许使用者镶嵌复杂多边形,镶嵌工具能将复杂多边形转变为一组三角形。

  • GL Studio代码生成器已经内嵌到GL Studio编辑器中,它允许程序员将GL Studio编辑器绘制的图形转换为C++、Java、涉及安全的C++和OpenGL的源代码。

如何方便生成真实的虚拟或数字仪表和面板?最好的方法就是生成源代码,这样就可以让程序员容易将其合并到他们自己的应用程序中,因此GL Studio使用代码生成器生成可移植的C++代码。它生成的代码质量高,具有美观的格式并且容易阅读。程序员能在他们当前的开发环境和工具下应用GL Studio生成的代码,而不需要学习一个全新的开发环境。因此GL Studio是程序员为程序员设计的。
程序员有了图像的源代码后,很容易进行定制和为目标平台进行优化。尤其在性能为决定性因素的情况下,经过编译的C++程序总能有最好的效率,GL Studio生成的完美优化的遵循OpenGL标准的源代码优势非常明显。
代码生成器能提取GL Studio编辑器中的对象组,并生成定制的程序组件。这些组件能加到“组件调色板”中,开发者可以方便地将它们拖放到设计对象中。例如,一个ADI(Attitude Direction Indicator)以组件方式被创建后,将来任何需要ADI的时候都可以通过简单的拖放将其加到设计对象中。
GL Studio生成的人机接口有两种方式与外界交互,一种是读取外界数据来驱动仪表显示;一种是响应用户界面事件,实现面板操作。GL Studio代码生成器为程序员提供的是源代码,因此程序员可以通过编程以CORBA、DIS、HLA、Shared Memory、SCRAMNet® 、TCP/IP or UDP/IP、RS232/422等等协议读取外界数据。同时,GL Studio提供Call Back功能使图形化对象可以响应用户界面事件,例如触摸屏感应、鼠标点击和键盘输入等。

你可能感兴趣的:(GL Studio)