[发明专利]一种三角形网格模型GPU并行切片方法有效
申请号: | 201911184017.6 | 申请日: | 2019-11-27 |
公开(公告)号: | CN110956699B | 公开(公告)日: | 2022-10-25 |
发明(设计)人: | 崔滨;魏超;李义宝;李涤尘;吴垠 | 申请(专利权)人: | 西安交通大学 |
主分类号: | G06T17/20 | 分类号: | G06T17/20;G06T1/20 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 朱海临 |
地址: | 710049 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 三角形 网格 模型 gpu 并行 切片 方法 | ||
本发明公开了一种三角形网格模型GPU并行切片方法,包括:步骤1:读取网格模型,在模型读入的同时构建半边数据拓扑结构;步骤2:对半边数据进行预处理;步骤3:根据切片方向的坐标值将数据分组,得到每层相交的边集合;步骤4:将步骤3得到的边集合发送给GPU,对其进行并行的轮廓装配;步骤5:GPU将数据返回到CPU,生成每层的轮廓信息。本发明通过采用哈希表去除了冗余数据,读取数据的同时构建半边数据结构,一定程度上可以去除网格模型的错误;同时在进行轮廓装配时在GPU上运行,采用哈希查找,并且层与层之间的轮廓装配是并行的,可以有效提高分层效率,减少分层时间,减少了物理内存的使用量并减轻CPU的计算负担。
【技术领域】
本发明属于增材制造领域,涉及一种三角形网格模型GPU并行切片方法。
【背景技术】
3D打印技术也称为增材制造或快速成型,主要通过逐层累积的过程形成三维实体。一般流程是计算机三维建模软件建立数字模型,导出STL网格模型,经过各种不同分层软件对STL模型进行分层形成二维轮廓,根据工艺的不同对二维轮廓进行填充形成路径,对应生成机器代码,控制打印头完成路径的填充。
基于STL模型的分层算法有很多种,可以分为均匀分层和自适应分层,也可以分为建立拓扑信息后的分层切片算法和不建立拓扑信息的基于模型连续性的分层算法。不管是以上哪种算法,都是考虑在CPU中串行切片的算法。随着模型数据量的增大,模型复杂程度的增加,原始的基于单核串行切片方法耗时增加,需要等待的时间越来越长,将会延长整个打印过程的用时,因此已不再适用于未来大数据模型的应用,随着计算机CPU由单核发展为多核,GPU图形加速器等异构系统的出现,并行计算已经在很多行业应用,和串行计算相比,并行计算更适用于对增材制造中的复杂模型进行切片计算。
【发明内容】
本发明的目的在于克服上述现有技术的缺点,提供一种三角形网格模型GPU并行切片方法,该方法可以快速进行切片,能够显著减少模型切片时间,而且还减少物理内存的使用量并减轻CPU的计算负担。
为达到上述目的,本发明采用以下技术方案予以实现:
一种三角形网格模型GPU并行切片方法,包括以下步骤:
步骤1:读取网格模型,在模型读入的同时构建半边数据拓扑结构;
步骤2:对半边数据进行预处理;
步骤3:根据切片方向的坐标值将数据分组,得到每层相交的边集合;
步骤4:将步骤3得到的边集合发送给GPU,对其进行并行的轮廓装配;
步骤5:GPU将数据返回到CPU,生成每层的轮廓信息。
本发明切片方法的进一步改进在于:
步骤1中构建半边数据拓扑结构时,首先利用哈希表结构对冗余点去除,建立无重复点集合,然后通过面片包含的顶点序号建立半边数据拓扑结构。
步骤2中对半边数据进行预处理包括整理数据,使其适用于GPU处理,将半边结构简化成点集合和边集合,点集合存储所有顶点的坐标信息,同时集合存储所有的边信息,每条边包括四个值,两个顶点索引值和该条边所属的两个面片值。
步骤3将边集合进行分组的具体方法如下:
步骤3-1:给定分层厚度thickness和模型Z方向的最大值Zmax与最小值Zmin,设分层方向为Z轴,求得分层总数N为:
步骤3-2:遍历步骤2中的边集合,通过索引找到两个点的Z坐标,得到第i条边的Z坐标集合{(Zi)min,(Zi)max},再根据分层厚度thickness和模型Z方向的最小值Zmin,求得此条边相交的Z平面范围,具体如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911184017.6/2.html,转载请声明来源钻瓜专利网。