CesiumLab V1.4 新功能 BIM数据处理

时间:2024-03-22 13:15:19

我也没想到,BIM数据处理一下拖了这么久才有个交代。我们照例先放图
CesiumLab V1.4 新功能 BIM数据处理
Revit官方的示例数据
CesiumLab V1.4 新功能 BIM数据处理
隐藏屋顶+俯视
CesiumLab V1.4 新功能 BIM数据处理
曾经因为太大而无法导出无法处理的医院模型
CesiumLab V1.4 新功能 BIM数据处理
室内装修方案模型
最近和很多做bim的同行聊天,业内公认,目前 revit 在国内的BIM软件占有率大约在80%~99% ,也就是说搞定rvt模型,基本满足了绝大部分的需求。最开始可选的几种方案:
1,revit 导出 ifc,cesiumlab处理ifc格式;
此方案很快被否,原因是ifc并不能很好的保持revit内的相关属性,而且revit对ifc的导出和导入极度不友好。
2,revit 导出dae,obj等模型格式;
这个方案部分模型基本没有问题,但是对于大模型,基本没有几个插件能成功导出。另外这些格式不能保存bim属性,所以也被否决。
3,revit直接导出3dtiles;
这个方案对大多数用户来说是比较方便的。但是这种一步到位的方案,对我的开发带来极大的工作量,涉及到大量c#到c++之间的接口封装,短期内是不可完成的,遂放弃。
4,revit导出自定义格式;
这就是目前用的方式,我导出的中间格式有三种文件:
1) .lab 模型索引文件,引用了element文件
2) .ele element定义文件,包含了element的bim属性以及 三角网数据
3).ins instance定义文件,包含了instance的三角网数据。对部分rvt模型,里面有大量重复的instance标示不同位置的elements,这个文件会被多个ele文件共享引用,这样大大加速导出过程。
注意:因为实在精力有限,目前插件仅仅支持 revit 2018版本,请不要问我低版本怎么办,解决办法你懂的。
ok,大家是等不及了吧,我们来说说怎么做。
一,安装revit插件
CesiumLab V1.4 新功能 BIM数据处理
cesiumlab安装目录下的revit导出插件
把这三个文件拷贝到如下图所示位置
CesiumLab V1.4 新功能 BIM数据处理
插件拷贝到这里
二,打开revit 2018
第一次会提示是否加载插件,请选择 总是加载。
打开你准备的rvt模型,切换到3d视图
CesiumLab V1.4 新功能 BIM数据处理
调用导出插件菜单
CesiumLab V1.4 新功能 BIM数据处理
导出插件界面
自上而下:
第一行:方便我调试的功能,请忽略。
第二行:导出元素,【全部】就是所有element,【导出选中】就是导出当前选中的element。第三个调试使用,请忽略。
第三行:LOD,revit 通过Lod 来控制当前模型显示的精细程度,因为没有找到相关资料,大概测试这个LOD的范围是 0~15
0 表示最粗略,15表示最精细。对于一些超大模型,建议LOD选低一些。

第四行:右侧按钮选择一个待输出的.lab文件。
第五行:进度条 和 【导出】按钮
三,cesiumlab内处理
CesiumLab V1.4 新功能 BIM数据处理
选择这个功能
CesiumLab V1.4 新功能 BIM数据处理
导出参数界面
这个界面基本和场景处理没有任何区别。就不在赘述了。

  处理结束后,一样可以发布为3dtiles服务,并预览。
  后记:

这次耗时超过预期的主要原因是:
1,从小白开始学习revit二次开发,加上不断的修改导出格式,加快导出速度,时间就多了一些。

2,在做bim的同时,其实也在优化场景处理。底层场景处理和bim处理目前基本是一致的,只是输入不同。

最后感谢在开发过程中给我提供过帮助的 @李仙伟 @丰,两位无私的分享加快了开发的速度,谢谢。也同时感谢提供我测试数据的各位朋友,以及一直在使用cesiumlab的朋友们,没有你们,就不会有cesiumlab的进步。
CesiumLab V1.4 新功能 BIM数据处理
中国最专业的Cesium开发者社区