孙 斌
(河北省水利水电第二勘测设计研究院 数字工程中心, 石家庄 050021)
基于MicroStation二次开发的平原水闸参数化设计
孙 斌
(河北省水利水电第二勘测设计研究院 数字工程中心, 石家庄 050021)
建模和统计工程量是水闸工程设计的重要内容,本文在对平原水闸进行参数化描述的基础上,基于MicroStation的二次开发技术,采用VBA实现平原水闸的参数化建模和自动算量程序.实例证明,参数化设计程序运行稳定,建模速度高,基于精确的三维模型计算工程量,工程量计算结果的精确度高,可用于水闸工程的设计和方案比选.
MicroStation; 二次开发; 参数化建模; 自动算量
在华北地区常见的平原水闸类工程的设计过程中,往往需要进行繁琐的多方案比选和调整,设计人员因此需要完成大量的绘图和工程量统计的工作.即使采用先进的三维协同设计体系进行水闸设计,工作效率仍然难以有效提高.
MicroStation软件是一套专业电脑辅助绘图软件,在实体建模、复杂曲面建模、信息集成、模型渲染、可视化等方面具有强大的功能,并有多种二次开发接口帮助用户扩展软件的功能.目前该软件在水利、电力、港口、市政、桥梁等行业有着广泛的应用.
本文基于MicroStation软件的二次开发技术,开发了一套参数化设计程序,实现了水闸的参数化建模、自动统计工程量等功能.
MicroStation为用户提供的二次开发接口主要包括:MDL(MicroStation Development Library)、MicroStation VBA、MicroStation Addins等.
MDL是以C语言为基础的结构化编程语言,具有自己的运行时间库、编译程序、链接程序、库管理程序.MDL可以直接在MicroStation中运行并且表现为MicroStation本身的一部分,程序运行效率较高,但入门困难[1].
VBA是MicroStation内嵌的一种基于VB语法的面向对象的编程工具,与MicroStation同时运行,并通过MicroStation Object Library接口对MicroStation进行编程控制.它不仅能控制MicroStation对象,也能向其它应用程序发送数据或从中提取数据.VBA语法结构简单,便于用户快速高效地开发出适用的应用软件[2].该方法的缺点是窗体资源有限,不对代码进行编译,程序的保密性差.
Addins是一种基于.NET平台的全新的开发方式,使用C#、VB.NET等语言编程,通过编译生成DLL文件与MicroStation建立联系.该方式的优点是可以使用丰富的WinForm资源设计出美观实用的界面,能够方便地同.NET平台的其他软件集成[3].但是相对于MDL和VBA,Addins编译生成的程序运行在MicroStation程序的外部,对三维模型元素的操作速度较慢.
本文采用VBA,在MicroStation的集成开发环境(IDE)中实现平原水闸的参数化建模和自动统计工程量的程序编写.
平原水闸一般包括6个组成部分:上游河道段、上游连接段、闸室段下部结构、闸室段上部结构、下游连接段、下游河道段.上下游河道段还可能根据材料类型再进行分段[4].
设计水闸工程就是对水闸的各部位构件的形状、位置、材料等属性逐一进行描述.如水闸闸室下部结构需要用闸孔数、孔口宽度、孔口高度、闸室长度、边墩厚度、中墩厚度、底板厚度、门槽位置、插入点坐标等参数进行描述.其他部位也存在众多的不同结构型式和组合方式,因此完整描述一个水闸工程需要大量的参数.
通过研究发现各部位存在不同程度的相互影响.主要参数及参数之间的关系分析如下:1)闸室下部结构主要由闸孔布置决定,闸孔数及闸孔组合形式有多种.2)闸室上部结构同时受闸孔布置、自身结构型式(固结或简支)、主次梁布置、吊点数的影响.3)进出口渐变段的连接翼墙型式有圆弧、八字、八字圆弧等不同的布置形式.翼墙之间的河道底板的形状由翼墙边界的形状决定.渐变段近闸侧宽度由闸孔布置参数决定.渐变段远闸侧宽度由与之相邻的河道底宽决定.4)上下游河道防护结构有规则和渐变等结构形式.上下游河道防护需要区分混凝土、浆砌石、干砌石等不同的材料信息.5)相邻结构之间存在相对位置约束、边界约束.平原水闸的主动参数及从动参数关系见图1(图中箭头起点为主动参数,终点为从动参数).
图1 参数关系图
利用各部位之间的几何、逻辑关系用一些最基本的参数的组合描述其他参数,能够最大限度减少参数的数量.主动参数为闸孔数、闸室长度、孔口宽度、孔口高度、闸墩厚度、闸底板厚度、进出口翼墙型式、翼墙平面布置参数、翼墙断面尺寸、渐变段底板厚度、上下游防护材料类型、分段数、分段长度、防护断面尺寸、河底纵坡、上部结构的结构形式、上部结构断面尺寸等.
3.1 参数化建模程序介绍
平原水闸的参数化建模程序分为闸室段下部结构、闸室段上部结构、上游连接段、上游河道段、下游连接段、下游河道段6个建模模块和1个统计工程量模块.
建模模块主要采用SmartSolid、Complex-Shape、BsplineSurface等对象类型实现高精度建模.主要方法如下:1)对于简单模型,采用拉伸、沿路径扫略的方法生成.2)对于渐变段(渐缩、渐扩)模型,采用根据首、末端断面和路径放样的方法生成.3)对于边界受其他构件约束的不规则体块,采用利用辅助体逐步剪切的方法生成.从完整的设计流程出发,在建模过程同时设置模型的材料类型、图层、线宽等信息,用于后续工序根据材料统计工程量和出图.
统计工程量模块提取三维模型中所有体块元素的体积属性信息,进行工程量计算并输出.因此在高精度模型的前提下工程量计算的结果是完全精确的.工程量清单按部位集中统计和排序,并对各部位按材料汇总结果.清单中输出了各体块的ID号,以方便复核结果.工程量输出结果的文件格式为.xls格式.
3.2 具体实现过程
平原水闸的参数化建模流程图见图2,具体实现过程为:
1)在MicroStation的模型空间里启动程序,运行闸室下部结构建模模块,输入下部结构参数,生成闸室下部结构,并向其他模块传递定位参数.
2)运行闸室上部结构建模模块,输入上部结构参数,生成闸室上部结构.
3)依次运行闸室上游渐变段模块、上游河道段模块或下游渐变段模块、下游河道段模块.闸室上游或下游建模过程采取先近闸侧后远闸侧的步骤依次建模.每一步骤需要使用上一步骤传递来的定位参数计算定位点坐标,并向下一步骤传递定位参数.
4)完成建模后,统计并输出工程量.
图2 建模流程图
采用本文的参数化程序对某4级平原水闸工程进行设计.
4.1 工程参数
1)水闸孔数为2孔,闸室长13.5 m,单孔净宽5.0 m,孔口高5.8 m,底板厚1.1 m,中墩厚1.0 m,边墩厚0.8~1.0 m.2)上游渐变段设悬臂式圆弧翼墙,圆弧半径10.0 m,立墙高5.8 m,河底设0.4 m厚钢筋混凝土铺盖.3)上游河道段依次设10 m长浆砌石防护和5 m长干砌石防护,厚度均为0.4 m.4)下游渐变段设悬臂式八字圆弧翼墙,八字扩散角为10.9°,圆弧半径6.0 m,立墙高6.8 m,河底设钢筋混凝土消力池,消力池底板厚0.7 m.5)下游河道段依次设10 m长浆砌石防护和10 m长干砌石防护,厚度均为0.4 m.
4.2 参数化设计结果
使用上述参数输出的结构模型如图3所示.程序的运行仅需5 min时间.而同样规模的模型,采用手工建模设计需要5 h以上.
图3 某平原水闸模型
输出的部分工程量结果如图4所示.直接根据设计模型得到变厚度边墩等复杂空间结构的精确工程量.
图4 部分工程量输出结果
平原水闸设计过程需要考虑大量的构件的形状、位置、状态参数,设计、修改和统计工程量的过程需要花费大量的时间.
本文介绍的基于MicroStation软件二次开发技术的平原水闸参数化设计程序,实现了平原水闸的参数化建模和自动统计工程量.
通过实例检验,该程序使复杂的建模过程得以简化,并得到精确的三维模型和工程量.该程序可用于水闸工程的详细设计和方案比选.
[1] 马 沧,蒋海峰,王金锋.三维模型参数化开孔研究[J].水力发电,2014,40(8):60-62.
[2] 周 虹.基于VBA的Auto CAD打印输出环境定制开发[J].实验室研究与探索,2010,29(7):58-60.
[3] 内格尔,埃夫琴,等.C#高级编程[M].北京:清华大学出版社,2010.
[4] 陈宝华,张世儒.水闸[M].北京:中国水利水电出版社,2003.
[责任编辑 王康平]
A Parameterized Modeling Routine of Sluice in Plain Area Using API in MicroStation
Sun Bin
(Hebei Second Design & Research Institute of Water Conservancy & Hydropower, Shijiazhuang 050021, China)
Quick generation of a 3D model and calculating project quantities are important issues in the process of designing a sluice project in plain area. The representation of the sluice project is investigated. A Microsoft Visual Basic routine for the parameterized geometric modeling of sluice project using API in MicroStation is described in this paper. A case study shows that the parameterized modeling routine developed here can rapidly generate 3D model of sluice project to calculate project quantities automatically. The routine can be directly used in designing sluice project and comparison in different designs.
MicroStation; secondary development; parametric modeling; calculating quantities
10.13393/j.cnki.issn.1672-948X.2016.05.020
2016-02-15
孙 斌(1983-),男,硕士研究生,工程师,主要研究方向为BIM技术在水利工程自动化中的应用.E-mail:43715434@qq.com
TV222.1
A
1672-948X(2016)05-0103-04