[发明专利]基于层变边数组和邻接边顺序链表的等层厚切片方法有效
申请号: | 201610030769.7 | 申请日: | 2016-01-18 |
公开(公告)号: | CN105550468B | 公开(公告)日: | 2018-06-26 |
发明(设计)人: | 魏东;田明海;郭昊;张华倩 | 申请(专利权)人: | 沈阳工业大学 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 沈阳智龙专利事务所(普通合伙) 21115 | 代理人: | 宋铁军 |
地址: | 110178 辽宁省沈*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明是一种基于层变边数组和邻接边顺序链表的等层厚切片方法,该算法首先提取STL文件中信息,并将其保存在点、边、面表中,然后使用STL(Standard Template Library,标准模板库)中的Set容器去除点表中的重复点和边表中的重复边,再利用以上数据求出层变边数组,最后利用层变边数组配合邻接边顺序链表进行断链及合链操作,来求出下一个切片层的邻接边顺序链表,该方法利用的是STL文件中三角面片的连续性,加速了计算邻接边顺序链表的工作。该方法运行速度快,可减少切片软件中切片过程消耗时间,具有很强的实用价值。 | ||
搜索关键词: | 顺序链表 邻接边 数组 切片 层厚 标准模板库 切片软件 三角面片 切片层 再利用 重复 断链 合链 算法 去除 消耗 保存 配合 | ||
【主权项】:
1.一种基于层变边数组和邻接边顺序链表的等层厚切片方法,用于在3D打印机软件切片过程中加速求得轮廓环上交点顺序,其特征在于:所述方法利用STL文件中的边的连续性,通过层变边数组和上一层邻接边顺序链表加速求得当前层的邻接边顺序链表;所述方法按以下步骤进行:步骤一:提取点、边、面的信息,具体为:通过计算机读取STL文件,提取当前三角面片中三个点信息存入点表,将这三个点在点表中的索引值两两组合作为边存入边表,最后使用这三条边的索引值重组存入三角面片表;步骤二:对点表、边表冗余数据去重,具体为:先对set容器进行运算符重载,然后使用set容器分别载入点信息和边信息,实现自动去重;步骤三:点、边、面数据转储,具体为:将去除冗余的点、边信息以及面信息存储到map容器中,用于后续算法调用;步骤四:建立层变边数组,具体为:将所有边的索引值存放于第一次被截平面所截的层;步骤五:求第一层轮廓环上的邻接边顺序链表,具体为:1)根据三角面片的邻接拓扑关系,求得第一层邻接边顺序链表;2)利用层变边数组中数据依次加速求得后续层的邻接边顺序链表:3)根据邻接边顺序链表求得每层的交点顺序链表;步骤六:求除了第一层以外轮廓环上的邻接边顺序链表,具体为:在求其他层的邻接边顺序链表时,首先遍历前一层邻接边顺序链表中的每个元素,若边与当前层截平面不再相交则将其从链表中删除;此时得到该层散乱的邻接边顺序链表,接下来根据邻接拓扑关系将散乱的邻接边顺序链表和层变边数组中该层数据重组,重组时按照下述步骤:遍历当前层链表,从前往后每个链的首和尾与层变边数组中数据进行链重组,直至链表长度大于三,且链的首与尾同属一个三角形,或者层变边数组中没有可以再链接的边,则开始对下一个链进行重组,直至层变边数组中所有的边都被加到链中停止;再次遍历当前层链表,用当前链尾端与其他链表首进行连接,如果匹配成功则将后链表按正常顺序加入前面链,如果当前链尾端与其他链表尾端存在邻接关系则将后链表以倒序加入前链表并删除后链表,直到当前链的链表首与链表尾存放的边同属于一个三角面片,然后开始下一个链表的连接工作,直至所有链表均处理完;最后使用邻接边顺序链表中所有的边与截平面相交求出交点,并且将交点按顺序存入交点顺序链表。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于沈阳工业大学,未经沈阳工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610030769.7/,转载请声明来源钻瓜专利网。