基于CIVIL 3D数据源处理二次开发的研究
2019-03-06黄晔卉欧阳龙山陈懿强
黄晔卉,欧阳龙山,陈懿强
(1.中交上海航道勘察设计研究院有限公司,上海 200120;2.上海市航务管理处,上海 200001)
1 背 景
建筑信息模型,即 Building Information Modeling,简称为BIM。BIM最初主要应用于建筑领域,通过在原本三维模型的基础上增加其他数字信息,比如材质,属性等,且进行相应的施工模拟和碰撞检测,从而达到在项目初期阶段即可发现设计问题的目的,继而进行相应的优化设计,把控进度。由于其在建筑行业中带来的效果显著,各行各业也逐渐开始接纳 BIM 技术。其中,Autodesk公司为交通运输、土地开发和水利项目的土木工程专业领域所开发设计的软件CIVIL 3D,也得到了上述领域设计人员的积极推广与应用。
早期,陈光宇[1]简要介绍了CIVIL 3D软件,并依据测量点数据创建了数字地形模型。于佳[2]以CIVIL 3D在水利工程中拱坝主体的应用为例,展示了其在水利工程中的应用前景。昂龙[3]等人利用CIVIL 3D创建的三维模型,可快速进行复杂地形的土石方施工规划,准确计算土石方量,从而达到挖填平衡的效果。赵立鹏[4]采用BIM技术能很好的完成航道疏浚模型的建立、工程量的计算以及施工质量的控制。
然而,在采用传统方法与CIVIL 3D方法进行工程量计算时,最终所得数据往往存在误差。产生误差的原因有很多,数据源就是其中一种,之前的学者对其都没有很好的研究和解决。因此,本文基于visual studio平台,采用 .Net语言进行二次开发,将传统测量所得的数据源进行处理,最终得到统一的数据源,并基于新的数据源进行CIVIL 3D方法和传统方法的比较与分析。
2 建模思路和建模流程
2.1 传统与CIVIL 3D的断面法建模思路
2.1.1 传统内河航道土方计算思路
实测水深点导入→泥面线生成→航道中心线、航道底边线和断面线导入→疏浚断面建立→与泥面线相交,断面疏浚量生成→在所需断面手动添加二级边坡→断面法产生疏浚总量。
2.1.2 CIVIL 3D的建模思路
实测水深点导入→地形曲面生成→航道中心线、航道底边线导入→转化航道中心线与底边线为路线→装配模型(即设计疏浚模型)设定,并按路线进行装配→与地形曲面相交,生成工程量。
2.1.3 BIM计算方法
CIVIL 3D计算时采用的体积计算方法主要有以下三种:组合体积算法、平均端面积算法以及棱体算法。
组合体积算法采用实际曲面数据,而不使用公式在采样线之间内插体积。如果曲面三角形的任意边小于采样线间隔,则此方法较为有用。
若位于两个连续桩号之间的挖方或填方区域具有相似的造型,则可以使用平均端面积的方法。
若桩号之间的地形变化较大,那么使用棱体算法会更为精确。
这三种算法中最常用的就是平均端面积算法,其原理为:将一个桩号处的材质类型面积与下一个桩号处的材质类型面积相加,再将两者之和除以二,然后将结果与横断面之间的距离(L)相乘来计算体积。即:
3 二次开发
纵观两者的建模思路和方法可以看出两者所得数据应该是相同的,因为采用了同样的测线和同样的测点。以上海市内河航道 A部分航段进行研究,航道A流经松江区南部和金山区东部,为闸控航道,里程约7.72 km。
根据某测量单位测得的航道A的水深测点,间隔50 m取一个断面,通过CIVIL 3D软件建立航道A部分航段的三维原始地形曲面模型,如图1。
图1 某航道A地形曲面模型
按照设计要求,建立航道A该航段的设计疏浚模型,以-1.5m作为底高程,采用1:2.5的坡比,采用0.3 m和0.75 m分别作为其超深、超宽。运用CIVIL 3D建立该航道模型,用测线进行采样得到的泥面线如图2所示。采用传统方法得到相同位置的泥面线,如图3所示。将图2和图3的泥面线进行对比如图4所示。
图2 CIVIL 3D所得某航道A某断面a、b泥面线示意
图3 传统方法所得某航道A某断面a、b泥面线示意
图4 CIVIL 3D与传统方法所得泥面线对比示意
从图4中可以看到通过CIVIL 3D与传统方法所得到的开挖泥面线并不完全吻合,两者泥面线存在微差。由于在计算土方量时,两种软件均采用断面法,其开挖方量为断面面积与断面代表长度乘积之和,因此两者的总体工程量存在误差。
因此,为了解决两者数据源不统一这个问题,采用.Net语言进行二次开发,使所有测点在导入两种不同数据源前,先进行处理,步骤主要为以测线为基准,将测线两边一定范围内的测点进行投影得到全新的数据源,并以此数据源进行后续的研究和分析。
同样采用上述内河航道A部分航段进行研究,将写好的代码载入CIVIL 3D,选中测线,需要添加投影范围,选择地形测量点,进行运算,得到新的数据源和图层。基于统一的数据源导入传统软件和CIVIL 3D进行工程量的计算,可得如下某断面的泥面线如图5和图6。将图5和图6的泥面线置于同一个坐标系中可得图7。
图5 万点归一后传统方法所得断面
图6 万点归一后CIVIL 3D所得断面
图7 万点归一后传统方法与CIVIL 3D所得断面对比
从图7可知,两种不同的计算软件导出的泥面线是完全一致的。从而说明了当采用统一数据源时,两种方法均可行。此外,采用统一的数据源可以得到两种不同软件在某航段 A上所得的工程量如表1所示。
表1 万点归一后传统方法与CIVIL 3D所得工程量对比
从表1中可以看出,采用统一数据源导入传统软件和CIVIL 3D分析计算工程量,所得数据误差相差约0.4 %,两者有很好的一致性。这些微小的误差可能是由于两种软件在生成设计曲面过程中,边坡工程量的处理上存在偏差导致的。
4 结 论
本文基于visual studio平台,进行二次开发,解决了因数据源差异导致的不同软件产生的误差,同时采用处理分析后的数据源导入传统软件和CIVIL 3D,得到完全一致的泥面线,为后期CIVIL 3D在疏浚航道整治中的运用提供了可靠的依据。