基于三角面片的三维模型聚合方法、装置、电子设备及介质制造方法及图纸

技术编号:38475419 阅读:11 留言:0更新日期:2023-08-15 16:55
本申请提供了基于三角面片的三维模型聚合方法、装置、电子设备及介质,所述方法包括,获取所述三维模型中每个三角面片的顶点的位置信息;确定以所述顶点表示的所述每个三角面片的索引信息;基于所述索引信息确定所述三角面片的邻接关系以及共享边;基于所述共享边和所述顶点的位置信息确定所述三角面片的共面关系;以及基于所述共面关系,聚合所述三角面片,获得聚合后的三维模型。获得聚合后的三维模型。获得聚合后的三维模型。

【技术实现步骤摘要】
基于三角面片的三维模型聚合方法、装置、电子设备及介质


[0001]本专利技术涉及数据处理领域,特别涉及一种基于三角面片的三维模型聚合方法、装置、电子设备及介质。

技术介绍

[0002]边界表达法是三维模型的常见表达法之一。在边界表达法中通常可以采用三角网格化的模型中的三角面片来描述模型的边界。然而,当三维模型中包括的三角面片的数量巨大时,在模型加载或是渲染过程中会非常费时。

技术实现思路

[0003]本申请提供了一种基于三角面片的三维模型聚合方法、装置、电子设备及介质,可以提升数据处理效率。
[0004]本申请的第一方面公开了一种基于三角面片的三维模型聚合方法,包括:获取所述三维模型中每个三角面片的顶点的位置信息;确定以所述顶点表示的所述每个三角面片的索引信息;基于所述索引信息确定所述三角面片的邻接关系以及共享边;基于所述共享边和所述顶点的位置信息确定所述三角面片的共面关系;以及基于所述共面关系,聚合所述三角面片,获得聚合后的三维模型。
[0005]在上述第一方面的一种可能的实现中,确定以所述顶点表示的每个三角面片的索引信息包括,合并重合的所述顶点。
[0006]在上述第一方面的一种可能的实现中,所述索引信息包括由所述顶点构成的点对信息。
[0007]在上述第一方面的一种可能的实现中,所述点对信息按序排列。
[0008]在上述第一方面的一种可能的实现中,基于所述共面关系,聚合所述三角面片包括,根据所述三角面片建立数组;将所述三角面片与所述数组中的其它三角面片中的每个三角面片遍历比较;在确定所述三角面片和所述其它三角面片中的一个或多个三角面片共面的情况下,聚合所述三角面片和所述一个或多个三角面片,得到多边形数组。
[0009]在上述第一方面的一种可能的实现中,将所述多边形数组中的每个多边形和其它多边形遍历比较。
[0010]在上述第一方面的一种可能的实现中,所述三维模型为IFC文件格式。
[0011]在上述第一方面的一种可能的实现中,还包括,根据所述聚合后的三维模型提取所述三维模型的线框。
[0012]本申请的第二方面公开了一种基于三角面片的三维模型聚合装置,所述装置包括:获取模块,用于获取所述三维模型中每个三角面片的顶点的位置信息;第一确定模块,用于确定以所述顶点表示的所述每个三角面片的索引信息;第二确定模块,用于基于所述索引信息确定所述三角面片的邻接关系以及共享边;第三确定模块,用于基于所述共享边和所述顶点的位置信息确定所述三角面片的共面关系;聚合模块,用于基于所述共面关系,
聚合所述三角面片,获得聚合后的三维模型
[0013]本申请的第三方面公开了一种计算机可读介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现本申请第一方面的所述的方法。
[0014]本申请的第四方面公开了一种电子设备,所述设备包括存储有计算机可执行指令的存储器和处理器;当所述指令被所述处理器执行时,使得所述设备实施根据本申请第一方面的方法。
[0015]本申请的第五方面公开了一种计算机程序产品,所述计算机程序被处理器执行时实现本申请第一方面的方法。
[0016]本申请提供的基于三角面片的三维模型聚合方法、装置、电子设备及介质,通过获取三维模型中各个顶点的位置信息,并确定以顶点表示的三角面片的索引信息。根据索引信息确定不同三角面片的共享边,再确定具有共享边的三角面片是否共面。根据共面关系来对共享边进行简化,从而对模型重新组织,生成聚合的三维模型。聚合后的三维模型因将共面的三角面片聚合为多变形,能够大幅降低模型中的数据数量,提升数据处理效率降低数据占用内存。
附图说明
[0017]图1为本申请的一个实施例的三维模型聚合方法100的流程示意图;
[0018]图2a

2b为本申请一个实施例的三维模型在未经聚合之前和经过聚合之后的渲染示意图;
[0019]图3为本申请一个实施例的根据索引信息确定邻接关系的示意图;
[0020]图4a

4b为本申请的一个实施例的根据索引信息确定邻接关系的示意图;
[0021]图5为本申请的一个实施例的根据索引信息确定邻接关系的示意图;
[0022]图6为本申请一个实施例的聚合方法400的流程示意图;
[0023]图7为本申请一个实施例的三维模型聚合装置500的示意图;
[0024]图8为本申请的一个实施例的电子设备600的框图。
具体实施方式
[0025]下面结合具体实施例和附图对本申请做进一步说明。可以理解的是,本公开的说明性实施例包括但不限于基于三角面片的三维模型聚合方法、装置、电子设备及介质,此处描述的具体实施例仅仅是为了解释本申请,而非对本申请的限定。此外,为了便于描述,附图中仅示出了与本申请相关的部分而非全部的结构或过程。
[0026]为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。
[0027]三维CAD模型的表达方法有很多种,但常见的几种表达方法包括造型立体几何表达法、边界表达法、参数表达法、单元表达法。造型立体几何表达法又称积木块几何法,主要采用布尔运算法则,将一些例如立方体、圆柱体、环、锥体的简单体素加以组合、变化成复杂的三维模型实体。边界表达法是根据顶点、边和面构成的表面来精确地描述三维模型实体。对于难以用传统的几何基元表示的自由曲面可以采用参数表达法。单元表达法采用三角
形、正方形或是多变形将表面分成各个独立的小单元。
[0028]在工业场景中,为了能够在查看有迅速、即时的观察反馈,可以采用边界表达法对模型进行表达。而边界表达法中,运用较为广泛的是三角网格化的模型表达。在三角网格化的模型中统一使用三角面片来描述模型的边界,从而快速地绘制出立体模型。基于三角面片的三维模型具有描述精确、图元简单、绘制迅速的特点。
[0029]通常,当三维模型中包括的三角面片的数量巨大时,在模型加载或是渲染过程中会非常费时。此外,因模型的数据较多,模型数据的占用内存也较大。
[0030]为了解决上述问题,本申请的一个实施例提供了一种基于三角面片的三维模型聚合方法100,能够提升数据处理效率以及节约数据存储空间。方法100的各个步骤可参见图1。
[0031]在S110中,获取三维模型中每个三角面片的顶点的位置信息。
[0032]在三维模型的数据中可以包括几何数据和非几何数据。几何数据包括每个顶点或每条边的几何数据以及三角面片的索引数据。三角面片的索引数据可以为顶点和顶点所属的三角面片之间的映射关系,也可以为边和边所属的三角面片之间的映射关系。非几何数据可以包括项目信息,属性信息,贴图信息中的至少一种。
[0033]在S110中获取各个顶点的位置信息,例如坐标数据中的坐标的X坐标、Y坐标、Z坐标。在一些示例中,三维模型的数据还可以包括法线数据以及纹理本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于三角面片的三维模型聚合方法,其特征在于,包括:获取所述三维模型中每个三角面片的顶点的位置信息;确定以所述顶点表示的所述每个三角面片的索引信息;基于所述索引信息确定所述三角面片的邻接关系以及共享边;基于所述共享边和所述顶点的位置信息确定所述三角面片的共面关系;以及基于所述共面关系,聚合所述三角面片,获得聚合后的三维模型。2.根据权利要求1所述的方法,其特征在于,确定以所述顶点表示的每个三角面片的索引信息包括,合并重合的所述顶点。3.根据权利要求2所述的方法,其特征在于,所述索引信息包括由所述顶点构成的点对信息。4.根据权利要求3所述的方法,其特征在于,所述点对信息按序排列。5.根据权利要求3所述的方法,其特征在于,基于所述共面关系,聚合所述三角面片包括,根据所述三角面片建立数组;将所述三角面片与所述数组中的其它三角面片中的每个三角面片遍历比较;在确定所述三角面片和所述其它三角面片中的一个或多个三角面片共面的情况下,聚合所述三角面片和所述一个或多个三角面片,得到多边形数组。6.根据权利要求5所述的方法,其特征在于,还包括:将所述多边形数组中的每个多边形和其它多边形遍历比较。7.根据权利要求1所述的方法,其特征在于,所述三...

【专利技术属性】
技术研发人员:何辰纲聂琳任重王文广董士崇张泽林
申请(专利权)人:上海天华建筑设计有限公司
类型:发明
国别省市:

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

1