System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于数据库的通用三维数字化模型格式定义方法技术_技高网

一种基于数据库的通用三维数字化模型格式定义方法技术

技术编号:40660352 阅读:2 留言:0更新日期:2024-03-18 18:52
本发明专利技术公开了一种基于数据库的通用三维数字化模型格式定义方法,包括:定义模型和子模型的结构,定义模型包含的构件实体对象,定义构件实体的属性元数据及属性项,定义组成构件的几何体的几何信息,定义几何体的纹理信息,定义构件实体的树状层级关系;基于定义的数据库模型,设计灵活的数据结构,以容纳各种三维模型数据,这可能包括使用BLOB字段存储模型几何信息、文本字段存储元数据等;采用各设计软件插件的方法,将各种模型格式导出为该方法公开的格式。大量的实验结果表明,本发明专利技术方法可以真实还原主流的BIM设计软件中原始格式中包含的几何信息和属性信息,具有很好的平台无关性,大大方便了后期业务应用系统对模型的一致性解析。

【技术实现步骤摘要】

本专利技术属于计算机图形学、数据处理和压缩、数据交换和标准的交叉,特别是一种基于数据库的通用高效的三维模型定义方法。


技术介绍

1、当前,在工程、医学、游戏、艺术等众多领域,三维模型都有着大量的应用场景,发挥着重要的作用。三维模型格式定义了三维模型的数据组成结构,它很大程度上决定了三维模型在各个应用场景中的易用性、可移植性和效率。通用的三维模型格式能满足各种应用场景和用户需求,有助于促进三维模型在不同行业和领域的广泛应用。

2、在工程基础设施领域,三维模型的使用和相关的数据格式对于规划、设计、建设和维护基础设施项目都具有关键作用。目前主流的建模软件生成的数据格式有rvt、dgn、stl、fbx、ifc等,这些格式是面向数据存储和共享的格式,在可视化及业务系统应用时一般需要即时翻译成图形显卡可以渲染的数据格式,稍大的模型就会存在加载时间长、系统崩溃等问题。并且,如果业务系统所使用的模型来源于不同的设计软件格式,业务系统需要分别解析不同的格式,随着建模软件的国产化发展,新的模型格式会层出不穷,导致业务系统需要不断修改完善,无法稳定下来;每个业务系统都需要做这些类似的工作,繁琐度高。


技术实现思路

1、本专利技术的目的在于针对上述现有技术存在的问题,定义一种通用的面向显卡渲染的格式,业务系统只需要解析这种格式即可使用模型,较好地保证了业务系统的稳定性。而各种模型格式转换到该通用格式的过程由各设计软件及插件处理,也能适用于不断出现的国产化建模软件。

2、实现本专利技术目的的技术解决方案为:基于数据库的通用三维数字化模型格式定义方法,所述方法包括以下步骤:

3、步骤1,对模型及子模型进行定义,包括对模型序号、原始模型路径、模型中的构件数量、模型中的几何体数量、模型中的顶点数量、模型中的三角面片数量、模型中的属性数量进行定义;

4、步骤2,对模型包含的构件实体进行定义,包括对构件序号、构件名称、构件关联模型、构件属性值集合、构件包含的几何体引用、构件几何体的字节大小、构件的顶点数量、构件的三角面片数量、构件的空间包围球中心点xyz,以及构件的空间包围球半径进行定义;

5、步骤3,对构件实体的属性进行定义,包括对属性序号、属性字段名称、属性字段类型、属性分组进行定义;

6、步骤4,对构件实体包含的几何体进行定义,包括对几何体序号、几何体的几何信息、几何体的lod级别、几何体的顶点数量、几何体的三角面片数量、几何体的空间包围球中心点xyz,几何体的空间包围球半径进行定义;

7、步骤5,对几何体的纹理信息进行定义,包括对纹理序号、纹理路径、纹理数据进行定义;

8、步骤6,对构件实体的树状层级关系进行定义,包括对构件树节点序号、构件树节点名称、构件树节点类型、构件树节点附加属性、构件树节点的父节点进行定义;

9、步骤7,对数据库结构进行定义,基于步骤1~步骤6定义的数据模型,对数据表、字段及类型进行定义;

10、步骤8,根据上述过程的定义和设计完成的库表、字段及类型结构,构成通用的三维数字模型新格式。

11、进一步地,步骤1中对模型及子模型进行定义时,模型中的构件数量定义为elementcount,模型中的几何体数量定义为geometrycount,模型中的顶点数量定义为vertexcount,模型中的三角面片数量定义为trianglecount,模型中的属性数量定义为propertycount。

12、进一步地,步骤1中一个模型包含一条或多条模型记录。

13、进一步地,步骤2中对构件属性值集合进行定义时,字段类型定义为blob,属性名称采用步骤3中的属性定义,多个属性名称值对采用json字符串定义,并使用zip压缩;对构件包含的几何体引用进行定义时,字段类型定义为blob,值定义为包含几何体引用和几何体的偏移矩阵的json字符串;所有构件几何体的字节大小为压缩字节大小之和;对构件的空间包围球中心点进行定义时,值定义为所包含几何体坐标乘以偏移矩阵。

14、进一步地,步骤3中对构件实体的属性进行定义时,属性字段类型定义为type,其值定义为length、area、volume、angle、material、text、yesno、invalid的一种;属性分组定义为group,属性单位类型定义为unittype,其值定义为length,volume。

15、进一步地,步骤4中几何体的几何信息定义为gltf,字段类型定义为blob,值使用glb2.0格式存储,gltf和buffer信息存在一起,使用zip压缩,采用url方式引用步骤5中定义的纹理信息;几何体的lod级别定义为lod,几何体的顶点数量定义为vertexcount,几何体的三角面片数量定义为trianglecount,几何体的空间包围球中心点定义为xyz。

16、进一步地,步骤5中对几何体的纹理信息进行定义时,定义几何体gltf中引用的外部资源为纹理图片。

17、进一步地,步骤5中对几何体的纹理数据进行定义时,使用blob字段存储纹理的二进制数值。

18、进一步地,步骤6中对构件树节点序号进行定义时,如果节点是构件,值定义为构件序号;对构件树节点类型进行定义时,如果类型是构件,值定义为element;对构件树节点的父节点进行定义时,如果是根节点,值定义为本节点序号;对构件树节点附加属性进行定义时,类型定义为json格式文本,其值定义为附加到本节点的额外属性

19、本专利技术与现有技术相比,其显著优点为:

20、1)采用图形显卡可直接渲染的模型格式,支持模型体量更大、模型显示更快。

21、2)提出一种与设计软件无关的模型定义格式,保证了业务系统端对模型处理的一致性和稳定性。

22、3)通用的三维模型格式能满足模型在各个应用场景中的易用性、可移植性和效率,有助于促进三维模型在不同行业和领域的广泛应用。

23、下面结合附图对本专利技术作进一步详细描述。

本文档来自技高网...

【技术保护点】

1.一种基于数据库的通用三维数字化模型格式定义方法,其特征在于,所述方法包括以下步骤:

2.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤1中对模型及子模型进行定义时,模型中的构件数量定义为elementcount,模型中的几何体数量定义为geometrycount,模型中的顶点数量定义为Vertexcount,模型中的三角面片数量定义为trianglecount,模型中的属性数量定义为propertycount。

3.根据权利要求2所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤1中一个模型包含一条或多条模型记录。

4.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤2中对构件属性值集合进行定义时,字段类型定义为BLOB,属性名称采用步骤3中的属性定义,多个属性名称值对采用Json字符串定义,并使用zip压缩;对构件包含的几何体引用进行定义时,字段类型定义为BLOB,值定义为包含几何体引用和几何体的偏移矩阵的Json字符串;所有构件几何体的字节大小为压缩字节大小之和;对构件的空间包围球中心点进行定义时,值定义为所包含几何体坐标乘以偏移矩阵。

5.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤3中对构件实体的属性进行定义时,属性字段类型定义为type,其值定义为Length、Area、Volume、Angle、Material、Text、YesNo、Invalid的一种;属性分组定义为group,属性单位类型定义为unittype,其值定义为length,volume。

6.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤4中几何体的几何信息定义为gltf,字段类型定义为BLOB,值使用glb2.0格式存储,gltf和buffer信息存在一起,使用zip压缩,采用url方式引用步骤5中定义的纹理信息;几何体的LOD级别定义为lod,几何体的顶点数量定义为vertexcount,几何体的三角面片数量定义为trianglecount,几何体的空间包围球中心点定义为xyz。

7.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤5中对几何体的纹理信息进行定义时,定义几何体gltf中引用的外部资源为纹理图片。

8.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤5中对几何体的纹理数据进行定义时,使用BLOB字段存储纹理的二进制数值。

9.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤6中对构件树节点序号进行定义时,如果节点是构件,值定义为构件序号;对构件树节点类型进行定义时,如果类型是构件,值定义为element;对构件树节点的父节点进行定义时,如果是根节点,值定义为本节点序号;对构件树节点附加属性进行定义时,类型定义为JSON格式文本,其值定义为附加到本节点的额外属性。

...

【技术特征摘要】

1.一种基于数据库的通用三维数字化模型格式定义方法,其特征在于,所述方法包括以下步骤:

2.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤1中对模型及子模型进行定义时,模型中的构件数量定义为elementcount,模型中的几何体数量定义为geometrycount,模型中的顶点数量定义为vertexcount,模型中的三角面片数量定义为trianglecount,模型中的属性数量定义为propertycount。

3.根据权利要求2所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤1中一个模型包含一条或多条模型记录。

4.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤2中对构件属性值集合进行定义时,字段类型定义为blob,属性名称采用步骤3中的属性定义,多个属性名称值对采用json字符串定义,并使用zip压缩;对构件包含的几何体引用进行定义时,字段类型定义为blob,值定义为包含几何体引用和几何体的偏移矩阵的json字符串;所有构件几何体的字节大小为压缩字节大小之和;对构件的空间包围球中心点进行定义时,值定义为所包含几何体坐标乘以偏移矩阵。

5.根据权利要求1所述的基于数据库的通用三维数字化模型格式定义方法,其特征在于,步骤3中对构件实体的属性进行定义时,属性字段类型定义为type,其值定义为length、area、volume、angle、material、text、y...

【专利技术属性】
技术研发人员:张华肖斌
申请(专利权)人:华设设计集团股份有限公司
类型:发明
国别省市:

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

1