利索能及
我要发布
收藏
专利号: 2022116498740
申请人: 南京信息工程大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-08-12
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于STL模型的圆柱体布尔求差运算方法,其特征在于包括如下步骤:

步骤1,获取工件十字网格模型;

步骤2,基于链式邻接表构建圆柱体曲面和端面的二维数组十字网格模型;

步骤3,计算工件与圆柱体的相交环链;

步骤4,将相交环链映射为相交面;

步骤5,基于DDA插补法和射线法优化相交面;

步骤6,基于广度优先遍历法删除工件表面多余节点。

2.如权利要求1所述的方法,其特征在于:所述步骤1的具体内容是,对工件表面进行十字形网格划分,选取网格节点的上下左右四个方向和依据空间向量的叉乘公式,获取工件十字网格模型。

3.如权利要求1所述的方法,其特征在于:所述步骤2中,将圆柱体构造为两个二维数组十字网格模型,其中:构建圆柱体曲面二维数组十字网格模型的具体过程是,将曲面中心圆的圆周角作为二维数组的x轴地址值;将空间中的点投影到端面圆的法向量方向上,端面圆心点到该法向量方向上的投影点的距离值为二维数组的y轴地址值,将(x,y)作为二维数组的地址值;

构建圆柱体端面二维数组十字网格模型的具体过程是,将端面中心圆的圆周角作为二维数组的x轴地址值,将端面上的点到中心圆圆心的距离值作为二维数组的y轴地址值,将(x,y)作为端面二维数组的地址值,基于链式邻接表遍历曲面和端面的十字网格模型,构建圆柱的端面和曲面的二维数组。

4.如权利要求1所述的方法,其特征在于:所述步骤3的具体过程是,计算工件表面所有的环链片段,若工件十字网格表面节点在圆柱体的外部,且它的任意一个相邻表面节点在圆柱的内部,那么这两个点构成的线段与圆柱体的交点就作为环链上的一个点加入存储环链片段的交点环链栈中;对所述线段和圆柱体进行相交点的计算,得到相交环链片段,将距离最小的环链片段间的两个端点连接,循环此过程,直到生成一条完整的由相交环链片段构成的相交环链。

5.如权利要求3所述的方法,其特征在于:所述步骤4的具体内容是,将相交环链的节点坐标值对应到曲面二维数组和端面二维数组上的地址值,快速映射二维数组闭合环链片段,拼接曲面和端面的二维数组闭合环链片段,构建二维数组闭合环链。

6.如权利要求1所述的方法,其特征在于:所述步骤5中,基于DDA插补法优化相交面的具体内容是,基于DDA插补的方法对二维数组闭合环链上不连续的两个节点进行插补优化;

当检查到端面二维数组与曲面二维数组之间存在连续的环链时,基于DDA插补进行跨数组的插补优化。

7.如权利要求1所述的方法,其特征在于:所述步骤5中,基于射线法优化相交面的具体内容是,在端面二维数组和曲面的二维数组上通过射线法求出位于二维数组闭合环链内部的某个节点,再利用广度优先遍历标记位于二维数组闭合环链内部的节点,将所有标记的内部节点复制到工件表面。

8.如权利要求1所述的方法,其特征在于:所述步骤6中,工件表面多余节点是指工件表面上被包围在圆柱体内部的节点,具体过程是,在工件的当前表面上查找到一条包围环链片段后,所述包围环链是位于工件模型上的节点的集合,是在计算相交环链节点时额外计算出的数据,用来删除工件表面多余的节点;对十字网格上位于圆柱体内部的节点进行广度优先遍历进行查找,当查找到一个节点满足包围环链的条件且不是已经标记为包围环链片段节点时,即找到了新的包围环链片段,计算新的包围环链片段,重复此过程,直到找不到未被标记为环链片段的十字网格节点。