图扑 Web 可视化引擎在仿真分析领域的应用

在数字孪生和仿真研究过程中,会产生大量和三维空间相关的数值信息,比如设备外观的扫描数据、地形扫描数据、生产设备温度场/压力场、流体的速度场、流体扩散,以及各种仿真数据:速度,压力,应力,温度等 。

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 
这些数据的特点是数量大,使用二维图表呈现不直观,无法直观呈现数据的三维分布和数据随时间的变化 。
图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 
图扑软件 - 构建先进 2D 和 3D 可视化所需要的一切是基于 WebGL 的三维可视化引擎,在 WebGL 基础上封装了基本的三维模型创建、呈现的 API 。同时还封装了丰富的数学运算库,涵盖多维变换,几何计算等 。
图扑 SDK 开放灵活的架构也使得用户开发扩展功能非常方便,比如热力图(体)插件,流场粒子展示插件,体绘制插件等 。强大灵活的 3D 引擎可以让用户轻松实现三维模型的呈现编辑功能 。用户无需关心繁琐复杂的 WebGL 操作,可以将精力放到应用的业务层,节省开发费用,加快开发进程,通过三维动态直观展示方式,挖掘隐藏的信息内容,提升应用价值 。
本文针对以下 6 种呈现方式讨论使用图扑 SDK 实现的方法:
  • 模型表面贴图
  • 模型三维网格
  • 粒子流贴图
  • 粒子流体
  • 体绘制
  • 点云
以下介绍的方法中,为了提高前端的性能和用户体验,涉及到大量数据处理的操作都可以放到服务器上实现 。前端只负责少量运算和效果展示 。
下图是实现整个系统的架构:
图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 
模型表面贴图
对于需要展示表面数据的应用,比如设备表面的温度,压力等,输入数据是模型表面的点坐标和数据值的集合,比如 x, y, z, value 。实现的方法:根据模型上每一个点 value 值计算出此点贴图的 UV 值 。
实现原理图如下:
图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 
有以下两种情况需要用插值算法重新生成数据:
模型表面贴图
模型三维网格
下图是实现的原理 。主要增加了使用反距离加权法重新生成数据 。由于这一步计算量大,需要放到服务器上,作为数据预处理功能实现 。
图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 
模型三维网格
三维网格展示在一个二维面上的属性在上一节 “模型表面贴图” 已介绍过 。这里主要介绍三维网格展示三维信息,比如三维速度场,三维温度场等 。
由于是一个三维的体,无法用贴图的方式给出网格的颜色信息 。此时需要用插值算法计算出规则空间网格的场信息 。比如在 x,y, z 整数值的点插值采样 。将采样获得的空间场信息以材质的方式传给图扑 SDK 。SDK 在渲染每一个点的时候,根据点周围的空间 4 个点做插值拟合获得属性值,并根据属性值范围计算出渲染的颜色 。具体流程参照下图:
图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 

图扑 Web 可视化引擎在仿真分析领域的应用

文章插图
 
上方为基于钻孔数据的三维地质模型可视化,智慧矿山是一个汇聚了多学科、多主题、多维空间信息的复杂系统,是在矿山地表和地下开采矿产资源的工程活动中所涉及的各种静、动态信息的全部数字化管理,智能分析,可视化展示,从而达到降本增效,实现企业利益的最大化 。
粒子流贴图
对于需要在一个面上展示的流体场,比如风场,水流场,压力场等,需要以动态的方式呈现,可以使用图扑粒子插件实现 。
系统基本原理如下图:二维流体场信息作为贴图资源传给图扑 SDK 。SDK 里使用贴图保存粒子的位置信息,利用流体场和粒子位置,计算出下一帧的粒子位置 。然后融合上一帧的输出和当前输出,实现粒子的移动尾迹效果 。


推荐阅读