[发明专利]一种Revit到D5渲染器实时渲染的数据转换方法有效

专利信息
申请号: 202011150020.9 申请日: 2020-10-23
公开(公告)号: CN112258615B 公开(公告)日: 2023-10-03
发明(设计)人: 张赫;原琪皓;韩静烨;光昌正;刘景明;白路;朱海天;黄首志 申请(专利权)人: 南京维伍网络科技有限公司
主分类号: G06T15/00 分类号: G06T15/00
代理公司: 南京利丰知识产权代理事务所(特殊普通合伙) 32256 代理人: 任立
地址: 211500 江苏省*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 revit d5 渲染 实时 数据 转换 方法
【权利要求书】:

1.一种Revit到D5渲染器实时渲染的数据转换方法,其特征在于:通过Revit插件读取当前项目的模型信息,处理后发送给Native连接模块做进一步的优化,最后同步到D5渲染器中,其具体包括以下步骤为:

S1:首先通过Mesh筛选和生成过程,产生有效的可以导出的Mesh集合,具体为:

(1)筛选有效模型

Revit提供了IExportContext接口和CustomExporter类,通过实现IExportContext接口,并创建一个实例传递给CustomExporter,实现导出的功能,其中,IExportContext接口的OnViewBegin方法会在每一个View被导出之前调用,用来将不需要导出的View跳过,而OnInstanceBegin方法会在每一个Revit中的对象Family Instance被导出之前调用,用来获取当前Instance的Transform矩阵,OnElementBegin方法会在每一个Revit里的元素被导出之前调用,根据其Category属性可以将用户不可见的、标注和分析元素跳过,另外属于用户选择的需要排除的Category的元素也会需要跳过,所有没有被跳过的元素的Mesh信息会在OnPolyMesh方法中给出;

(2)Mesh生成:模型材质抽取和模型三维数据抽取

a在IExportContext接口的OnPolyMesh函数中,Revit会提供计算好的模型顶点、贴图坐标以及法线数据,Revit插件将这些数据转换为Native模块可以识别的格式,并调用函数将数据发送过去;

b材质抽取由专门的MaterialExtractor实现,Revit中的材质信息保存在一个字典中,不同的材质会有不同的关键字以及对应的值,字典的关键字由材质对应的Schema决定,共有20种标准Schema,对于每一种MaterialExtractor都会读取颜色、反射率、凹凸贴图等信息,这些信息组合到XML里,并发送给Native模块;

c将上述a和b中数据及信息转换成D5渲染器内部可以处理的格式之后,发送到Native连接模块进行下一步处理,,同时在revit里面模型材质数据的导出过程开始之前,先测试跟D5渲染器的连接,没有问题后所有数据发送到Native模块,之后调用相应的函数将发送的数据通过Socket发送到渲染器中,若出现连接问题,出现错误提示,提示用户当前状态,用户根据返回的错误码,并且用户需要根据错误提示采取的下一步操作,直至与D5渲染器连接正常;

S2:Native连接模块接收模型数据,并将数据传到GPU上进行优化,其具体步骤为:

(1)准备数据:需要将数据转换为可以被GPU处理的格式;

(2)调用CUDA C函数,将数据上传到GPU;

(3)调用CUDA核,对模型进行优化;

(4)调用CUDA C函数,将数据从GPU数组拷贝回CPU数组中;

(5)调用Socket函数,将合并后的模型数据和材质数据转换为字符串,通过Socket将数据发送到D5渲染器中进行渲染。

2.根据权利要求1所述的Revit到D5渲染器实时渲染的数据转换方法,其特征在于,在S2(1)中准备数据,其具体为:将所有的顶点数据、所有的法线数据分别打包到两个大数组中,然后再上传到GPU,同时将所有的Transform矩阵也需要打包起来,对于每个顶点或法线,都额外存储了一个Transform数组的索引,用来获取对当前坐标进行转换的矩阵,需要将数据转换为可以被GPU处理的格式。

3.根据权利要求1所述的Revit到D5渲染器实时渲染的数据转换方法,其特征在于,在S2(2)中先在CPU分配好打包的存储空间,将数据复制过去,然后再GPU分配同样大小的存储空间,调用CUDA C函数,进行数据上传。

4.根据权利要求1所述的Revit到D5渲染器实时渲染的数据转换方法,其特征在于,在S2(3)中对模型进行优化,具体为:将模型的顶点和法线用Transform矩阵进行变换,对于每个CUDA线程,用线程ID作为索引,从打包的顶点或法线数组里选择一个点,然后从打包的Transform矩阵数组中读取这个点对应的Transform,这样每个顶点的变换都是并行的,然后将材质相同的模型变换后的顶点组合到一个新的模型中,使得相同材质的模型进行合并。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京维伍网络科技有限公司,未经南京维伍网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011150020.9/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code