APP下载

扶壁式挡土墙三维建模的二次开发

2020-12-14陈蕾蕾左威龙刘占午

水利技术监督 2020年6期
关键词:挡土墙二次开发插件

陈蕾蕾,左威龙,刘占午

(1.江苏省水利勘测设计研究院有限公司,江苏 扬州 225127;2.江苏省水利建设工程有限公司,江苏 扬州 225007)

水工挡土墙设计是水利工程项目整体设计的重要组成部分,它能够保证水利工程实现长期、持续、稳定、安全的运行,对水利工程功能的发挥起着非常重要的作用[1]。扶壁式挡土墙是水工挡土墙的一种类别,是一种钢筋混凝土薄壁式挡土墙结构,由立板、底板、齿坎及扶壁组成,在高度差大[2]的填方区建筑边坡工程的建设中,扶壁式挡土墙可以很好地解决土地限制、施工速度慢、施工工艺繁琐、材料浪费和质量难控制等问题[3]。扶壁式挡土墙依靠扶壁把立板、墙踵板连接起来,共同承受土压力产生的弯矩和剪力,具有加筋的作用[4],可改善立板和墙踵板的受力条件,提高结构的刚度和整体性,减小立板的变形。随着信息化技术的发展,三维建模设计逐渐走进水利工程行业中[5],三维建模可以直观高效地展示模型的结构信息,保存物体的三维数据,产生任意视图[6]。由于三维建模设计的优越性[7],已有不少企业和科研单位将三维设计应用于水利工程中[8]。扶壁式挡土墙三维建模主要考虑挡土墙截面轮廓和导线的绘制,可将截面轮廓划分成底板、立板和扶壁等模块,但现有的三维建模平台主要是基于工业与民用建筑的通用三维设计平台,界面内提供的设计模块(梁、板、柱)主要是面向建筑设计的[9],为提高水工模型的建模效率,亟需对平台进行二次开发。经研究比对,Autodesk 公司的Revit软件产品具有较好的兼容性,能灵活协同工作流程,价格适中,通用性更强[10],且提供了二次开发接口,本文将基于Revit平台,对扶壁式挡土墙数理模型的参数化、二次开发流程和应用效果等方面进行阐述。

1 扶壁式挡土墙三维建模的参数化

参数化建模主要是将实体对象进行参数化描述的过程[11],扶壁式挡土墙模型参数化主要包括截面轮廓和导线形式2个方面,需将它们各自独立参数化。

1.1 扶壁式挡土墙截面的参数化

扶壁式挡土墙截面参数化主要将挡土墙模型拆成若干模块,如墙体、扶壁、压顶、齿坎等,分别建成独立的参数模块[12],每个模块设置本模块需要的参数,且均可通过参数驱动独立模型变换,最后通过调入独立模块形成一个嵌套的模块整体,以此将复杂图形的参数化问题简单化。扶壁式挡土墙的模块框架图和截面参数的详细注解如图1所示。

1.2 扶壁式挡土墙导线的参数化

扶壁式挡土墙导线参数化首先需要考虑导线[13]的布置方式是圆弧型还是直线型。若是圆弧型导线需要考虑圆弧半径(通常设定为前墙前沿线的半径)、起始角度、终止角度和圆心坐标;若是直线型导线需要考虑直线长度、起点坐标和扩散角度,若是异型挡土墙还需要考虑首末端断面的夹角参数,当首末端断面夹角之和,即β1+β2=180°时可设置“扶壁与截面平行”,达到扶壁旋转方向与挡土墙截面平行的效果,导线的参数情况如图2所示。

图1 扶壁式挡土墙截面几何参数设置

图2 导线参数设置

1.3 扶壁式挡土墙参数的读取和存储

根据参数化划分的模块分别创建Wall(墙体)、Arm(扶壁)和Curve(导线)3个类,Wall中包含Plate(立板)和Floor(底板)2个结构体,这些类主要用于存储操作中的参数,并在模型生成时自动保存在本地txt文件中,可以通过窗体界面修改txt的存储路径,如果需要变更生成的扶壁式挡土墙只需在窗体界面中导入txt文件即可得到挡土墙的所有建模信息,包括截面参数和导线信息,修改对应参数就能完成变更。

2 扶壁式挡土墙二次开发的流程

Autodesk Revit提供了应用程序编程接口API(Application Programming Interface),用户可以使用API来开发自己的应用程序操纵和访问Revit,从而实现不同的标准和需求[14]。扶壁式挡土墙三维建模的二次开发主要使用Visual C#语言,基于Revit提供的API 编程接口进行定制化开发,二次开发插件会在Revit启动时以按钮的形式自动加载。

2.1 设计流程

Revit拓展功能分为2个步骤:首先创建一个外部命令(External Command),主要用于实现目标功能,外部命令中可调用Revit提供的API接口,如放样、拉伸、旋转等命令以完成程序代码;其次创建一个外部应用(External Application),主要用于在Revit界面中添加菜单或工具栏,可将外部命令代码封装到按钮中放置在Revit界面上,方便用户便捷实用,主要实现方法是OnStartup和OnShutdown[15]。扶壁式挡土墙二次开发外部命令流程图如图3所示,外部应用开发步骤与外部命令一样,只是派生类与实现方法不一致。

2.2 应用流程

在Revit平台上手动建模步骤[16]繁琐,二次开发插件可简化建模过程,用户只需要了解挡土墙的基本结构并输入对应参数就可以生成模型,可有效提高工程效率。手动建模与插件建模过程对比见表1。

图3 外部命令二次开发流程图

表1 手动建模与插件建模对比表

3 扶壁式挡土墙三维建模二次开发应用效果

扶壁式挡土墙二次开发插件可快速生成三维挡土墙模型,以圆弧型和异形直线型扶壁式挡土墙创建为例,其参数设置见表2,生成的挡土墙效果如图4所示。

4 结语

扶壁式挡土墙三维建模的二次开发包含模型的参数化和API接口的使用。模型的参数化是将复杂模型拆分成独立模型,以子模型驱动整体模型的过程,每个子模型的参数独立设置,需注意模型间的关联性,避免参数重复划分。API接口的使用主要涉及平台提供的接口数据和手动建模的过程,通过代码将手动建模的步骤分解成程序段,利用命令逐一有序的运行程序段最终生成模型。二次开发插件可有效提高模型的创建效率,且操作简单便捷,但插件依赖于Revit平台,如需转换平台,需先在Revit

表2 扶壁式挡土墙参数设置

图4 扶壁式挡土墙应用效果图

上创建模型再导出成其他平台支持的格式。本文论述的二次开发设计模式为水闸、泵站等模型的开发提供了借鉴经验。

猜你喜欢

挡土墙二次开发插件
市政道路工程常用挡土墙类型探析
浅议桩基托梁挡土墙结构的设计与应用
自编插件完善App Inventor与乐高机器人通信
基于OSGi的军用指挥软件插件机制研究
浅谈Mastercam后处理器的二次开发
浅谈选厂常见挡土墙设计
例谈课本习题的“二次开发”
基于jQUerY的自定义插件开发
常用挡土墙的主要特点与设计要点分析
ANSYS Workbench二次开发在汽车稳定杆CAE分析中的应用