《一种空间三角网格边界提取方法.pdf》由会员分享,可在线阅读,更多相关《一种空间三角网格边界提取方法.pdf(6页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103559720 A (43)申请公布日 2014.02.05 CN 103559720 A (21)申请号 201310589634.0 (22)申请日 2013.11.19 G06T 7/00(2006.01) G06T 17/00(2006.01) (71)申请人 沈阳工业大学 地址 110870 辽宁省沈阳市经济技术开发区 沈辽西路 111 号 (72)发明人 梁全 苏齐莹 苏东海 (74)专利代理机构 沈阳智龙专利事务所 ( 普通 合伙 ) 21115 代理人 宋铁军 周楠 (54) 发明名称 一种空间三角网格边界提取方法 (57) 摘要 本发明公开了一种。
2、空间三角网格边界提取方 法, 通过将避让几何体进行离散化后, 利用边界提 取算法提取空间三角片云的边界, 为后续配置空 间的映射和避让几何规划提供技术准备。本发明 有效解决了闭式叶轮数控加工时的避让干涉问 题, 适于推广应用。 (51)Int.Cl. 权利要求书 1 页 说明书 3 页 附图 1 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书3页 附图1页 (10)申请公布号 CN 103559720 A CN 103559720 A 1/1 页 2 1. 一种空间三角网格边界提取方法, 其特征在于 : 该方法步骤如下 : (1) 将来自 CAD 软件的。
3、曲面几何模型离散为三角网格数据 ; (2) 遍历所有网格数据及其顶点, 根据邻接三角网格原理, 判断该顶点是否为边界顶 点, 如果是边界顶点, 则保存进边界顶点集合中, 如果不是边界顶点, 忽略 ; 在判断结束后, 边界顶点集合形成了边界顶点数组 ; (3) 对步骤 (2) 生成的边界顶点数组进行排序, 最终生成空间三角网格的有向边界, 为 下一步闭式叶轮的轨迹规划提供准备条件。 权 利 要 求 书 CN 103559720 A 2 1/3 页 3 一种空间三角网格边界提取方法 技术领域 0001 本发明涉及一种边界提取方法, 具体地说, 是指一种空间三角网格边界提取方法。 背景技术 0002。
4、 闭式叶轮是将轴盘曲面、 盖盘曲面和叶片曲面连成一体形成流道的叶轮, 其型腔 具有封闭性, 加工困难, 因此, 开展闭式叶轮五坐标数控加工具有重要的意义。 0003 要对闭式叶轮的一个封闭流道进行轨迹规划, 其难点是自动的对发生碰撞处的刀 具姿态进行修正, 这需要用到一系列复杂的计算几何方面的方法, 这其中包括避让几何体 边界的提取、 配置空间的映射、 避让几何规划等关键技术。 发明内容 0004 发明目的 0005 本发明涉及一种空间三角网格边界提取方法, 其目的在于将避让几何体的几何边 界提取出来, 为后续的避让几何规划提供基础。 0006 技术方案 0007 一种空间三角网格边界提取方法。
5、, 其特征在于 : 该方法步骤如下 : 0008 (1) 将来自 CAD 软件的曲面几何模型离散为三角网格数据 ; 0009 (2) 遍历所有网格数据及其顶点, 根据邻接三角网格原理, 判断该顶点是否为边 界顶点, 如果是边界顶点, 则保存进边界顶点集合中, 如果不是边界顶点, 忽略 ; 在判断结束 后, 边界顶点集合形成了边界顶点数组 ; 0010 (3) 对步骤 (2) 生成的边界顶点数组进行排序, 最终生成空间三角网格的有向边 界, 为下一步闭式叶轮的轨迹规划提供准备条件。 0011 优点及效果 0012 本发明这种空间三角网格边界提取方法, 通过将避让几何体进行离散化后, 利用 边界提。
6、取算法提取空间三角片云的边界, 为后续配置空间的映射和避让几何规划提供技术 准备 ; 同时, 本发明方法也可以应用在计算机辅助文物复原系统中对破损文物的修复工作 中。 0013 与现有技术相比, 本发明具有如下优点和有益效果 : 0014 (1) 解决了配置空间映射算法中避让几何体的映射问题 ; 0015 (2) 解决了空间三角网格的边界提取算法问题 ; 0016 (3) 为闭式叶轮无干涉刀具轨迹规划铺平了道路, 提供了一种切实可行的轨迹规 划方法。 附图说明 0017 图 1 是空间三角网格曲面示意图 ; 0018 图 2 是实施例 1 示意图 ; 其中图 2(a) 为封闭曲面, 图 2(b。
7、) 为空间三角网格曲 说 明 书 CN 103559720 A 3 2/3 页 4 面, 图 2(c) 为提取的边界 ; 0019 图 3 是实施例 2 示意图 ; 其中图 3(a) 为闭式叶轮一封闭流道, 图 3(b) 为离散后 的空间三角网格曲面, 图 3(c) 为提取的边界。 具体实施方式 : 0020 下面结合附图对本发明做进一步的说明 : 0021 本发明是一种空间三角网格边界提取方法, 其特征在于 : 该方法步骤如下 : 0022 (1) 将来自 CAD 软件的曲面几何模型离散为三角网格数据 ; 0023 (2) 遍历所有网格数据及其顶点, 根据邻接三角网格原理, 判断该顶点是否为。
8、边 界顶点, 如果是边界顶点, 则保存进边界顶点集合中, 如果不是边界顶点, 忽略 ; 在判断结束 后, 边界顶点集合形成了边界顶点数组 ; 0024 (3) 对步骤 (2) 生成的边界顶点数组进行排序, 最终生成空间三角网格的有向边 界, 为下一步闭式叶轮的轨迹规划提供准备条件。 0025 该空间三角网格边界提取方法, 具体步骤如下 : 0026 1避让几何体边界的提取 0027 所谓避让几何特指加工中刀具不能与其相干涉的几何体。 本发明专利采用提取避 让几何边界的方法来解决碰撞干涉问题。 0028 空间网格数据是一种非常重要的数据格式, 在科学计算可视化、 计算机辅助几何 设计、 三维建模。
9、和重构、 有限元计算等领域有着广泛的应用。本发明专利将空间曲面离散 成三角片, 并利用的 “空间三角网格边界提取方法” , 将避让几何体的边界提取出来, 解决了 “避让几何规划” 算法中碰撞空间映射困难的问题, 为避让几何规划算法的开发铺平了道 路。 0029 2空间三角网格边界提取方法的基本原理 0030 边界提取方法的基本原理是将边界点提取出来, 并按照某个方向顺次排列, 依次 连接构成一条封闭的曲线。所以, 边界点的判断是整个方法的基础。 0031 由于曲面三角网格数据分布在曲面上, 而且采样不规则, 因此首先要在三角网格 数据中定义邻接三角网格和邻接点。对于网格数据中的点, 如果它是某。
10、一个三角网格的一 个顶点, 则称这个三角网格是这个点的邻接三角网格 ; 如果网格数据中的两个点的连接线 段为某一三角网格的边, 则称这两个点为邻接点。 曲面上一点P的所有邻接三角网格构成P 的邻接三角网格集合 TP T|P T, 其中 T 为曲面上的一个三角网格。P 的所有邻接点构 成 P 的邻接点集合 VP T,P T&Q T, Q 是曲面上异于 P 的点。要判断 P 点是否为边 界点, 可以通过 VP来判断。如果 VP中的点都能通过三角网格的边连接组合成闭合的曲线, 则点 P 为内点, 否则为边界点。 0032 如下图 1 所示, VH A,I,J,E,F,G, 因为 A、 I、 J、 E。
11、、 F 和 G 组合成一个闭合的曲 线, 所以点 H 为内点, 不是边界点 ; 而 VA B,I,H,G, 因为 B、 I、 H 和 G 不能组合成闭合曲 线, 所以 A 为边界点。 0033 3边界提取算法 0034 先定义要用到的数据结构, 设空间曲面上有 N 个点, 组成 M 个三角网格。其中三角 网格的数据结构为 : 说 明 书 CN 103559720 A 4 3/3 页 5 0035 用三个整形 (int) 数据 A、 B 和 C 分别保存三角网格的三个顶点的索引值, 并定义 名为 TRIANGLE(三角形) 的结构体。 0036 三角网格顶点的存储结构为 : 0037 定义 TR。
12、IVERTEX(三角形顶点)结构体, 结构体的成员变量为 : 整形 index 变量, 保存该点的索引 ; 整形向量 NeighborTriIndex 变量, 保存该点的邻接三角 形索引链表 ; 整形变量 NumAdjPoints, 保存该点的邻接边界点的个数 ; 整形向量 AdjacentPtsIndex, 保存该点邻接边界点索引值的链表。 0038 边界提取算法的完整步骤为 : 0039 (1) 对曲面上的每个点建立它的 “邻接三角网格” 链表 NeighborTriangles。 0040 (2) 对曲面上的每个点作边界点判断。生成边界点数组 BoundaryVerVec。边 界点判断方。
13、法见第 4 部分。NumAdjPoint 记录 Temp 中点的个数, 如果当前点为内点, 则 NumAdjPoint 为 0, 数组 AdjacentPtsIndex 存放 Temp 中的点的索引值。 0041 (3) 从 BoundaryVerVec 中选取 NumAdjPoint 值最大的一个点 BoundaryVerVeci 作为当前点, 新建一个边界曲线, 把此点加入曲线作为起点, 继续搜索此边界上的其它点。 如果 BoundaryVerVeci.NumAdjPoints 为 0, 则转到第 (6) 步。 0042 (4) 从 当 前 点 的 AdjacentPtsIndex 中 取。
14、 出 一 点 BoundaryVerVecj, 并 在 AdjacentPtsIndex 中把它删除, 当前点的 NumAdjPoint 减 1。 0043 (5)从BoundaryVerVecj的AdjacentPtsIndex中找出当前点的索引, 将其删除, BoundaryVerVecj.NumAdjPoints减1。 如果BoundaryVerVecj不等于边界曲线的起点, 则把它加入到当前的边界曲线中, 并把它作为当前点, 转到第 (4) 步, 否则转第 (3) 步。 0044 4边界点判断方法 0045 上述步骤 (2) 中边界点的判断方面如下 : 0046 (1) 建立一个临时点。
15、数组 Temp, 用来保存某个点的 “邻接边界点” , 并置为空 ; 0047 (2) 对当前点的所有邻接三角网格上异于当前点的点作如下操作 : 如果 Temp 包含 此点, 则从 Temp 中删除此点 ; 否则, 把此点加入到 Temp 中 ; 0048 检查 Temp, 如果 Temp 为空, 则当前点为内点, 否则为边界点。并且, Temp 中的点是 当前点的 “邻接边界点” 。 0049 应用本发明方法提取边界曲线的具体实施例如下 : 0050 实施例 1 0051 该方法步骤如上所述, 提取过程参见图 2, 左侧图 2(a) 为封闭曲面, 中间图 2(b) 为空间三角网格曲面, 右侧图 2(c) 为提取的边界。 0052 实施例 2 0053 该方法步骤如上所述, 提取过程参见图 3, 左侧图 3 (a) 为闭式叶轮一封闭流道, 中 间图 3(b) 为离散后的空间三角网格曲面, 右侧图 3(c) 为提取的边界。 说 明 书 CN 103559720 A 5 1/1 页 6 图 1 图 2 图 3 说 明 书 附 图 CN 103559720 A 6 。