用WebGL实现桥梁管理系统中的3D功能.docVIP

  • 4
  • 0
  • 约4.85千字
  • 约 10页
  • 2019-02-02 发布于广东
  • 举报
用WebGL实现桥梁管理系统中的3D功能.doc

用WebGL实现桥梁管理系统中的3D功能 摘要:提出了在桥梁管理系统软件中实现3D功能的重要 性,介绍了 一种在B-S架构的桥管系统软件中实现3D功能 的技术:WebGL;展示并分析了用WebGL实现3D功能的网页 的代码,并演示了在某桥管系统中所实现的3D功能。 关键词:WebGL ;桥梁管理系统;3D;桥梁评定; B-S架构 中图分类号:TL372文献标识码:A 1概述 桥梁受到结构耐久性、环境条件、使用条件等因素的影 响,技术状况水平会随时间的增长不断下降,需要维修和加 固的桥梁会越来越多。然而由于维修资金有限,管理部门需 要先对所有桥梁的健康状况进行评价,根据评价结果对桥梁 的维修顺序进行排序,这就要求管理部门能够准确的掌握桥 梁的健康状况。目前很多桥梁管理部门投资开发桥梁管理系 统软件,以期通过信息化的手段,更加全面及时地了解桥梁 的技术状况,从而合理有效地安排桥梁维修计划。一个完整 的桥管系统软件,除了记录桥梁的静态数据,还应记录桥梁 的外业调查数据。通过桥梁外业调查数据的录入,桥管系统 软件记录下桥梁构件的各种病害(破损、裂缝等),并按照 相应的规范(《市政桥梁养护规范》或《公路桥梁技术状况 评定标准》等)对桥梁技术状况进行评估。目前,桥管系统 软件中外业数据的记录格式多种多样,但大部分都是基于文 字描述和二维示意简图。对于桥梁这种复杂的结构物,病害 的文字描述或二维示意简图往往很难做到准确和直观,如果 桥管系统软件能够处理和展示桥梁的三维模型,并能将桥梁 病害标注到三维模型上,那么管理者结合三维模型中桥梁构 件的形状、尺寸、钢筋位置、病害位置等,就能够更加快速 准确地掌握桥梁的健康状况。因此,在桥梁管理系统软件中 实现3D功能是十分有用的。 计算机软件中3D功能的实现,实际上是在显示器的二维 平面上画三维物体的过程,也叫做渲染,其中涉及到很多计 算机三维图形学原理。经过前人的积累,已经有多套基于图 形学原理的应用程序编程接口(API)被开发出来,可用于 计算机从三维物体上产生二维图形的处理过程中,如顶点处 理、图元组装、光栅化等。目前比较流行的3D编程接口有 OpenGL、Direct3D、Java3D 等。 OpenGL是最早也是应用最广泛的3D编程接口,它是 Open Graphics Library的缩写。OpenGL定义了跨编程语言、 跨平台的应用程序编程接口 (API)的规范,它可用于生成 二维或三维图像,由近三百五十个不同的函数调用组成。 OpenGL是个与硬件无关的软件接口,可以在不同的平台如 Windows 95、WindowsNT、Unix、Linux、MacOS、OS/2 之间 进行移植。因此,基于OpenGL的软件具有很好的移植性, 可以获得非常广泛的应用。 另一种3D编程接口是仅用于Microsoft Windows上的 Direct3D,它是DirectX的一部份,由于windows系统的流 行,目前也广为各家显卡所支持。与OpenGL同为电脑绘图 软件和电脑游戏最常使用的绘图编程接口之一。 Java3D是应用于Java平台的3D编程接口,它通过运行 于OpenGL或Direct3D之上,实现跨平台的移植性。其它的 编程接口还有VRML、X3D等。 以上介绍的是目前计算机软件实现3D功能最流行、使 用最广的技术,但都主要用于实现桌面程序应用。随着互联 网软硬件技术的迅猛发展,目前很多应用程序都采用B-S(浏 览器-服务器)架构,桥管系统软件也不例外。在这种架构 的应用程序中,用户的工作界面是通过web浏览器来承载的, 客户端无需安装软件,减轻了客户端电脑的负荷,同时也降 低了系统维护与升级的成本和工作量。由于使用统一的 HTML(超文本标记语言)和JavaScript (脚本语言),这样的 应用程序能很方便地做到跨平台使用,无论是在微软 windows平台的IE上,或是苹果I0S平台的Safari上,甚 至可以是使用安卓系统的手机浏览器上,程序都可以正常运 行。B-S架构的应用程序实现了不同人员,从不同地点、不 同平台,以不同的接入方式访问、操作和共享数据。 那么在B-S架构下,桥管系统软件如何在浏览器中实现 3D功能呢?传统的解决方法是浏览器插件,这就意味着对于 每种不同的操作系统和浏览器的组合,都需要开发特定版本 的插件,对于手持设备上运行的比较特殊的操作系统或浏览 器,开发起来就会更加复杂困难;其次,对于操作系统上的 图形应用程序接口的调用,并不是遵循一个公开统一的标 准。比如,在Windows平台上,是通过调用DirectX来实现, 而在Mac OS X ±则是调用AGL。所以,一种无需浏览器插件 支持、通过统一的图形应用程序接口调用来实现Web交互式 三维图形渲染的技术,就变

文档评论(0)

1亿VIP精品文档

相关文档