BIM建筑网
更专业的BIM技术学习网站!


Revit二次开发|模型轻量化.RVT到JSON实现的测试

免费的Ai上线啦!
BIM建筑网自主研发,你想要Ai功能都在这里!
Ai·提升效率 技术答疑

最近作者一直在研究Revit模型轻量化显示在网页中,通过查找大量的资料,找到了一条可行的方法进行分享;

在开文前明确告诉大读者,将.RVT文件转为JSON文件再由three.js读取到网页,并没有实现,或者说只实现了一部分,数据不太完全,经测试模型中的曲面是读取的数据是不够的,现在还没有研究明白感觉是revitAPI中提供的基础数据接口不太精确。

好了进入正文:

将revit模型转为JSON文件,Revit API提供了一个接口:IExportContext;这个接口是API提供给用户的自定义导出接口,只要实现接口的方法就可以导出自己想要的数据。它的具体方法如下:

Revit二次开发|模型轻量化.RVT到JSON实现的测试

根据作者查阅相关资料都是利用这个来实现导出的,以下是作者所使用的一些源代码与JSON文件,需要者可以下载:

 

当然了读者也可以从以下链接处下载到:

如果读者可以快速读懂链接代码,测试时没有遇到问题,可以直接忽略以下内容;

作者在利用网上得来的代码进行测试时经常会爆出以下异常:

The given value is not a valid index of a normal of the polymesh. A valid valure is not negative and is smaller than the number of normals in the polymesh.

它的大致意思就是;给定的值不是polymesh的法向量的有效值,它的有效值必须小于法向量的索引值还不能为负数。

 

经过作者调试发现这个异常是由 PolymeshTopology.GetNormal(idx)引起的,且只有当PolymeshTopology的

同一个作者,特别感谢一下;很遗憾的是文中提到怀疑是Revit API是有缺陷的,原话如下:

Revit二次开发|模型轻量化.RVT到JSON实现的测试

截止目前,Revit模型导成JSON数据只能实现到这一步。然后如果读者有更好的解决方案或者疑问都可以留言一起交流;

如果后续作者有进一步的新成果也会及时分享出来,供大家学习!

 

 

 

 

微信公众号:xuebim
关注建筑行业BIM发展、研究建筑新技术,汇集建筑前沿信息!
← 微信扫一扫,关注我们+
赞(0) 打赏
BIM建筑网 » Revit二次开发|模型轻量化.RVT到JSON实现的测试

评论 抢沙发

评论前必须登录!

 

BIM建筑网,更专业的BIM技术学习网站!

关注建筑新动态,分享建筑新技术

联系我们关于BIM建筑网

觉得文章有用就打赏一下小编吧

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

扫码登录

微信「关注」,快捷登录
扫码关注后会自动登录
注册登录代表您已同意《用户许可协议》
账号登录 | 其他登录

|登录

找回密码

|账号登录注册