基于Revit的涵洞参数化自动建模研究
路途姚远
2023年02月14日 13:44:27
只看楼主

BIM技术作为建筑行业数字化的排头兵,受到了越来越多的关注。在交通行业,模型作为信息的载体,是实现数字化的首要前提,目前涵洞的BIM建模基本上都是通过手动完成,这种手动模式无法适应涵洞高效、精确的建模需求,而且不能满足项目建设全生命周期的管理需要,为了改变这一现状,本文提出一种基于Revit的涵洞参数化自动建模方法。

图片


BIM技术作为建筑行业数字化的排头兵,受到了越来越多的关注。在交通行业,模型作为信息的载体,是实现数字化的首要前提,目前涵洞的BIM建模基本上都是通过手动完成,这种手动模式无法适应涵洞高效、精确的建模需求,而且不能满足项目建设全生命周期的管理需要,为了改变这一现状,本文提出一种基于Revit的涵洞参数化自动建模方法。


涵洞标准族样板的建立


首先在Revit中建立参数驱动的标准涵洞族样板;接着在Revit中使用C#进行二次开发,实现涵洞的参数化建模;最后通过数据库技术,以模型作为载体,通过链接数据库的方式,实现涵洞的信息化,为项目建设全生命周期的管理打下坚实基础。


图片

涵洞参数化自动建模技术路线


族的作用


作为Revit模型的重要载体,是建立模型的基本图素。族的作用不仅仅是以不同族拼接建立模型,还在于族可以通过参数值的调整,形成不同族的类型实例,这将极大地拓展各类族的适用范围,并方便设计师高效精确地进行参数化设计。对Revit族进行自定义参数化,将避免用户在使用不同尺寸参数的同一族时的重复建族,而是可以直接通过调整相关参数达到同样效果。这将很大程度地将设计师从繁复的设计中解放出来,提高设计效率,改善用户体验。应用涵洞标准族,可以实现对常见相关类型的涵洞,包括单双基础、盖板涵、圆管涵及跌水井、挡土墙等附属设施进行参数化设计,并可以实现对常见类型进行参数化转换。


整体模型族的参数驱动


通过对涵洞基础族的参数进行数字化驱动,通过修改模型开关命名参数,就能实现多种涵洞基础的变化,如表1所示。


图片


单个构件族的参数驱动


通过对八字墙尺寸参数的设置,就可以驱动八字墙尺寸的参数化改变。


图片

涵洞八字墙族及尺寸参数


基于Revit的二次开发参数化建模实现


技术选型


Revit提供了一套完善的API来帮助用户进行开发,目前在Revit中开发有两种方式,第一种方式是通过Dynamo中可视化节点编程来实现,第二种方式是通过C#直接调用Revit Api进行开发。本文采用的是第二种方式,因为较第一种方式而言,直接调用Revit提供的Api接口,在开发上更为灵活,程序上更容易调试,并且通过C#可以很方便地链接数据库来对模型数据进行管理。


参数化自动建模基本思路


参数化自动建模思路如图所示:


图片


1.提取路线数据及构件参数形成建模所需表格;

2.生成2D、3D设计线,并且计算出构件的位置以及旋转角度;

3.根据上一步中计算出来的位置值、建模表格中构件的尺寸参数和行业规范编码参数等,对标准族库进行赋值;

4.将整个过程中产生的关键数据写入数据库。


程序架构


参数化自动建模程序采用了三层架构的方式,过三层架构,可以减少各个层之间的耦合,方便程序管理、拓展以及维护。


(1)界面层

整体界面采用WPF技术,子窗体通过导航技术实现,和Revit Api有关的操作通过在按钮中调用外部事件实现。


图片

主程序界面


(2)业务逻辑层

业务逻辑层主要包括:根据行业标准《公路工程设计信息模型应用标准》创建涵洞信息数据库、打开Excel表格生成涵洞模型、唯一标志符生成、将相关属性写入数据库、查看图纸五大模块。每一层都是独立的封装,方便了主程序的调用,减少了程序之间的耦合性。


图片

行业规范编码

图片

涵身属性信息


在将《公路工程设计信息模型应用标准》中的编码,转化为数据库中的编码数据库时,采用了面向抽象编程的思路,在行业规范编码整体格式不变的情况下,如果内容变了,无需改变代码,直接一键同步到数据库中。通过打开填写好的Excel表格,能够快速生成模型,这里采用了多线程技术,减少了几何运算所花费的时间,并通过日志系统,可以快速发现Excel表格填写中的错误;此外Excel表格还支持多个涵洞数据填入,这样可以实现模型的批量生成,进一步提高了建模效率。这里的唯一标志在模型的每个构件上都会有,数据库中对应的数据也存在,这样就实现了数模分离,通过数据库可以不断扩展数字化信息。在相关属性写入数据库时,不仅写入了模型的几何信息,还包含了行业标准编码等建设全生命周期的管理需要的相关信息。通过图纸展示功能,能同步查看原图纸,及时和现有模型进行比对,快速查错。


(3)数据库访问层

数据库访问层,主要包括行业规范编码访问层,以及模型属性访问层。通过SQLHelper类的使用,以及基本业务增删改查的封装,大大简化了原有的SQL访问技术,让写代码的人更专注于业务的实现。


(4)模型层

模型层由洞口构件、洞身构件、基础构件组成,依据行业标准《公路工程设计信息模型应用标准》制定,成为界面层、业务逻辑层、数据库访问层的连接纽带。在Net技术下,数据库模型和类模型的生成上,主要有Code First技术与DataBase First技术,不太适合原始数是Excel表格且经常变化的情形。基于此,笔者采用C#开发了一套Excel First技术,能够一键基于大量原始Excel模型表格成对应的数据库模型和类文件。Excel表格如果改了,只需一键即可同步到数据库模型和类文件中。


通过以上步骤就能快速、准确地生成常见的圆管涵模型、盖板涵模型以及箱涵模型。


图片

圆管涵

图片

盖板涵

图片

箱涵


思考与展望


目前使用Revit二次开发涵洞建模程序时,常规的涵洞模型都能快速地生成。对于异形结构,由于Revit本身没有提供很好的族技术支持,实现起来较为困难,需要进一步深入研究。


内容源于网络,旨在分享,如有侵权,请联系删除


相关资料推荐:

大型涵洞式渡槽动力建模研究

https://ziliao.co188.com/p47671717.html


知识点:基于Revit的涵洞参数化自动建模研究



内德维德
2023年02月15日 10:02:31
2楼

不错的资料,谢谢分享。。。。

回复
ujing-f16a2
2023年02月15日 21:09:16
3楼
不错!谢谢!
回复
wyy623
2023年02月16日 01:22:19
4楼

不错的资料,谢谢分享。。

回复

相关推荐

APP内打开