热门关键词:

STL模型分层算法的优化及应用

  • 该文件为pdf格式
  • 文件大小:612.79KB
  • 浏览次数
  • 发布时间:2014-08-23
文件介绍:

本资料包含pdf文件1个,下载需要1积分

STL文件格式被大多数快速成型机所接受,当前被视为快速成型系统的工业标准,如何合理得实现 STL文件模型分层切片是快速成型制造中关键的-环。分层切片的目的就是将复杂的三维模型转换为简单的二维层片,通过切片处理将计算机中的三维几何模型用轮廓线来表示。轮廓线表示了分层切片的边界,由分层平面与 STL文件模型的交线段顺序连接获得封闭的环路组成。通过对现有的快速成型分层处理方法深入研究分析,提出了基于面片分组排序分层制造同步运行的高效分层算法。

2 STL文件模型现有切片分层算法概述STL分层切片算法常用的方法是 :通过分析切平面与三角形网格之间的位置关系,若相交则求出交线段。求出该切平面与STL网格模型所有的交线段后 ,将该分层面的所有交线段有序地连接起来,从而获得该分层切片面的轮廓线 ,交线段的有序排列是-个很费时的过程。这种计算方式在获得轮廓线时,必须要遍历所有的三角形网格面片,可能大部分面片都不与切平面相交,这样就造成数据处理效率低并且运算量大。为了提高分层效率,国内外学者都在进行研究,提出了-些改进分层切片算法。首先就是对STL文件模型数据进行预处理,然后再进行分层切片。其中主要的切片分层算法可分为以下三类:基于几何拓扑信息的分层切片算法、基于三角形面片位置信息的分层切片算法、基于STL网格模型几何连续性的分层切片算法。

2.1基于几何拓扑信息的分层切片算法因为 STL文件数据中没有模型的几何拓扑信息,所以针对几何拓扑信息的分层切片算法首先要建立模型的几何拓扑信息,通过三角形面片的点、线和面用链表的形式或者是平衡二叉树的形式来建立STL网格模型的整体拓扑信息,通过拓扑信息迅速找到相邻的三角形面片,进行切片处理〃立的拓扑信息要求在已知某-个三角形网格的情况下,能够直接查找出构成该三角形网格的三条边和三个顶点,然后通过该三角形网格边的拓扑信息索引到与之相连的三角形网格。

基于几何拓扑信息的分层切片算法的基本过程为:首先根据分层切片截面的高度,确定-个与之相交的三角形网格面片,计算出交点坐标,然后根据前面建立的拓扑信息,查找下-个相交的三角形网格面片,求出交点,依次查找进行下去,直到回到初始点,依次连接交线段,最终得到该切片层面完整的轮廓线。

算法的优点在于:利用拓扑信息建立的算法,能够使切平面来稿日期:2012-05-15基金项目:内蒙古自治区自然科学基金项 目(2011MS0701)作者简介:王春香,(1962-),女,内蒙古包头人,教授,硕士,主要研究方向:优化方法及逆向工程技术及其应用等研究88 王春香等:STL模型分层算法的优化及应用 第 3期和STL文件模型所得的交点集合是有序的,不需要对所得交线段进行重新排序,可直接获得首尾相接的轮廓线,简化了获得切片轮廓的过程。该算法的局限性在于:建立 STL文件数据拓扑信息相当费时,占用内存大,尤其是三角形网格面片比较多的情况下,分层效率明显下降。

22基于三角形面片位置信息的分层切片算法基于三角形面片位置信息的分层切片算法无需对STL文件模型进行整体几何拓扑信息的建立提取,该类算法考虑了三角形网格面片在切片过程中的两个特征:(1)三角形网格面片在分层方向上跨距越大,则与之相交的切平面越多:(2)按z坐标轴方向切,三角形网格面片的 距初始切平面越远,求得切片轮廓线时越靠后。充分利用这两个特征,以减少切片过程中对三角形网格面片与切平面位置关系的判断次数,最终达到快速分层的目的。

基于j角形面片位置信息的分层切片算法的基本过程为:首先沿着 z轴切片方向,将三角形网格面片按照Z坐标值的大小进行分类排序,对于不同的三角形网格面片,z帅 值小的三角形网格面片排在前面,当 z唧 值相同时,对三角形面片的五 值进行比较,小的排在前面。其次在分层过程中,对三角形网格面片进行相交关系判断时,如果分层高度 Z坐标值小于某-类三角形网格面片 时,则不用对其进行相交关系的判断;同理如果分层高度 Z坐标值大于某-类三角形网格面片Z 时,对排在该类面片以前的网格面片也不需要进行相交关系的判断。最后再对分层截面穿过的所有三角形网格面片进行相交计算,求出交线后,将交线段按照顺序连接,生成该切片层面的截面轮廓线。

算法的优点在于:根据 STL文件模型三角形网格面片的几何特征,对三角形网格面片进行分类排序,使之在切片处理过程中减少了分层处理中三角形网格面片与切平面位置关系的判断,提高了分层处理速度。该算法的局限性在于:(1)分类排序过程中类的划分比较模糊,不能够杜绝三角形J网格面片与切平面位置关系的无效判断;(2)切平面与三角形网格面片相交计算时,要进行两次求交线段计算;(3)所得交线段是无序的,必须对所得交线段进行连接关系的处理,形成有向的闭合截面轮廓线。

2.3基于 STL网格模型几何连续性的分层切片算法基于STL网格模型几何连续性的分层切片算法是对以上两种算法进行改进,以提高三角形网格面片的搜索效率。STL网格模型在分层方向上具有三个方面的连续性:(1)与切平面相交的三角形网格面片连续性;(2)与切平面相交的三角形网格面片集合的连续性;(3)所得截面轮廓线的连续性。

基于STL网格模型几何连续性的分层切片算法的基本过程为:首先是将三角形网格面片建立面片集合,然后在分层处理过程中,动态的形成与当前分层平面相交的三角形网格面片表,当切平面移动到下-层时,先分析动态的面片表,将不相交的网格面片删除,同时将与该切平面相交的新的三角形网格面片加入到动态面片表中,建立局部三角形网格面片的拓扑信息,进行求交线段运算,获得截面轮廓线,直到分层结束。

类算法的优点在于:通过对不同的切平面建立动态面片表,降低了内存使用量,减少了拓扑信息所需的时间提高了分层处理效率。该类算法的局限生在于:在动态面片表中增减 角形网格面片,建立拓扑关系仍旧是-个比较耗时的工作。

3改进的STL模型分层算法分层算法必须能够满足分层速度的要求,这是加工工艺所要求的。下-切片层数据,是在前-分层切片被加工完毕后计算出来,且整个系统在工作时要求是全自动的,因此在每个加工环节都必须要有较高的可靠性,同时也必须有-个速度快的切片软件。通过分层切片获得层面轮廓线数据,然后根据快速成型的加工方式,生成扫描路径,控制快速成型系统完成加工。通过对现有的 STL文件模型分层处理算法和过程进行整理分析可以得出,影响STL网格模型分层处理效率的因素主要有三个:(1)切平面与三角形网格面片位置关系的判断;(2)切平面与三角形网格面片交线段的计算;(3)截面轮廓线的输出。

通过对前面所描述的不同分层算法进行分析,吸收其各自的优点,提出先排序,后求交。然后逐层输出轮廓线,将数据以CLI格式(ASCII)输出,同时输入快速成型机中。这样就可以保证在进行分层切片的数据处理的同时进行快速制造,并最终生成整体分层截面图。

3.1三角形面片排序根据基于三角形面片位置信息的分层切片算法和基于 STL网格模型几何连续性的分层切片算法可以得出STL网格模型有两个特征:(1)根据每个三角形网格面片沿着分层方向最低点和最高点的位置不同,位置低的首先被切到,位置高的后被切到;跨距不同,使得该三角形网格面片与切平面相交的次数也不同,跨距越大分层切片次数越多;(2)由于三角形面片是连续的,因此与相邻的两个切片分层面相交的三角形网格面片的集合变化不大。为了减少三角形面片与分层切片平面位置关系的判断次数,将三角形面片沿着分层方向按照坐标值进行分组。如果有 Ⅳ个切平面,则将三角形网格面片分成 Ⅳ组~与同-切平面相交的三角形网格面片放在同-组中,保证在进行某-切片分层时,只与该切片相交的三角形网格面片参与求交线段运算,进而减少了三角形网格面片与切平面位置关系的判断,提高了分层效率。

3.2三角形面片求交线段在进行分层切片求交线段的问题上运用MATLAB语言中的Trioutline函数来计算空间三角形网格面片与切平面的交线段,进行运算时无需建立三角形网格面片之间的拓扑关系,加快机械 设计 与制 造NO.3Mar.20l3y-40 4302 y-16.4302第 3层切片轮廓线 第9层切片轮廓线图4斗齿切片层面轮廓Fig.4 Bucket Tooth Slice Level Contour斗齿 2的三维模型及按分层厚度为0.3ram的整体分层,如图5所示。部分切片轮廓,如图6所示。

(a)(h)图5斗齿2三维模型及分层切片Fig.5 Bucket Tooth 2 3D Model and Slicing50-l00 50 0 50 100 150 2O0图6斗齿2部分切片轮廓Fig.6 The Part of the Slice Profile of Bucket Tooth 25结论通过对现有的 STL模型分层算法进行分析和研究,在考虑现有算法各 自特点的基础上吸收其优点,提出了基于面片分组排序分层制造同步运行的算法来获得分层切片轮廓线和数据。通过对三角形网格面片按层数进行分组,减少了切片平面与三角形网格面片关系的判定次数,节省了时间。切平面与三角形网格面片交线段无需进行排序,可以直接获得轮廓线的图形和数据,节省了对交线段形成轮廓线所需时间。通过实例表明该算法运行可靠,且有较高的分层效率,通过分层方向和层厚的选择保证了模型的精度及质量。

正在加载...请等待或刷新页面...
发表评论
验证码 验证码加载失败