专栏首页hightopo原 基于HTML5的燃气3D培训仿真系统

原 基于HTML5的燃气3D培训仿真系统

最近上线了的基于HTML5的燃气3D培训仿真系统,以前的老系统是采用基于C++和OpenGL的OpenSceneGraph引擎设计的,OSG引擎性能和渲染效果各方面还是不错的,但因为这次新产品需求要求能运行多移动终端,多年前基于MFC封装OSG的老系统架构也实在该退休了,这年头找能维护MFC这种古董级GUI的靠谱人也非易事。

系统最终采用HT for Web的3D框架实现,项目中的程序员也很高兴有这样的机会终于摆脱维护MFC老系统的宿命,虽然大家都只有C++的开发经验,对HTML/CSS/JS并不熟悉,但毕竟HT for Web已经做了极佳的组件封装,CSS和DOM、包括跨平台的兼容性等棘手问题交给HT框架透明处理,程序员只需要掌握基本的js用法就可以快速上手,按HT的说法类比与关系数据库ORM(Object-relational mapping)映射框架,HT提供的是OVM(Object-View mapping)的框架,只需要基本的面对对象的js操作即可驱动控制各种View组件,当然对于明白原理的人依然可以不受框架约束自如操作HTML的View层。

系统主要分为设备介绍、门站组装、业务培训和模拟考核四大部分:

让我感觉比较爽的是控制3D图元部分,以前不同的设备类型得体力活的写一堆代码,才能好不容易的实现些旋转移动等操作控制,界面控件和3D模型之间的数据同步也得费不少劲,现在用js这种动态语言真是非常灵活,界面都可以非常方面的动态生成,加上HT for Web统一的数据模型自动就能处理好3D图元与控件之间的数据绑定和联动,我干起活来就像搭积木一样轻松,脑子里想的就是业务功能和业务数据,不用再去折腾不同组件如何同步这些数据,控件也无需做什么特殊扩展。

当然目前项目还仅仅是初版移植,业务功能上还未有太大创新,但就目前的进度我们已经体会到HTML5的开发快速性,js语言也不是想象中那么弱,团队控制好一定的编码规范后js的灵活性带来的开发进度提高还是非常显著,刚开始选型大家还在争论OSG基于C++和OpenGL的性能会优于JS和WebGL的方案,但现在回头看我们还是走对路子了,毕竟我们这样的企业应用也不需要像游戏级别的渲染和性能的要求,产品发布轻量,开发可快速迭代更是我们需要追求的路线。

以下是一段平板上的操作视频供参考

http://v.youku.com/v_show/id_XNzA0NjE2MjY0.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 基于HT的CSG功能构建HTML5的3D书架

    HT_hightopo
  • 工业4.0:换热站最酷设计—— Web SCADA 工业组态软件界面

    随着工业4.0 的不断普及与发展,以及国民经济的飞速前进,我国的城市集中供热规模也不断扩大,科学的管理热力管网具有非常重大的经济和社会效益。目前热力系统,如换热...

    HT_hightopo
  • 新基建背景下,催生智慧园区三维管控系统解决方案

      “智慧园区管控系统”基于物联网生态体系操控平台架构,利用新一代信息与通信技术来感知、监测、分析、控制、整合园区各个关键环节的资源,集成了光伏、变电站、停车场...

    HT_hightopo
  • Flutter 吐血整理组件继承关系图

    老孟导读:前几天一个读者和我说能不能整理一个各个控件之间的继承关系,这2天抽时间整理了一下,不整理不知道,一整理真的吓一跳啊,仅仅Widget的子类(包括间接子...

    老孟Flutter
  • (二)开源C# Winform控件库《SunnyUI》强力推荐

    本站(https://dotnet9.com)曾介绍过一款Winform开源控件库《HZHControls》,文章发布后不少朋友热情的咨询相关控件库信息,由此看...

    zls365
  • 未来可期:物联网未来十年6大发展趋势

    未来十年里,随着物联网设备得到更广泛的应用,以及各行业找到新的方法来使物联网技术适应特定行业需求,我们将看到物联网市场的重大变化与发展趋势。

    i策划
  • 工业物联网需要边缘的五个原因

    随着我们生活和工作的空间开始变得对网络有所了解并对其环境中发生的事件做出反应,工业物联网正迅速成为事实。在这些空间中,不同复杂度的“事物”包括测量温度值的传感器...

    用户1133397
  • 【小试身手】几个自定义控件的组合应用,实现简单的“增删改查”功能(有源码)

         分页控件、查询控件、显示数据的控件和表单控件,终于把这几个控件结合在一起了,和在一起之后就可以让“增删改查”变的非常的简单和容易了,当然还需要数据访问...

    用户1174620
  • 【教程】一小时向非程序员介绍 R 编程语言

    (1)下载R和RStudio 我对RStudio的印象不错,对于初学者来说,它既方便又很有帮助,对专业人士也很有用。尤其对于初学者:鼠标指向-点击式(point...

    小莹莹
  • 物联网安全迫在眉睫,如何让物联网攻不可破?

    如今,快速发展的物联网设备确实能够在日常生活中为人们提供帮助,通过提供连接和智能服务,可以使人们的生活更轻松。然而,当人们进入这个新的技术阶段时,必须集中精力提...

    企鹅号小编

扫码关注云+社区

领取腾讯云代金券