武江瑞 钱建新 成新民
(1.湖州师范学院 浙江省湖州市 313000 2.湖州市特种设备检测研究院 浙江省湖州市 313000)
伴随着当代工业的不断进步,压力管道广泛应用于各个行业中,如传统化工、电力、冶金等[1]。室外压力管道自建设以来,一直采用人工检测手绘图纸方式对管线进行管理,图纸经过长时间的使用会出现损坏遗失等情况,对室外压力管道的管理带来重重阻碍。室外压力管道直观有效的管理是当前所面临的急需解决的问题,采用三维的管网管理方式相比传统二维方式直观性更强,可以从不同的方位重建物体,具有较强的逼真度和立体度,是解决这种矛盾的有效方式[2-3]。国内近年来对管网三维模型的研究方向,主要还停留在基于三维建模软件例如Blender、Catia 等,采用手工或者半手工的方式对管线进行建模[4]。随着计算机图形学与三维可视化技术的发展,城市室外压力管网的科学管理具有了更加高效的方式[5-6]。
本文基于Three.js 在浏览器端对室外压力管道三维模型进行展示,通过对三维管线结构和模型的分析,对管线进行简化剖分,采用数学类方法绘制,设置管线材质和着色,实现完整的室外压力管道三维管网模型,利用该方法生成的三维管网具有较好的逼真效果,且相较于传统方式可实现自动化建模。
室外压力管道截面一般为圆,在三维模型建立过程中选择圆柱体代表管段,管段三维数据由管线截面圆心P,管线半径R,以及管线空间方向θ 来计算得到管线离散点坐标。一般管线截面以xoy面作为参考面,采用正多边形拟合,在实际拟合中,等分值k 越大,拟合效果越好,我们将管线分为16 等分,如图1所示。
图1:管线截面拟合圆示例(十六边形)
p 为圆心,pl 为拟合圆上的顶点,2π/16 为等分角,管线方向角为θ,首先求出顶点pl 的坐标,如式(1):
通过对管线切分,设置断点,从而使室外压力管道三维模型中仅包含直管段和管点,简化室外压力管道三维管网模型。管点模型又包含简单拐点模型和复杂拐点模型(三连通,四连通),分别对管点建立三维模型,完成管点绘制。
2.2.1 简单拐点模型设计
由获取到的圆心坐标,弧度圆半径r,可以求得弧线的拟合点s1坐标,以s1和s2坐标点为圆心,管道半径R 为半径,可以求得两个截面圆的坐标,确定好坐标相连的初始方向,将以s1和s2为圆心的截面圆上的坐标两两相连,完成弯管段的绘制。
2.2.2 复杂拐点模型设计
变径拐点建模:在实际布设管线中,存在一种管径不同却相连的情况,由于需要不同的管径流量,在大口径的地方转变为小口径,这个衔接的模块为变径拐点。建模方式上拟采用在不同管径截面中利用圆台衔接,细管径的截面为圆台顶部截面,粗管径的截面为圆台底部截面,将两个截面上的坐标两两相连即可完成变径拐点的建模。如图3所示。
图3:变径拐点建模图例
四通拐点建模:计算椭圆上的坐标,如图4所示,建立局部坐标系,由管线半径R 和四个管线截面的中心点坐标,可以求得坐标原点O。
图4:四通拐点建模图例
利用4 公式求得四个管道圆截面的坐标,将圆截面的坐标点与椭圆截面的坐标点对应相连,椭圆截面的坐标需满足与圆截面x 轴方向一致,且Y 轴方向分量值相等,从而完成四通拐点的建模。
三通T 型拐点建模:与四通拐点类似,但y 轴方向分量取正值,即可实现三通T 型拐点建模,如图5所示。
图5:三通拐点建模图例
管道绘制采用模拟的压力管道三维数据,数据传输到管网系统服务器中,通过管点标记值,调用相应的建模方法,完成管道绘制,绘制流程为将数据加载存入数据集,遍历数据集,判断管径变化情况,管径发生变化则获取数据集里的数据,并清空原始数据集,绘制变径前的管段。根据管点的标记值绘制非变径区域的管段,若标记值为一,则为直管段绘制,调用直管段绘制方式;标记值为二,则为弯管拐点,调用弯管的绘制方式;若标记值为三,调用三通点的绘制方式;若标记值为四,完成四通点的绘制。变径点处调用变径管道的绘制方式完成。管径若没有发生变化,则按照管点标记值绘制完成。
Three.js 主要组件包含场景、相机、渲染器、光源和物体[7-8]。创建场景,通过三维空间的观察者相机将室外压力管道三维模型添加至场景中,并设置光源显示管线材质和阴影,调用渲染器完成渲染,实现了室外压力管道的三维可视化,运行效果如图6所示。
图6:室外压力管道三维图
在渲染过程中,室外压力管道的三维可视化过程运行流畅,模型精细程度较高,实现了管道的圆滑过渡。实验证明,管道的三维建模方式是有效可行的。
室外压力管道三维可视化是管网管理的重要环节,可以实现信息共享,为城市压力管道的规划、管理和建设提供不可或缺的基础信息资料。本文通过对管点和管段三维建模分析,基于Three.js 设计实现了室外压力管道的三维可视化,且建模过程自动化,精细度更高,同时能够满足在浏览器端三维跨平台应用需求。