[发明专利]一种基于链表排序平衡二叉树的层次包围盒树构建方法在审
申请号: | 201710717268.0 | 申请日: | 2017-08-21 |
公开(公告)号: | CN107689078A | 公开(公告)日: | 2018-02-13 |
发明(设计)人: | 叶秀芬;江帆;梅新奎;刘文智;王天;赵新华;崔建文;贾同超;宫垠;孙晶 | 申请(专利权)人: | 哈尔滨工程大学 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T19/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 排序 平衡 二叉 层次 包围 构建 方法 | ||
1.一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于,具体的实现步骤包括:
(1)将所要建立包围盒树的物体按照合理精度划分成基本几何图元,对每一个几何图元生成一个AABB层次包围盒,将每个独立的包围盒看做为一棵二叉树,每个二叉树只有一个根节点,选择一个物体或者地点作为参照物;
(2)创建一个链表存储二叉树:对步骤(1)中所建立所有只有根节点的二叉树进行遍历,对链表中每个二叉树对象增加一个属性值,存储该二叉树到参照地点的长度;
(3)根据链表中每个二叉树到参照地点的长度对链表进行升序排列;
(4)遍历链表,将链表中的二叉树两两进行合并,奇数元素作为合并后子树的左孩子,偶数元素作为合并后子树的右孩子,合并结果存入该链表;
(5)重复执行步骤(3)至步骤(4)的过程,直到所有二叉树合并为一个二叉树为止。
2.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于,所述的步骤(1)的具体实现步骤包括:
(1.1)将存于CPU端的模型三角片面数据复制到设备端全局存储器中;
(1.2)CUDA多线程并行执行为每个几何图元建立独立包围盒树的核函数KernelA,并对每个几何图元生成包围盒树对象设置标志属性,初始化全部设置为false,表示这些节点还没被合并。
3.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于,所述的步骤(2)的实现方式为设定并执行核函数KernelB,具体的实现方式为:CUDA多线程并行计算参照地点到每个包围盒中心的长度,并将该长度值设置到包围盒二叉树对象中,依次将每个对象插入到链表中。
4.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于,所述的步骤(3)的具体实现方式为:根据二叉树包围盒节点对象距离参照地点的长度对步骤(3)中形成的链表进行排序,该过程不存在并行性,将在主机端执行。
5.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于,所述的步骤(4)的实现方式为并行执行核函数KernelC,具体实现步骤包括:
(4.1)从链表中并行取出两个包围盒二叉树节点,将取出的对象标志值设置为true,表示这两个节点已经被合并过;
(4.2)将两个二叉树包围盒进行合并,之后重新计算大包围盒的中心到参照地点的长度,并将长度设置到新生产的二叉树包围盒对象中,设置该对象的标志值为false;
(4.3)将步骤(4.2)中的新生产的二叉树包围盒对象插入链表。
6.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于,所述的步骤(5)的具体实现步骤包括:
(5.1)判断链表中节点的数量是否为1;
(5.2)若节点的数量为1,说明AABB层次包围盒树的构造完成,最后的节点就是整个包围盒树的根节点;
(5.3)否则重复执行步骤(3),重新构建;
(5.4)不断重复执行步骤(3)至步骤(4)的过程,直到所有二叉树合并为一个二叉树为止。
7.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于:步骤(1)中所述的基本几何图元使用的是三角片元。
8.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于:所述的步骤(4)中使用平衡二叉树方式构造时,在合并生成新的二叉树时不需要在每次合并后都重新计算距离,而是将链表中的元素两两合并后再计算距离。
9.根据权利要求1所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于:所述的步骤(4)中如果链表中元素数量为偶数,则可以完全合并;如果元素数量为奇数,则保留最后一个元素,在下一轮合并时使用。
10.根据权利要求2所述的一种基于链表排序平衡二叉树的层次包围盒树构建方法,其特征在于:步骤(1.1)中所述的三角片面数据为三角形的三个顶点数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710717268.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于注入机中部件的上机装置
- 下一篇:一种制动角总成定位工装及定位系统