基于嵌套包围盒概念用于物面网格的数据结构构建方法技术

技术编号:35612591 阅读:15 留言:0更新日期:2022-11-16 15:37
本申请公开了一种基于嵌套包围盒概念用于物面网格的数据结构构建方法,由于目标体所包含的信息能够体现出某一物的结构、形状,同步本说明书中的方法在构建数据结构时将目标体体现出的结构、形状信息加以利用,以辅助数据结构的构建。此外,本说明书中的技术方案在构建数据结构时采用了K

【技术实现步骤摘要】
基于嵌套包围盒概念用于物面网格的数据结构构建方法


[0001]本申请属于数据处理研究领域,特别涉及一种基于嵌套包围盒概念用于物面网格的数据结构构建方法。

技术介绍

[0002]随着计算机技术的发展,借助于计算机的计算能力执行的数据处理,对技术的发展提供了助力。然而,数据结构一定程度的影响到了计算机对数据的处理效率。
[0003]可见,如何构建便于计算机进行处理的数据,成为亟待解决的问题。

技术实现思路

[0004]为了解决所述现有技术的不足,本申请提供了一种基于嵌套包围盒概念用于物面网格的数据结构构建方法,该方法适用于针对目标体数据的数据构建。目标体一方面物面网格可以通过数据集的方式进行表征;另一方面,目标体所包含的信息能够体现出某一物的结构、形状,采用本说明书中的方法,能够在构建数据结构时将目标体体现出的结构、形状信息加以利用,以辅助数据结构的构建。进一步地,本说明书中的技术方案在构建数据结构时采用了K

DTree和嵌套包围盒的概念,使得在判断网格单元与包围盒是否相交时快速排除无关网格单元,从而大幅提高判断效率,有利于提高数据查找的速度。示例性地,本说明书中的过程可以应用于流体力学仿真领域。本申请中的方法适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法。
[0005]本申请所要达到的技术效果通过以下方案实现:第一方面,本说明书提供一种基于嵌套包围盒概念用于物面网格的数据结构构建方法,所述方法包括:创建待定K

DTree;确定物面网格的目标数据集G中未在待定K

DTree中对应有节点的网格单元的数量,其中,目标数据集G是基于目标体的数据构建的,所述目标体的物面由网格单元构成;构建基础包围盒(Gimin, Gimax),其中,所述基础包围盒是将所述目标体包含其中的、体积最小包围盒;根据所述网格单元的数量,将所述网格单元插入所述待定K

DTree的节点中,以建立所述网格单元与所述节点之间的对应关系,得到目标K

DTree;并且,根据网格单元与节点之间的对应关系,对所述基础包围盒进行剖分;对包围盒的顶点进行存储,其中,所述包围盒包括所述基础包围盒和针对所述基础包围盒进行剖分得到的子包围盒。
[0006]在本说明书一个可选的实施例中,根据所述网格单元的数量,将所述网格单元插入所述待定K

DTree的节点中,包括:若所述网格单元的数量等于1,则根据所述网格单元的数量,将所述网格单元插入
所述待定K

DTree的节点中,以建立所述网格单元与所述节点之间的对应关系,并将所述待定K

DTree中的其他子树均置为空;若所述网格单元的数量等于2,则将所述基准方向所属的维度确定为剖分维,并将一个网格单元插入所述待定K

DTree的节点中,确定另一个网格单元的中心点在所述剖分维的取值是否大于所述一个网格单元在所述剖分维的取值;若是,则将所述另一个网格单元插入所述节点右侧子树的节点中;若否,则将所述另一个网格单元插入所述节点左侧子树的节点中,并将所述待定K

DTree中未对应有网格单元的其他子树均置为空;若所述网格单元的数量大于2,则将所述待定K

DTree中的节点,作为待分配节点;将所述网格单元的中心点在所述坐标轴中方差最大的坐标轴的维度,确定为剖分维;将所述网格单元的中心点的坐标在所述剖分维上按照取值的大小进行排序,将处于排序的中间位置的网格单元,作为目标单元插入所述待分配节点中;将所述待分配节点中,位于所述目标单元左侧的节点更新为待分配节点,并将中心点在所述剖分维的方向上取值小于所述目标单元的网格单元中,处于排序的中间位置的网格单元更新为目标单元,将所述目标单元插入所述待分配节点中,直至所有取值小于所述目标单元的网格单元均插入所述待分配节点;并且,将所述待分配节点中,位于所述目标单元右侧的节点更新为待分配节点,并将中心点在所述剖分维的方向上取值大于所述目标单元的网格单元中,处于排序的中间位置的网格单元更新为目标单元,将所述目标单元插入所述待分配节点中,直至所有取值大于所述目标单元的网格单元均插入所述待分配节点。
[0007]在本说明书一个可选的实施例中,所述方法还包括:每次将网格单元插入待定K

DTree时,更新所述待定K

DTree的深度。
[0008]在本说明书一个可选的实施例中,所述方法还包括:经剖分,得到的节点K对应的包围盒为(K
imin
, K
imax
),位于节点K左侧的子节点KL对应的子包围盒(KL
imin
, KL
imax
)表示为:位于节点K左侧的子节点KR对应的子包围盒(KR
imin
, KR
imax
)表示为:。
[0009]在本说明书一个可选的实施例中,对包围盒的顶点进行存储,包括:确定包围盒在基准方向上的顶点,其中,所述基准方向是基准坐标系的任一坐标轴i指示的方向之一,基准坐标系是所述基础包围盒所处空间的坐标系;对包围盒的顶点进行存储。
[0010]在本说明书一个可选的实施例中,对包围盒的顶点进行存储,包括:按照所述顶点在基准坐标系中逆时针排列的顺序,对顶点进行存储。
[0011]在本说明书一个可选的实施例中,所述方便包括以下至少一项:所述基准坐标系是笛卡尔坐标系;所述网格单元的形状是三角形;
所述目标体是流体力学仿真模型。
[0012]第二方面,本说明书提供一种基于嵌套包围盒概念用于物面网格的数据结构构建装置,用于实现第一方面中的方法。
[0013]第三方面,本说明书提供一种电子设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行第一方面中的方法。
[0014]第四方面,本说明书提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行第一方面中的方法。
附图说明
[0015]为了更清楚地说明本申请实施例或现有的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本申请一实施例中一种基于嵌套包围盒概念用于物面网格的数据结构构建方法的流程图;图2为本申请一实施例中构建的基础包围盒和目标体的示意图;图3a为本申请一实施例中剖分面相交的示意图;图3b为本申请一实施例中得到的对应于目标K

DTree的各个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于嵌套包围盒概念用于物面网格的数据结构构建方法,其特征在于,所述方法包括:创建待定K

DTree;确定物面网格的目标数据集G中未在待定K

DTree中对应有节点的网格单元的数量,其中,目标数据集G是基于目标体的数据构建的,所述目标体的物面由网格单元构成;构建基础包围盒(G
imin
, G
imax
),其中,所述基础包围盒是将所述目标体包含其中的、体积最小包围盒;根据所述网格单元的数量,将所述网格单元插入所述待定K

DTree的节点中,以建立所述网格单元与所述节点之间的对应关系,得到目标K

DTree;并且,根据网格单元与节点之间的对应关系,对所述基础包围盒进行剖分;对包围盒的顶点进行存储,其中,所述包围盒包括所述基础包围盒和针对所述基础包围盒进行剖分得到的子包围盒。2.如权利要求1所述的方法,其特征在于,根据所述网格单元的数量,将所述网格单元插入所述待定K

DTree的节点中,包括:若所述网格单元的数量等于1,则根据所述网格单元的数量,将所述网格单元插入所述待定K

DTree的节点中,以建立所述网格单元与所述节点之间的对应关系,并将所述待定K

DTree中的其他子树均置为空;若所述网格单元的数量等于2,则将所述基准方向所属的维度确定为剖分维,并将一个网格单元插入所述待定K

DTree的节点中,确定另一个网格单元的中心点在所述剖分维的取值是否大于所述一个网格单元在所述剖分维的取值;若是,则将所述另一个网格单元插入所述节点右侧子树的节点中;若否,则将所述另一个网格单元插入所述节点左侧子树的节点中,并将所述待定K

DTree中未对应有网格单元的其他子树均置为空;若所述网格单元的数量大于2,则将所述待定K

DTree中的节点,作为待分配节点;将所述网格单元的中心点在所述坐标轴中方差最大的坐标轴的维度,确定为剖分维;将所述网格单元的中心点的坐标在所述剖分维上按照取值的大小进行排序,将处于排序的中间位置的网格单元,作为目标单元插入所述待分配节点中;将所述待分配节点中,位于所述目标单元左侧的节点更新为待分配节点,并将中心点在所述剖分维的方向...

【专利技术属性】
技术研发人员:毕林袁先旭孟爽李雪亮罗灿炎杜昊陈浩唐志共
申请(专利权)人:中国空气动力研究与发展中心计算空气动力研究所
类型:发明
国别省市:

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

1