基于Revit的面层模型参数化建模方法研究与应用
2023-09-20罗远峰
罗远峰
(广州珠江外资建筑设计院有限公司)
1 引言
随着BIM 技术在国内的推广和普及,项目的BIM 应用也越来越深入,对BIM 的要求也越来越高。国内一些企业和软件公司开始对BIM面层模型的建模和算量进行了实践及探索[1-6]。
本文针对Revit 中的面层模型参数化建模进行研究,分析了其实现原理,利用Autodesk Revit 软件的二次开发接口,开发了面层模型参数化建模软件,并在项目中进行了实践。
2 面层模型
2.1 面层模型简介
在BIM 模型中,面层模型通常包含但不限于墙面层、楼地面层、天花面层、防水面层、木模板面层、涂料面层和其他材料面层等,通常根据构件的外露表面来创建[7-8]。
2.2 面层模型应用
BIM 面层模型可应用于辅助算量、辅助现场管控和施工技术交底等方面,具体如下:
1)辅助算量
传统算量方式的结果非常依赖算量软件,核对比较困难。通过建立BIM面层模型,将“量”可视化,技术人员可以通过点选或框选面层模型来获得所需的量,核对非常简便。
2)辅助现场管控
利用BIM面层模型可以获得各层、各区域、各房间相关材料的用量,辅助现场管理人员对施工作业面划分、材料领取、堆放等进行管理,合理分配资源。
3)辅助施工技术交底
通过BIM 面层模型,管理人员和施工人员可以更好地理解设计效果和施工方案,避免理解偏差导致返工。
2.3 面层模型建模存在的问题
在Revit中,面层模型的建模主要有软件功能不适用、手动建模困难、面层数量非常多等问题[9-10],具体内容如下。
1)软件功能不适用
在Revit中,墙体和楼板可通过“编辑类型>结构>核心边界”来添加的层,但该层不是独立的构件,无法用于统计量、工序模拟等操作,而且修改起来非常不方便。
2)手动建模困难
手动创建面层时,垂直面层通常使用墙体来代替,水平和斜面面层使用楼板来代替,这种做法容易影响原来的墙和楼板。而且,当墙面存在洞口和门窗时,手动调整轮廓很烦琐。另外,斜楼板面层建模也十分困难。
3)面层数量非常多
一般项目的面层模型,数量非常多,人工绘制工作量巨大,效率非常低。
3 面层模型参数化建模
3.1 软件基础
Autodesk Revit是Autodesk公司的软件产品,是我国建筑业BIM应用最主流的BIM应用软件之一。另外,Revit 具有很好的扩展性,提供了完善的二次开发API 接口,可供用户自行开发具有针对性的插件集。
在Revit 中,DirectShape 是一个类,可以设定不同的Category类别和Name名称,而且创建的Direct-Shape模型与原有模型不会有连接关系,非常适用于创建面层模型。
3.2 参数化建模流程
利用Revit二次开发技术,实现参数化面层建模的流程图如图1所示,具体实现流程如下。
图1 面层参数化建模流程图
1)获得需要生成面层模型的构件:可在Revit模型中单选构件,或者框选多个构件。
2)遍历构件,获得构件的所有面并处理:遍历选择的构件,利用构件Solid.Faces 方法来获得构件所有的面;同时过滤掉无须的面,例如生成木模板面层时,过滤顶面和底面。
3)遍历处理后的面,拉伸创建Solid:遍历处理后的面,根据该面的轮廓和法向量拉伸创建Solid,拉伸值为面层模型的厚度。
4)将Solid与周边构件进行布尔运算:获得差集后的Solid。当差集后的Solid的体积大于零时,则该面有外露表面,为有效的面。
5)创建DirectShape 类型的面层模型:根据差集后的Solid,创建DirectShape 类型的面层模型,并设置面层模型的名称、材质、面积、体积等属性。
3.3 参数化建模注意事项
在利用Revit 二次开发实现面层模型参数化建模过程中,由于Revit 软件及其API 存在功能缺陷,以及土建模型存在建模不够准确等情况,有许多需要注意的地方(见表1),由于文章篇幅有限,仅能展示部分内容。
表1 面层模型参数化建模注意事项(部分)
4 面层模型参数化建模软件
4.1 功能简介
本文利用Revit二次开发技术,根据上述参数化建模方法,开发了一套面层模型参数化建模软件,其能够根据用户预设的参数信息,自动在Revit中创建面层模型,有效地提高了面层模型的建模效率。
4.2 软件功能
面层模型参数化建模软件包含“模型扣减”、“房间面层”、“防水面层”、“木模板”等功能(见图2),功能描述如下:
图2 软件界面
模型扣减:根据用户设置的扣减规则,调整模型中构件的扣减顺序。
房间面层:自动识别房间内的外露表面,根据预设规则创建墙面层、楼地面层和天花面层,并利用共享参数记录面层信息。
防水面层:通过拾取房间,获得需要做防水的区域并创建模型,同时利用共享参数记录面层信息。
木模板面层:获得结构构件的外露表面,与相交构件进行扣减,计算获得模板面层,并利用共享参数记录面层信息。
5 工程应用
5.1 工程概况
某文化综合体项目,总用地面积2.565 万m2,总建筑面积8.934万m2,地上24层,地下2层,建筑总高度100m。项目BIM模型如图3所示,其中结构构件约有7143个,建筑构件约有4074个。项目是BIM正向设计项目,利用BIM 模型完成了从方案设计到施工图设计的全过程。
图3 项目BIM模型
5.2 辅助软件应用效果
项目利用面层模型参数化建模软件完成了模型面层建模和部分房间面层建模。
1)模型面层建模共生成35127 个模板面层模型(见图4),模板面积合计为18.53 万m2(该结果是根据结构外露面获得的实际面积,不含损耗部分),耗时约35min,相比人工手动建模,效率快很多。
每个面层模型均包含面层面积、面层体积、所属构件ID、所属标高等信息(见图5),可根据需要进行分层、分类别进行统计,操作非常灵活,能够很好地辅助现场人员对模板进行管理。
2)房间面层功能主要应用于地下室、办公区域、走道、卫生间、电梯厅等区域的面层建模。首先利用Revit的房间功能划分各个区域,其次执行房间面层命令,再次在设置窗口中(见图6)设置房间内天地墙的面层信息,最后即可自动生成房间内的面层模型。
图6 面层设置窗口
经过项目的应用,初步评估房间面层建模效率可提升一倍以上,可大大节省面层的建模时间,而且利用房间面层模型,可以获得相应的量,能够为现场精细化管理提供数据支撑。
6 结语
本文通过分析BIM模型中的面层模型及其存在的问题,对Revit中实现面层模型参数化建模进行深入研究,并结合Revit 二次开发技术,研发了一套面层模型参数化建模软件,并在工程项目中进行实践,得出以下主要结论:
①在Revit中,能够利用Revit二次开发API接口实现面层模型参数化建模,DirectShape 模型也非常稳定,不仅创建速度快,而且与相邻构件不存在连接关系,很好地解决了面层建模困难等问题。
②由于Revit 面层模型的量是根据外露面获得的实际量,不含损耗部分,所以与业内专业算量软件获得的量有偏差,但是Revit 面层模型具有量可视化、便于核对和统计形式多样等特点,能够更好地为现场精细化管控提供数据支撑。
③面层模型参数化建模软件能够有效提高设计人员的建模效率,节省大量的人力和成本。