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

 我也没想到,BIM数据处理一下拖了这么久才有个交代。我们照例先放图

 
Revit官方的示例数据

 

 
隐藏屋顶+俯视

 

 
曾经因为太大而无法导出无法处理的医院模型

 

 
室内装修方案模型

     最近和很多做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安装目录下的revit导出插件

     把这三个文件拷贝到如下图所示位置

 
插件拷贝到这里

 

二,打开revit 2018

     第一次会提示是否加载插件,请选择 总是加载。

      打开你准备的rvt模型,切换到3d视图

 
调用导出插件菜单
 
导出插件界面

自上而下:

第一行:方便我调试的功能,请忽略。

第二行:导出元素,【全部】就是所有element,【导出选中】就是导出当前选中的element。第三个调试使用,请忽略。

第三行:LOD,revit 通过Lod 来控制当前模型显示的精细程度,因为没有找到相关资料,大概测试这个LOD的范围是 0~15

              0 表示最粗略,15表示最精细。对于一些超大模型,建议LOD选低一些。

第四行:右侧按钮选择一个待输出的.lab文件。

第五行:进度条 和 【导出】按钮

 

三,cesiumlab内处理

 
选择这个功能
 
导出参数界面

     这个界面基本和场景处理没有任何区别。就不在赘述了。

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

 

后记:

这次耗时超过预期的主要原因是:

1,从小白开始学习revit二次开发,加上不断的修改导出格式,加快导出速度,时间就多了一些。

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

    最后感谢在开发过程中给我提供过帮助的 @李仙伟  @丰,两位无私的分享加快了开发的速度,谢谢。也同时感谢提供我测试数据的各位朋友,以及一直在使用cesiumlab的朋友们,没有你们,就不会有cesiumlab的进步。

 

 

 
中国最专业的Cesium开发者社区




posted @ 2018-12-04 10:58  Cesium实验室  阅读(3997)  评论(0编辑  收藏  举报