这两年 bims 系统渐渐增加。需要的建筑模型几乎都需要 revit模型导出。 不编程的做法是: revit->navis->fbx。 fbx可以被很多软件和游戏引擎识别。 但是这种导出会有很多问题。比如材质丢失、附加属性无法导出等,同时导出速度非常非常慢。 一个50m的文件可能需要几个小时。 如果使用 three.js,可以配合blender导出为js文件。同样存在以上问题。导出效率可能也是50m文件 需要一晚上。

最终的解决办法 是 写revit 插件进行手动导出。看似比较麻烦,实际revit导出插件步骤挺简单。revit的开发插件为c#, 一般使用 revit2016配合 vs2012或者 vs2013 . 导出为js文件,格式简单。但是对于多模型对象分别导出,three.js的js格式无法保存多个对象。需要分别保存文件。具体可能没深入研究,也许有多模型的写入格式?

c#插件导出,有极大问题,那就是效率。主要为 格式化 各种数值的时候。 这是对比c++可以慢10倍的。所以如果要做到非常高的效率。还得需要在插件中,再次调用C++的dll进行数据导出才会变快。否则一个100m的文件可能需要几个小时。(根据写入算法的水平可能有区别。目前能做到140m文件导出数据json50m,8分钟完成。当然这里面包含了顶点去重复,面内多顶点优化等操作)。

对于顶点材质等信息去重复,经常 需要用到字典,切忌使用 list这种暴力搜索。

想要进一步压缩 按照lod的思路,对顶点相关的三角面计算顶点权重,进行取舍,可以做 lod模型。

如果按照相同对象,独立导出,再记录位置 缩放 旋转等信息。这样导出,可以进一步提高速度。否则对于 bims模型动辄百兆模型,一次导出没有几天也得几个小时。特别是管线导出特别多。 所以revit模型导出的优化(数据量优化,速度优化)总结为:

1、顶点去重复。字典或者hash优化速度。可减少数据10-30%

2、面内顶点优化,字典或者hash优化速度。可以减少数据量10-30%

3、c++优化,这个可以比c#提高10倍。

4、空间顶点相邻三角面 Lod 剔除。这个会影响展示效果。不影响效果的情况下 只能提高10-20%的数据量

5、按照同类对象导出,这个是终极办法,估计可以达到2-10倍数据量压缩。也许可以速度上也提高数倍。(该办法正在研究)

BIM Revit 模型导出 1相关推荐

  1. BIM Revit 模型导出 2

    前面说了revit的简单导出,这种方法为导出整个revit为一个模型文件.通常这种模型文件非常巨大. 1实际3d使用过程中, 这种巨大的3d模型文件,会有很多问题: 1)3d引擎无法根据可视范围对渲染 ...

  2. revit 转换ifc_Revit导出ifc步骤有哪些?Revit 模型导出 .exe 脱机文件的方法步骤

    文章来源:FreeBIM 序言 大家在做项目的时候是不是遇到过这种情况,自己辛辛苦苦做了一个很好的Revit模型(尤其是精装修项目)需要给客户展示交付或者单纯自己想给亲朋好友嘚瑟一下,这个时候会面临一 ...

  3. 【BIM+GIS】Supermap打开BIM Revit模型的方式

    Revit导出Supermap GIS格式数据的方法通常有三种:插件式导出.直接导入和标准交换格式(IFC)导出. 文章目录 一.Revit安装Supermap插件 1. 安装Supermap插件 2 ...

  4. Revit模型导出fbx带标准材质

    1.安装软件revit2018和Autodesk Navisworks Manage 2018 2.revit导出nwc格式 3.Navisworks软件打开 4.Navisworks导出fbx 5. ...

  5. Revit模型如何在WPF三维展示

    1.效果展示 2.思路解析 WPF中的3D入门 思路主要是依照这篇文章进行的.(该文章用的是一个人体骨骼的样例,各个部件还能动,相较于我这个要复杂一些,以后有分部运动的需求的时候可以再深入了解一下) ...

  6. 将Revit模型转入unity中

    注意:先把Revit模型放到基点中心,方便后续unity中的旋转等操作. 先将Revit模型导出到Navisworks中 然后在Navisworks中把NWC导出为FBX格式 导出时单位改为毫米 FB ...

  7. SuperMap BIM+GIS-Revit模型处理-第三节 Revit模型优化方法及模型缓存策略

    在模型导入SuperMap平台之后,在应用过程中必然会遇到性能问题,随之而来的就是如何优化模型.本文将总结使用经验和理解,从实际出发介绍几种优化方法和缓存策略.以下操作均在SuperMap iDesk ...

  8. 好用的土建bim软件丨Revit模型如何导入Lumion?

    好用的土建bim软件丨Revit模型如何导入Lumion? 当我们需要在使用Revit后向甲方或施工方展示方案时,我们需要将模型导入Lumion进行漫游视频.Revit模型如何导入Lumion? 以下 ...

  9. 【BIM入门实战】Revit模型导入到第三方软件方法汇总

    本文以案例的方式,汇总展示了Revit模型导入到ArcGIS Pro.3ds max.Navisworks.Lumion.InfraWorks等的方法. 文章目录 1. Revit导入ArcGIS P ...

最新文章

  1. 首发 | 用声音改变生活,标贝科技完成 A 轮 5000 万人民币融资
  2. 美团提出基于隐式条件位置编码的Transformer,性能优于ViT和DeiT
  3. python实现简单计算器功能键介绍_Python实现的简单计算器功能详解
  4. ubuntu 21.04安装OBS Studio录屏软件
  5. Jquery validate验证表单时多个name相同的元素只验证第一个的问题
  6. 异常处理-RestFul的异常处理
  7. C++ primer第六章6.6函数匹配
  8. 嘉益仕(Litns)带您读懂MES系统:选型篇
  9. 承担集团数万应用、研发人员日常工作,阿里持续交付平台的设计、迭代之道... 1
  10. NAT对语音业务的影响(终端控制方案…
  11. 5.被动回复用户消息
  12. Codechef Black Nodes in Subgraphs(树型背包)
  13. webbrowser在vb中叫
  14. mysql的update和case when同步使用
  15. 【图像分割】基于matlab GUI多种阈值图像分割(带面板)【含Matlab源码 733期】
  16. python 串口接收多线程与界面通信_Python之PyQT多线程串口代码分析
  17. 【USB设备设计】--复合设备,双HID高速(64Byte 和 1024Byte)
  18. SEO网站优化注意5个小细节,降低网站跳出率
  19. 计算机保研英语,计算机保研面试英文自我介绍
  20. vue中进度条写法_Vue进度条progressbar组件功能

热门文章

  1. HyperSnap基本用法
  2. html语言更改字体大小,在HTML中更改字体大小
  3. python在土木领域_自学python需要注意的问题
  4. android treble项目HIDL学习总结
  5. SuperOneClick一键Root工具使用方法
  6. 计算机审计实习遇到问题及解决方法,浅析审计实务教学难题及解决途径
  7. 最新版 Office 三国杀,体验式寻找最强电子表格
  8. 兄弟连区块链入门教程btcpool矿池源码分析环境搭建
  9. 阿酷原创:视频微门户列表功能教程
  10. Linux环境下NDK JNI开发实例