本发明专利技术公开了一种基于扫描偏置的三维打印零件支撑自动生成方法,包括:确定STL模型中需要生成支撑的区域集合;将区域集合中的每个区域分别投影到xy平面上,形成投影区域,对每个投影区域生成沿x和y方向相互交错的一系列扫描线,构成扫描线集合;将扫描线集合中每一条扫描线沿z轴方向扫描,求取两个交线序列集合;用等间距为d的平行线对两个交线序列集合求交点,得到两组交点序列集合;对两组交点序列集合分类进行z轴方向进行偏置,得到对应的4组偏置后的点序列集合;依次选取这4组点中的3点创建三角面片,生成支撑面片数据信息,完成支撑的生成。该方法实现了三维打印中零件的支撑自动生成,原理清晰,操作简单。
【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种,包括:确定STL模型中需要生成支撑的区域集合;将区域集合中的每个区域分别投影到xy平面上,形成投影区域,对每个投影区域生成沿x和y方向相互交错的一系列扫描线,构成扫描线集合;将扫描线集合中每一条扫描线沿z轴方向扫描,求取两个交线序列集合;用等间距为d的平行线对两个交线序列集合求交点,得到两组交点序列集合;对两组交点序列集合分类进行z轴方向进行偏置,得到对应的4组偏置后的点序列集合;依次选取这4组点中的3点创建三角面片,生成支撑面片数据信息,完成支撑的生成。该方法实现了三维打印中零件的支撑自动生成,原理清晰,操作简单。【专利说明】
本专利技术涉及三维打印领域,尤其是涉及一种在三维打印模型处理阶段通过扫描偏置的方法进行零件支撑自动生成方法,能够快速有效地生成零件所需的支撑,并且可以进行人工的编辑。
技术介绍
三维打印技术是一种以数字化模型文件为基础,运用粉末状金属或塑料等可粘合材料,通过逐层打印的方式来构造零件的技术,其主要加工过程是将需要打印的零件以一定的层厚进行切片分层,然后从基底开始打印每一层,当前层都是在前一层上堆积形成的,前一层对当前层起到定位和支撑的作用。如果出现前后两层之间的轮廓和面积发生较大的变化时,前一层的轮廓就不能给当前层提供足够的定位和支撑作用,导致加工失败,所以在三维打印之前需要对零件模型进行处理,生成足够的支撑来保障之后的加工过程。三维打印零件的支撑需要满足以下要求:1、生成的支撑必须保证足够的强度和稳定性,以确保其自身和它所支撑的零件不会发生形变;2、支撑应该尽可能少,多余的支撑会导致材料浪费,加工效率降低;3、支撑应该易于从零件表面剥离,如果支撑部分和零件粘接过牢,不仅增加支撑剥离所需时间,而且会影响支撑区域零件表面加工精度。考虑到这些要求,合理地选择生成支撑的位置和支撑的形态就显得非常重要,目前对于零件支撑生成的方案主要有以下几种:1.对零件模型切片文件中上下层之间的轮廓线进行比较,在差异过大的地方增加支撑线使得前一层对当前层可以有很好的支撑作用(陈玉萍、武晓宏等,快速成型技术中支撑结构的自动生成方法研究,西安科技大学学报,2007,27 (3):485-489) ;2.对零件STL模型进行分析,确定出一系列需要支撑的面片,在面片上生成柱形的支撑(董学珍、莫键华等,光固化快速成形中柱形支撑生成算法的研究,2004,32 (8):16-19) ;3.计算支撑线和零件模型的交线轮廓,然后在轮廓内生成齿形的支撑(李卫、吴任东等,快速成形中齿形支撑结构的自动生成算法,中国机械工程,2003,14(24):2127-2130)。方案I在一定程度上可以达到生成支撑的目的,但是在生成支撑的过程中没能很好地利用模型文件的拓扑信息,生成的支撑不够可靠,而且支撑不易剥离。方案2考虑了模型文件的拓扑信息,但是单一生成柱形的支撑无法对待支撑面形成足够的支撑力。方案3生成的齿形支撑可以对零件进行比较好的支撑,并且也考虑了支撑的剥离,但是在生成这种齿形支撑时计算量太大,效率偏低。此外,三种方案都不能进行支撑的人工编辑,生成的支撑有效性和可靠性存在问题。
技术实现思路
本专利技术提供了一种,通过对零件STL模型进行分析后确定一系列的待生成支撑区域,在待生成支撑区域内生成一定密度的扫描线,然后利用扫描偏置的方法在每个区域生成支撑,同时可以对各个区域所生成的支撑进行人工编辑,对已有支撑进行部分删除或者增加新的支撑,最终得到高质量的支撑,该方法具有简单有效,原理清晰,操作简单,易于实现等特点。一种,包括以下步骤:(I)对零件的STL模型进行分析,确定一系列需要生成支撑的区域,构成区域集合P = IP1, P2,...Pt...,PmI,其中:Pt为第t个需要生成支撑的区域,M为需要生成支撑的区域的个数;M —般为大于零的自然数;(2)将区域集合P中的每个区域分别投影到xy平面上,形成对应的M个投影区域,对每个投影区域生成间距为g的沿X和I方向相互交错的一系列扫描线,构成该区域对应的扫描线集合Lp ;(3)将扫描线集合Lp中每一条扫描线沿z轴正方向扫描,求取与模型中对应区域的交线得到交线序列集合ULP,将交线序列集合ULp中每条交线沿z轴负方向进行扫描计算与模型首次相交的交线,得到交线序列集合DLp ;(4)用等间距为d的平行线对交线序列集合ULp和交线序列集合DLp中各组相对应的线同时求交点,得到两组交点序列集合,分别为交点序列集合Duuj和交点序列集合Dmp ;(5)对交点序列集合Dmp和交点序列集合Dmp中的点分类,其中一部分点在z轴正方向按照预设值进行偏置,另一部分点在z轴负方向按照预设值进行偏置,两部分点分别交错设置;(6)分别提取交点序列集合Dmp和交点序列集合Dmp中偏置方向相同的点,得到对应的4组偏置后的点序列集合DmP+、DUU)—、Ddu>+和Ddu>—;依次选取这4组点中的3点创建三角面片,生成支撑面片数据信息,完成支撑的生成。其中步骤(6)中,`Dmp+为Duuj中沿z轴正方向进行偏置后的相对应的点序列集合;Dulp-为Dmp中沿z轴负方向进行偏置后的相对应的点序列集合;Ddlp+为Dmp中沿z轴正方向进行偏置后的相对应的点序列集合;Ddu>_为Dmp中沿z轴负方向进行偏置后的相对应的点序列集合。判断哪个区域需要生成支撑时,可采用多种现有的方法,作为优选,所述的需要生成支撑的区域通过STL模型中每个三角面片的法矢量η进行识别,当η在ζ方向的分量小 I*""*'于—?,则该三角面片需要生成支撑,将相连的需要生成支撑的三角面片组合在一起形 mm成一个需要生成支撑的区域。作为优选,所述的交线序列集合ULp和交线序列集合DLp是由一系列线段组成的折线集合,当交线序列集合ULp中某条线沿ζ轴负方向进行扫描时没有与模型相交,而是与Ztl平面相交时,则交线序列集合DLp中对应的线为交线序列集合ULp中那条线在Ztl平面上的投影,Z0平面为ζ轴坐标为O的平面。作为优选,所述的步骤(5)包括以下步骤:(a)记交点序列集合 D11LP 中第 i 组交点为 Diu = {DiU1; Diu2,...Diuj,...,DiuiJ,其中Diuj.为第i组交点中的第j个交点坐标;N为第i组中交点的个数;提取Diu中的偶数项,并将提取的偶数项在ζ轴正方向上进行d+的偏置得到交点序列集合K = Ptm,D1TOD1Ijs...%Ka| ;提取Diu中的奇数项,并将提取的奇数项在ζ轴负方向上进行d—的偏置得到Dilj = ^jDllJi, D||J2^ * * * ^ DiPr?* * % D1UB I,d—、d+为需要偏置的距离,均大于零,且d_ = —Cl+,其中E^us为Diu中第s个偶数项交点偏置后的点坐标,A为Djj中交点的个数,D1^jr为Diu中第r个奇数项交点偏置后的点坐标,B为1?中交点的个数,A+B=N ;(b)记交点序列集合Ddlp中第i组交点为DiD = {Dira, Din2,…,Dink,…,DiraJ ,其中Dillk为第i组交点中的第k个交点坐标;提取Dill中的偶数项,并将提取的偶数项在ζ轴负方向上进7Tx d+的偏直得到本文档来自技高网...
【技术保护点】
一种基于扫描偏置的三维打印零件支撑自动生成方法,其特征在于,包括以下步骤:(1)对零件的STL模型进行分析,确定一系列需要生成支撑的区域,构成区域集合P;(2)将区域集合P中的每个区域分别投影到xy平面上,形成对应的M个投影区域,对每个投影区域生成间距为g的沿x和y方向相互交错的一系列扫描线,构成该区域对应的扫描线集合LP;(3)将扫描线集合LP中每一条扫描线沿z轴正方向扫描,求取与模型中对应区域的交线得到交线序列集合ULP,将交线序列集合ULP中每条交线沿z轴负方向进行扫描计算与模型首次相交的交线,得到交线序列集合DLP;(4)用等间距为d的平行线对交线序列集合ULP和交线序列集合DLP中各组相对应的线同时求交点,得到两组交点序列集合,分别为交点序列集合DULP和交点序列集合DDLP;(5)对交点序列集合DULP和交点序列集合DDLP中的点分类,其中一部分点在z轴正方向按照预设值进行偏置,另一部分点在z轴负方向按照预设值进行偏置,两部分点分别交错设置;(6)分别提取交点序列集合DULP和交点序列集合DDLP中偏置方向相同的点,得到对应的4组偏置后的点序列集合DULP+、DULP—、DDLP+和DDLP—;依次选取这4组点中的3点创建三角面片,生成支撑面片数据信息,完成支撑的生成。...
【技术特征摘要】
【专利技术属性】
技术研发人员:傅建中,赖金涛,贺永,林志伟,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。