一种三维模型合并处理方法、装置及介质制造方法及图纸

技术编号:35482397 阅读:62 留言:0更新日期:2022-11-05 16:33
本发明专利技术公开一种三维模型合并处理方法、装置及介质,其通过获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的空间数据等其他数据项,得到各模型的meshes对象,并从各模型属性文件中提取各个模型的空间属性信息,将各所述模型的空间数据转换至同一坐标系中,同时从各模型属性文件中提取各个模型的其他属性信息,并将提取的其他属性信息保存到一临时数组中,最后将所有模型的meshes对象打包,并按照glTF格式规范组织,得到合并后的glTF文件,再进一步与模型属性信息的临时数组合并处理为3DTiles格式,从而在Web端的三维模型应用场景中,克服同时加载大量glTF模型文件导致的通信耗时长、渲染效率低、用户体验差的问题。渲染效率低、用户体验差的问题。渲染效率低、用户体验差的问题。

【技术实现步骤摘要】
一种三维模型合并处理方法、装置及介质


[0001]本专利技术涉及模型处理
,尤其涉及一种三维模型合并处理方法、装置及介质。

技术介绍

[0002]基于Web端的三维模型应用可以降低对专业三维软件的依赖,提高模型应用的友好度和便捷性,扩大三维模型的应用范围。将专业三维软件制作出来的模型应用到Web端,有两类方法:一是利用专业三维软件的服务端能力模型制作成Web服务,供Web端系统调用;二是将专业三维软件制作的模型转换为Web端支持的glTF格式,供Web端系统加载使用。
[0003]上述方法一依然难以摆脱对成本高昂的专业三维软件的依赖;方法二采用直接加载转换后的模型的方式,会比调用模型服务更加灵活。目前市面上的主流三维软件均支持COLLADA通用模型格式的导出,进而,亦有开放工具可以完成COLLADA格式到glTF格式的转换,对于仅有少量模型的简单场景,可以较好地满足Web端展示的需求。但对于涉及到大量glTF文件的场景,如城市建筑群、三维地质体等,将会导致加载时间长、渲染效率低、用户体验差的问题,并且带来模型文件分散、难以管理的难题。

技术实现思路

[0004]本专利技术多个方面提供一种三维模型合并处理方法、装置及设备,其可以对大量glTF模型进行合并处理,将其构造为紧凑的3D Tiles格式,从而支持Web端三维模型的高效传输和展示。
[0005]本专利技术第一方面提供一种三维模型合并处理方法,包括:
[0006]获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的数据项,得到各模型的meshes对象,其中,所述数据项包括空间数据、纹理信息、法线信息和材质信息;
[0007]从各模型属性文件中提取各个模型的空间属性信息,并根据各模型的空间属性信息,将各所述模型的meshes对象的空间数据坐标转换至同一坐标系中;
[0008]从各模型属性文件中提取各个模型的其他属性信息,并将提取的所有模型的其他属性信息保存到一临时数组中,其中,所述临时数组中每一个元素表示为一个模型的其他属性信息;
[0009]将所有模型的meshes对象打包后按照glTF格式规范对提取的数据项进行重新组织,得到合并后的glTF文件,并将所述合并后的glTF文件与所述临时数组合并处理为3DTiles格式数据。
[0010]本专利技术第二方面提供一种三维模型合并处理装置,包括:
[0011]模型数据提取模块,用于获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的数据项,得到各模型的meshes对象;其中,所述数据项包括空间数据、纹理信息、法线信息和材质信息;
[0012]属性提取模块,用于从各模型属性文件中提取各个模型的空间属性信息,并根据
各模型的空间属性信息,将各所述模型的meshes对象的空间数据坐标转换至同一坐标系中;还用于从各模型属性文件中提取各个模型的其他属性信息,并将提取的所有模型的其他属性信息保存到一临时数组中,其中,所述临时数组中每一个元素表示为每一个模型的其他属性信息;
[0013]合并模块,用于将所有模型的meshes对象打包后按照glTF格式规范对提取的数据项进行重新组织,得到合并后的glTF文件,并将所述合并后的glTF文件与所述临时数组合并处理为3DTiles格式数据。
[0014]本专利技术第三方面提供一种计算机可读存储介质,包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行如第一方面提供的所述的三维模型合并处理方法。
[0015]与现有技术相比,本专利技术提供的一种三维模型合并处理方法、装置及介质具有以下有益效果:
[0016]本专利技术通过获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的空间数据、纹理信息、法线信息和材质信息,得到各模型的meshes对象,并从各模型属性文件中提取各个模型的空间属性信息,从而根据各模型的空间属性信息,将各所述模型的meshes对象的空间数据转换至同一坐标系中,同时从各模型属性文件中提取各个模型的其他属性信息,并将提取的其他属性信息保存到一临时数组中,其中,所述临时数组中每一个元素表示为每一个模型的其他属性信息,将所有模型的meshes对象打包,并按照glTF格式规范对提取的数据项进行重新组织,得到合并后的glTF文件,最后按照3D Tiles格式规范对合并后的glTF文件和临时数组进行处理,得到3DTiles格式数据,其能将大量分散的glTF文件进行合并打包处理,从而在Web端的三维模型应用场景中,克服同时加载大量glTF模型文件导致的通信耗时长、渲染效率低、用户体验差的问题。
附图说明
[0017]图1是本专利技术提供的一种三维模型合并处理方法的一个实施例的流程示意图;
[0018]图2是本专利技术实施例提供的格网数组生成示意图;
[0019]图3是本专利技术实施例提供的提取顶点的流程示意图;
[0020]图4是本专利技术实施例提供的提取材质的流程示意图;
[0021]图5是本专利技术实施例提供的各模型的meashes对象打包示意图;
[0022]图6是本专利技术实施例提供的三维模型合并处理方法的具体流程示意图。
具体实施方式
[0023]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0024]参见图1,图1是本专利技术提供的一种三维模型合并处理方法的一个实施例的流程示意图。
[0025]本专利技术实施例提供的一种三维模型合并处理方法,包括步骤S11~S14:
[0026]步骤S11,获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的数据项,得到各模型的meshes对象(格网数组对象),其中,所述数据项包括空间数据、纹理信息(Texture)、法线信息和材质信息。
[0027]可以理解的是,每个模型glTF文件由场景(Scene)所组成,大部分情况下仅有一个场景。每个场景包括一系列节点(Node),节点可以内部嵌套子级节点。节点包含了格网(Mesh),格网中记录了空间数据、材质、纹理等的索引,以及格网的材质信息,glTF文件结构如图1所示。本专利技术实施例在对各个模型glTF文件中的格网信息处理时,需抽离出内部嵌套的几何体,取出各几何体对应的buffer数据组成格网数组,如图2所示。
[0028]根据文件结构,制定各数据项的提取规则,如表1所示。
[0029]表1各数据项提取规则
[0030][0031]具体的,图3和图4示例性给出了获取顶点和材质的过程。对于顶点坐标、法线、纹理、纹理坐标可参见表1的规则进行提取,这里不再一一列举。
[0032]步骤S12,从各模型属性文件中提取各个模型的空间属性信息,并根据各本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种三维模型合并处理方法,其特征在于,包括:获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的数据项,得到各模型的meshes对象,其中,所述数据项包括空间数据、纹理信息、法线信息和材质信息;从各模型属性文件中提取各个模型的空间属性信息,并根据各模型的空间属性信息,将各所述模型的meshes对象的空间数据坐标转换至同一坐标系中;从各模型属性文件中提取各个模型的其他属性信息,并将提取的所有模型的其他属性信息保存到一临时数组中,其中,所述临时数组中每一个元素表示为每一个模型的其他属性信息;将所有模型的meshes对象打包后按照glTF格式规范对提取的数据项进行重新组织,得到合并后的glTF文件,并将所述合并后的glTF文件与所述临时数组合并处理为3D Tiles格式数据。2.如权利要求1所述的三维模型合并处理方法,其特征在于,所述从各模型属性文件中提取各个模型的空间属性信息,并根据各模型的空间属性信息,将各所述模型的meshes对象的空间数据坐标转换至同一坐标系中,具体包括:根据模型的空间属性信息,确定模型的中心点位置信息,并建立模型局部坐标向地理坐标的转换矩阵;根据所述转换矩阵对模型的局部空间坐标转换,得到同一地理坐标系下的模型空间数据。3.如权利要求1所述的三维模型合并处理方法,其特征在于,所述从各模型属性文件中提取各个模型的其他属性信息,并将提取的所有模型的其他属性信息保存到一临时数组中,其中,所述临时数组中每一个元素表示为每一个模型的其他属性信息,具体包括:从各模型属性文件中提取各个模型的其他属性信息,引入变量batchId用以表征不同模型,并将batchId保存在所述模型的meshes对象中;将所有模型的其他属性信息保存到一临时数组中,并将batchId与所述临时数组中的每一元素进行对应关联;其中,所述临时数组中每一个元素表示为每一个模型的其他属性信息。4.一种三维模型合并处理装置,其特征在于,包括:模型数据提取模块,用于获取待合并的各个模型glTF文件,并提取各所述模型glTF文件中的...

【专利技术属性】
技术研发人员:刘伟周志远熊英谭佳刘志方黎湛荣陈伟青朱晓强
申请(专利权)人:广州市城市规划勘测设计研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1