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

科技资讯 投稿 32200 0 评论

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

前言

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

图扑 SDK 开放灵活的架构也使得用户开发扩展功能非常方便,比如热力图(体)插件,流场粒子展示插件,体绘制插件等。强大灵活的 3D 引擎可以让用户轻松实现三维模型的呈现编辑功能。用户无需关心繁琐复杂的 WebGL 操作,可以将精力放到应用的业务层,节省开发费用,加快开发进程,通过三维动态直观展示方式,挖掘隐藏的信息内容,提升应用价值。

  • 模型表面贴图

  • 模型三维网格

  • 粒子流贴图

  • 粒子流体

  • 体绘制

  • 点云

以下介绍的方法中,为了提高前端的性能和用户体验,涉及到大量数据处理的操作都可以放到服务器上实现。前端只负责少量运算和效果展示。

模型表面贴图

对于需要展示表面数据的应用,比如设备表面的温度,压力等,输入数据是模型表面的点坐标和数据值的集合,比如 x, y, z, value。实现的方法:根据模型上每一个点 value 值计算出此点贴图的 UV 值。

有以下两种情况需要用插值算法重新生成数据:

  • 模型表面贴图

  • 模型三维网格

下图是实现的原理。主要增加了使用反距离加权法重新生成数据。由于这一步计算量大,需要放到服务器上,作为数据预处理功能实现。

 

模型三维网格

由于是一个三维的体,无法用贴图的方式给出网格的颜色信息。此时需要用插值算法计算出规则空间网格的场信息。比如在 x,y,z 整数值的点插值采样。将采样获得的空间场信息以材质的方式传给图扑 SDK。SDK 在渲染每一个点的时候,根据点周围的空间 4 个点做插值拟合获得属性值,并根据属性值范围计算出渲染的颜色。具体流程参照下图:

基于钻孔数据的三维地质模型可视化(点击文字跳转查看智慧煤矿往期回顾),智慧矿山是一个汇聚了多学科、多主题、多维空间信息的复杂系统,是在矿山地表和地下开采矿产资源的工程活动中所涉及的各种静、动态信息的全部数字化管理,智能分析,可视化展示,从而达到降本增效,实现企业利益的最大化。

粒子流贴图

系统基本原理如下图:二维流体场信息作为贴图资源传给图扑 SDK。SDK 里使用贴图保存粒子的位置信息,利用流体场和粒子位置,计算出下一帧的粒子位置。然后融合上一帧的输出和当前输出,实现粒子的移动尾迹效果。

图扑粒子插件可以实现以下参数可调节:

  • 粒子的大小

  • 粒子的形状

  • 粒子的流速

  • 粒子数量

  • 显示的阈值

  • 仿真精度等

 

粒子流体

对于需要展示三维空间的矢量场,比如风场,速度场等,需要以动态的方式呈现。可以使用图扑粒子插件实现。插件的主要输入数据是三维矢量场。它是在服务器端通过对矢量场按照固定间隔采样拟合获得。

  • 粒子的大小

  • 粒子的形状

  • 粒子的流速

  • 粒子数量

  • 显示的阈值等

体绘制

体绘制是一种将三维空间中的体数据,渲染到二维图形上的技术。体绘制可以在二维平面上展示出三维空间中的数据,可直观窥探物体内部细节,因此可应用于各种电、热、磁场的仿真,水污染扩散仿真、海洋遥感三维可视化、医学影像(CT) 展示等。

种体绘制的算法有多种:光线投射算法、抛雪球算法、错切变形算法。三种算法相比较,光线投射算法计算量相对较大,但是绘制的图像质量较高,有利于保留图像细节,这里我们选用光线投射算法。为了保证渲染速度,我们要对光线投射算法进行了优化,减少不必要计算量。通过优化,可以做到在有非集成显卡的普通 PC 机上,轻松实时渲染数百万以上点的有限元分析结果。

以下案例是体绘制在 CT 可视化领域的应用:

点云

点云可以用于展示模型本身或者模型表面的属性信息,比如压力和温度等。

更多应用场景

仿真分析技术的应用范围涵盖社会的诸多方面,本文我们也对图扑可视化引擎在数值仿真分析领域的应用做了一些介绍。

结合图扑软件 Web 可视化引擎为工程仿真、气象预报、生命科学、科研教育、电力系统、交通运输、工业制造等不同领域的发展起到了推动作用,为不同的行业发展注入了新的动力。

图扑软件强大灵活的前端可视化引擎自主研发设计,未使用第三方开源库实现。友好的 API 和灵活的可扩展性,使得图扑引擎开发的产品具备高性能,高可扩展性,用户可以灵活轻松的实现各种展示效果。

图扑软件 - 构建先进 2D 和 3D 可视化所需要的一切

编程笔记 » 图扑 Web 可视化引擎的应用(在仿真分析领域)

赞同 (31) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽