支持stl数据源的动态空间索引构建方法

文档序号:8543884阅读:430来源:国知局
支持stl数据源的动态空间索引构建方法
【技术领域】
[0001] 本发明提供支持S化数据源的动态空间索引构建方法,可用于快速重建海量数据 数字模型的拓扑结构,属于数字化设计与制造领域。
【背景技术】
[0002] S化文件格式是3DSystems公司为立体光固化成型CAD系统开发的一种角网 格结构记录=维空间曲面信息的文件格式,因其数据格式简单和良好的跨平台性,现已被 广泛应用于快速成型、CAD/CAM、虚拟现实等领域。
[0003] 在实际应用中,S化文件格式存在着网格顶点数据冗余W及缺乏面片邻接信息等 固有缺陷。随着3D打印技术的逐渐普及,该些缺陷所带来的负面影响日益突出。现有的 解决方法主要是采用顶点数据信息的引用来代替网格顶点的数据复本,然后基于S化文 件中的S角面片信息显式的重建曲面拓扑。安涛等在《基于红黑树的STL数据快速拓 扑重建算法》(机械科学与技术,2008,27巧):1031-1034)中采用红黑树作为索引结 构,可有效去除S化文件中的冗余信息,但红黑树建树复杂,为了检测树的平衡性需要进 行节点颜色的改变和树的旋转。杨扇院等在《基于STL文件的曲面网格重建算法》(计 算机工程,2011,37(4))中采用二叉树结构进行顶点聚合,该算法可快速查询面片信 息,实现拓扑重建,但二叉树的高度会因数据量增大而急剧增加,导致调整树的平衡付出 时间代价过大。化U等在《Therapidtopologicalreconstructionof3D-solidand simplificationofweightedQEM》(Vehi州larElectronicsandSafety(ICVES), 2013 IE邸InternationalConferenceon.I邸E, 2013: 273-277)中通过数组存储顶点信息, 但是数组无法动态存储,插入和删除操作效率低。王增波在《S化格式文件的快速拓扑重 建算法》(计算机应用,2014, 34巧):2720-272)中W哈希表作为数据结构,哈希表在查询特 定键值的数据效率非常高,但其最大难点是散列函数的设定,设置不当会使查询效率下降, 并且哈希表对于不同键值的查找容易误判,导致查询的准确度降低。

【发明内容】

[0004] 本发明的目的是针对目前S化文件格式存在网格顶点数据冗余W及缺乏面片邻 接信息等缺陷,提出一种基于多维动态空间索引的显式曲面拓扑重建算法,通过建立顶点 数据的索引结构消除S化文件中冗余的顶点数据,并基于索引结构的开放性融入半边结 构,实现网格曲面拓扑的快速重建,在保证曲面网格冗余顶点去除效率与拓扑结构重建效 率的前提下,实现网格曲面拓扑邻域信息的快速查询。
[0005] 本发明的目的是通过如下技术方案实现的: 支持S化数据源的动态空间索引构建方法,其特征在于步骤依次为;(1)对S化文件格 式的数字模型构建网格曲面顶点的KD树索引,在构建的过程中逐步消除网格曲面中的顶 点冗余数据;(2)通过KD树的最近邻查询算法在所构建的KD树中快速查询S化数据源中 的顶点信息,提高顶点数据复本消除效率;(3)基于KD树叶节点层数据存储的开放性融入 半边数据结构,将STL中记录的=角面片信息转化为半边结构中的半边信息,进而将半边 信息转化为KD树中顶点信息的引用,实现半边结构与KD树的融合;(4)通过KD树的最近 邻查询算法,在构建好的顶点KD树中快速查询网格顶点信息,间接地获取半边信息,并充 分利用半边结构中的半边环序及对偶半边信息,连接相邻=角面片,实现完整曲面拓扑结 构的快速重建。
[0006] 所述的支持SIl数据源的动态空间索引构建方法,其特征在于步骤(1)对SIl文件 格式的数字模型构建网格曲面顶点的KD树索引,在构建的过程中逐步消除网格曲面中的 顶点冗余数据,具体步骤为:(1) 1,必^ 0 (其中i=l,2,w,n,0表示空集,慷示 构建的顶点邸树,并将遇为空集,11为5化文件中的面片数);(2)解析5化文件中的第/ 个面片/;的数据区段,获得/,的^个顶点K,,。;(3) 1 (其中J=l,2,3) ;(4)应 用邸树的最近邻查询算法在冲查询的最近邻点K/,若声K/,则用邸树的构 建算法将1〇插入至冲;否则,直接转巧);(5)J^九1 ;做重复(4)与巧),直至J> 3; (7)i- 一1 ;巧)重复(2)至(7),直至i>A当上述过程结束后,巧勺叶节点层所存 储的数据即为去除顶点数据复本后的网格曲面顶点集合。
[0007] 所述的支持S化数据源的动态空间索引构建方法,其特征在于步骤(3)中的基于 KD树叶节点层数据存储的开放性融入半边数据结构,将STL中记录的S角面片信息转化为 半边结构中的半边信息,进而将半边信息转化为KD树中顶点信息的引用,实现半边结构与 邸树的融合,具体步骤为;(1) 1,公^ 0,户^ 0巧中域示半边集合,域示面片集 合,将化为空集);(2)解析S化文件中的第i个面片/,的数据区段,获得面片法向/7, 与顶点数据K,,,Kc,k,3;(3)构造半边数据结构及面片数据结构/,,并将其数 据域均初始化为空;(4) 〇W)mod3;(6)应用邸树的最近邻查询算法,在网格 曲面顶点KD树冲获取Ku的最近邻点所在的叶节点Wk,,.);(7)将Wk,,)作为与,的终 点,并将与洗为与_斯下一条半边;做将与,作为的一条出射半边添加至Wk,,.)的半 边集合冲;(9)J^九1 ;(1〇)重复妨至巧),直至J> 3 ;(11)将如作为/,的起始 半边,将A存入对应的法向信息的数据区域,然后将/,添加至; (12)将作为与,, 与刀与与3的所属面片,然后将如,与刀与与遏次添加至冲;(13) 一1 ;(14)重复(2) 至(13),直至i>A该过程可W实现S化文件中每个S角面片的拓扑重建。
[0008] 所述的支持S化数据源的动态空间索引构建方法,其特征在于步骤(4)中的通过 KD树的最近邻查询算法,在KD树中利用最近邻查询算法快速查询顶点信息,间接地获取半 边信息,并充分利用半边结构中的半边环序及对偶半边信息,连接相邻=角面片,实现完整 曲面拓扑结构的快速重建,其中对偶半边的判断规则为;对于任一半边A(e,4, /,与),若其 对偶半边与存在,则必定存在于e的出射半边集合/中,且4的终点对应的出射半边集合中 也必包含设半边集合用^总共包含?^半边,则为每条半边捜索对偶半边的过程如下: (1) 1;(2)对于/^第/条半边与,在其终点的出射半边集合/中按上述判断规则捜 索与的对偶半边^ / ; (3)若存在,将其信息记录于与的对偶半边数据域,并从与终点 的半边集合中删除^/;(4) 一1;(5)重复(2)至(4),直至/>曲完成半边结构形式 的曲面拓扑重建的整个过程;其中KD树的叶节点记录了全部的网格曲面顶点数据,同时也 记录了该顶点一条出射半边的信息,在半边结构中,每条半边的终点均为KD树叶节点层存 储的网格曲面顶点的引用,半边结构与KD树相互融合的动态空间索引最终建立。
[0009] 本发明与现有技术相比,具有W下优点: (1) 在基于S化文件的网格曲面顶点数据复本消除环节,本文算法采用支持多维数据 查询的动态空间索引进行网格曲面顶点数据复本判断,使得冗余顶点去除效率显著提升; (2) 在曲
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1