实时生成模型剖面带洞网格的方法、装置、介质和设备制造方法及图纸

技术编号:32645470 阅读:24 留言:0更新日期:2022-03-12 18:26
本发明专利技术涉及一种实时生成模型剖面带洞网格的方法,所述方法包括如下步骤:提取模型中三角形数据,构建BVH加速结构;基于剖分平面进行模型切割,提取横截面数据,并对横截面数据预处理;利用处理后的横截面数据构建稀疏四叉树;递归遍历稀疏四叉树,并利用BVH加速结构判定四叉树叶子节点N与模型的交叉情况;遍历稀疏四叉树根据交叉情况进行剖面三角化,获取三角形顶点集Vs与三角形序号集Is;基于三角形顶点集Vs与三角形序号集Is在三维引擎中生成网格模型。本发明专利技术的方法基于有向距离场对离散点的精准三角化,支持对任意模型实时地平面剖分,并自动生成剖面的网格,剖分更灵活。本发明专利技术还涉及一种实时生成模型剖面带洞网格的装置、存储介质和设备。存储介质和设备。存储介质和设备。

【技术实现步骤摘要】
实时生成模型剖面带洞网格的方法、装置、介质和设备


[0001]本专利技术涉及计算机
,尤其涉及一种实时生成模型剖面带洞网格的方法、装置、存储介质和设备。

技术介绍

[0002]在可视化系统中,经常会需要用到模型剖面效果的展示,展示模型内部的真实物理结构,设备内部物理部件运转状态。但传统的制作流程中需要建模人员专门制作剖面模型,而且制作好的剖面模型修改麻烦,不具有实时性,剖面的展示也不够灵活。
[0003]因此,本领域迫切需要开发出一种能够快速生成模型剖面的方法。

技术实现思路

[0004]本专利技术所要解决的技术问题是针对现有技术的不足,提供一种实时生成模型剖面带洞网格的方法、装置、存储介质和设备,主要用于解决现有的模型剖面需要依赖建模人员专门制作剖面模型,并且制作好的剖面模型修改麻烦不具有实时性,剖面展示也不够灵活的技术问题。
[0005]本专利技术解决上述技术问题的技术方案如下:
[0006]一种实时生成模型剖面带洞网格的方法,所述方法包括如下步骤:
[0007]提取模型中三角形数据,构建BVH加速结构;
[0008]基于剖分平面进行模型切割,提取横截面数据,并对横截面数据预处理;
[0009]利用处理后的所述横截面数据构建稀疏四叉树;
[0010]递归遍历稀疏四叉树,并利用所述BVH加速结构判定四叉树叶子节点与模型的交叉情况;
[0011]遍历稀疏四叉树根据交叉情况进行剖面三角化,获取三角形顶点集Vs与三角形序号集Is;/>[0012]基于三角形顶点集Vs与三角形序号集Is在三维引擎中生成网格模型。
[0013]进一步地,所述提取模型中三角形数据,构建BVH加速结构包括:
[0014]在三维引擎中通过静态网格获取顶点缓冲对象VBO和三角序号缓冲对象IBO;
[0015]利用所述顶点缓冲对象VBO和三角序号缓冲对象IBO提取三角形数据,并存储到自定义三角形数据结构中;
[0016]基于SAH方法构建BVH加速结构。
[0017]进一步地,所述基于剖分平面进行模型切割,提取横截面数据,并对横截面数据预处理包括:
[0018]输入剖分平面位置Pc和平面法线Pn,利用平面位置Pc和平面法线Pn构建局部空间转换至世界空间的转换矩阵M,以及提取横截面线段集E,利用转换矩阵M将所有线段e变换到XY平面;
[0019]将线段进行焊接;
[0020]计算线段集E的AABB包围盒数据。
[0021]进一步地,所述利用处理后的所述横截面数据构建稀疏四叉树包括:
[0022]设定稀疏四叉树构建原则;
[0023]根据所述四叉树构建原则构建稀疏四叉树根节点;
[0024]基于所述构建原则计算得到最佳切分顶点,根据所述最佳切分顶点将节点切分为四个子节点;
[0025]将线段集E中的所有线段e与所述四个子节点进行相交测试,记录每个子节点中所包含的线段集E

,判断线段集E

是否大于1,将线段集E

大于1对应的子节点继续递归拆分叶子节点。
[0026]进一步地,所述稀疏四叉树构建原则包括第一构建原则与第二构建原则,
[0027]所述第一构建原则设定将所有线段e拆分到不同的四叉树节点中,所述四叉树节点为矩形,同时设定每个四叉树节点中有且只有一条线段是矩形的对角线;
[0028]所述第二构建原则设定基于SAH方法选取一条线段e的一个顶点V,根据所述顶点V将节点切分为四个子节点。
[0029]进一步地,所述递归遍历稀疏四叉树,并利用所述BVH加速结构判定四叉树叶子节点与模型的交叉情况包括:
[0030]计算稀疏四叉树叶子节点矩形的4个顶点P
bl
,P
tl
,P
tr
,P
br
,利用所述BVH加速结构计算出四个顶点距离模型的距离d1,d2,d3,d4,并统计d大于0的个数N
L
,d小于0的个数N
S
,d等于0的个数N
E
,且满足N
L
+N
S
+N
E
=4;
[0031]基于N
L
、N
S
、N
E
判定叶子节点与模型的交叉情况;
[0032]其中,顶点在模型内部距离值d为负数,顶点在模型外部距离值d为正数,距离值d为零则顶点在模型上。
[0033]进一步地,所述遍历稀疏四叉树根据交叉情况进行剖面三角化,获取三角形顶点集Vs与三角形序号集Is包括:
[0034]遍历稀疏四叉树结构获取叶子结点与模型的交叉情况;
[0035]对于叶子结点处于模型内,则将矩形切分为两个三角形,并将三角形顶点数据和三角形序号添加至三角形顶点集Vs与三角形序号集Is中;
[0036]对于叶子结点与模型相交,利用矩形与模型相交的三个顶点三角化为一个三角形,并将对应的三角形顶点数据和三角形序号添加至三角形顶点集Vs与三角形序号集Is中。
[0037]本专利技术的有益效果是:提出了一种实时生成模型剖面带洞网格的方法,基于有向距离场对离散点的精准三角化;还可以支持模型抠洞,且计算消耗不会随着洞的复杂程度提升;还可以支持对任意符合真实物理结构的模型实时地进行任意方向的平面剖分,并自动生成剖面的网格,不再需要专业人员建模,且剖分更加灵活。
[0038]本专利技术还解决上述技术问题的另一种技术方案如下:
[0039]一种实时生成模型剖面带洞网格的装置,所述装置包括:
[0040]提取模块,用于提取模型中三角形数据,构建BVH加速结构;
[0041]剖分模块,用于基于剖分平面进行模型切割,提取横截面数据,并对横截面数据预处理;
[0042]构建模块,用于利用处理后的所述横截面数据构建稀疏四叉树;
[0043]判定模块,用于递归遍历稀疏四叉树,并利用所述BVH加速结构判定四叉树叶子节点N与模型的交叉情况;
[0044]三角化模块,用于遍历稀疏四叉树根据交叉情况进行剖面三角化,获取三角形顶点集Vs与三角形序号集Is;
[0045]生成模块,用于基于三角形顶点集Vs与三角形序号集Is在三维引擎中生成网格模型。
[0046]此外,本专利技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述技术方案中任一项所述的实时生成模型剖面带洞网格的方法中的步骤。
[0047]本专利技术还提供一种实时生成模型剖面带洞网格的设备,包括:处理器和存储器;所述存储器上存储有可被所述处理器执行的计算机可读程序;所述处理器执行所述计算机可读程序时实现如上述技术方案中任一项所述的实时生成模型剖面带洞网格的方法中的步骤。
[0048]本专利技术附加的方面本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种实时生成模型剖面带洞网格的方法,其特征在于,所述方法包括如下步骤:提取模型中三角形数据,构建BVH加速结构;基于剖分平面进行模型切割,提取横截面数据,并对横截面数据预处理;利用处理后的所述横截面数据构建稀疏四叉树;递归遍历稀疏四叉树,并利用所述BVH加速结构判定四叉树叶子节点与模型的交叉情况;遍历稀疏四叉树根据交叉情况进行剖面三角化,获取三角形顶点集Vs与三角形序号集Is;基于三角形顶点集Vs与三角形序号集Is在三维引擎中生成网格模型。2.根据权利要求1所述的实时生成模型剖面带洞网格的方法,其特征在于,所述提取模型中三角形数据,构建BVH加速结构包括:在三维引擎中通过静态网格获取顶点缓冲对象VBO和三角序号缓冲对象IBO;利用所述顶点缓冲对象VBO和三角序号缓冲对象IBO提取三角形数据,并存储到自定义三角形数据结构中;基于SAH方法构建BVH加速结构。3.根据权利要求1所述的实时生成模型剖面带洞网格的方法,其特征在于,所述基于剖分平面进行模型切割,提取横截面数据,并对横截面数据预处理包括:输入剖分平面位置Pc和平面法线Pn,利用平面位置Pc和平面法线Pn构建局部空间转换至世界空间的转换矩阵M,以及提取横截面线段集E,利用转换矩阵M将所有线段e变换到XY平面;将线段进行焊接;计算线段集E的AABB包围盒数据。4.根据权利要求3所述的实时生成模型剖面带洞网格的方法,其特征在于,所述利用处理后的所述横截面数据构建稀疏四叉树包括:设定稀疏四叉树构建原则;根据所述四叉树构建原则构建稀疏四叉树根节点;基于所述构建原则计算得到最佳切分顶点,根据所述最佳切分顶点将节点切分为四个子节点;将线段集E中的所有线段e与所述四个子节点进行相交测试,记录每个子节点中所包含的线段集E

,判断线段集E

是否大于1,将线段集E

大于1对应的子节点继续递归拆分叶子节点。5.根据权利要求4所述的实时生成模型剖面带洞网格的方法,其特征在于,所述稀疏四叉树构建原则包括第一构建原则与第二构建原则,所述第一构建原则设定将所有线段e拆分到不同的四叉树节点中,所述四叉树节点为矩形,同时设定每个四叉树节点中有且只有一条线段是矩形的对角线;所述第二构建原则设定基于SAH方法选取一条线段e的一个顶点V,根据所述顶点V将节点切分为四个子节点。6.根据权利要求4所述的实时生成模型剖面带洞网格的方法,其特征在于,所述递归遍历稀疏四叉树,并利用所述BVH加速结构判定四叉树叶子节点与模型的交叉情况包括:
计算稀疏四叉树叶子节点矩形的4个顶点P

【专利技术属性】
技术研发人员:董伟沈祎岗井刚李鉴黄正雨陈傲寒王赛
申请(专利权)人:北京优锘科技有限公司
类型:发明
国别省市:

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

1