wpf columndefinitions自动调整_基础之处见优化——基于Revit的涵洞参数化自动建模研究...

717039fec1f7570c87b715ed1bcaa263.png

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

涵洞标准族样板的建立

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

2d8d3d74fd1a916be0ac006ee1f9860f.png

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

族的作用

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

整体模型族的参数驱动

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

c3637977657204a56a30d72b4bfb8cbc.png

单个构件族的参数驱动

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

7ab493d55667d9e321793ec2cbeaed91.png

涵洞八字墙族及尺寸参数

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

技术选型

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

参数化自动建模基本思路

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

2ec331261d38563557999f888db80bc0.png

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

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

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

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

程序架构

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

(1)界面层

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

d3c1805c2e70b53b0a563fd320d6e2df.png

主程序界面

(2)业务逻辑层

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

9aa6bab6fdfeb93bc14900d9bfebd9f9.png

行业规范编码

22906aaa4d07304bb5d0f5f14eb22bec.png

涵身属性信息

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

(3)数据库访问层

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

(4)模型层

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

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

41b38e779e4bc9cdf342a455ef0325a3.png

圆管涵

4796a32761cff72df84a009d71056786.png

盖板涵

dba2c0120cc2e86e008c94660e044b58.png

箱涵

思考与展望

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


​本文刊载 /《桥梁 · BIM视界》杂志 2020年 第2期 总第13期

作者 / 胡唯哲 朱明 肖春红

作者单位 / 四川省交通勘察设计研究院有限公司BIM中心

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值