書名: 3D打印技術(shù)概論作者名: 陳繼民主編 楊繼全 李滌塵 史玉升副主編本章字?jǐn)?shù): 2442字更新時間: 2021-12-24 13:46:12
2.5 模型切片
模型切片是3D打印的關(guān)鍵技術(shù)之一,其最終目的是將模型文件切片并轉(zhuǎn)化成G-code格式。G-code是計算機(jī)輔助制造(CAM)中控制自動化機(jī)械的常用格式之一,可由3D打印機(jī)直接讀取使用。其中記錄了模型的打印參數(shù)(如吐絲量、運動速度等)和打印路徑,用于控制打印機(jī)運動。
切片是一種通過計算機(jī)輔助設(shè)計(CAD)對模型(三維網(wǎng)格格式,如STL格式)進(jìn)行“切片”的操作:給定一個坐標(biāo)軸,垂直于坐標(biāo)軸將模型切為設(shè)定厚度的薄層,每層的結(jié)構(gòu)對應(yīng)之后3D打印工作的物理薄層。使用Cura軟件對金字塔形模型進(jìn)行切片如圖2-25所示。目前常用的模型切片算法包括基于幾何拓?fù)湫畔⑻崛〉那衅惴ā⒒谌敲嫫瑤缀翁卣鞯那衅惴ǖ?span id="gis0ala" class="super">[25,26]。

圖2-25 使用Cura軟件對金字塔形模型切片
2.5.1 基于幾何拓?fù)湫畔⑻崛〉那衅惴?/h3>
由于STL數(shù)據(jù)中沒有模型的幾何拓?fù)湫畔?,如果在切片處理過程中直接載入STL文件,一方面冗余數(shù)據(jù)會占用大量的存儲空間,另一方面三角面片間的離散性嚴(yán)重影響模型分層的效率。因此在算法中先要提取模型的幾何拓?fù)湫畔?。STL模型由多個無序、離散的三角面片組成,這些三角面片的幾何信息包括三角形所在的平面的法矢量和三個頂點的坐標(biāo)。提取STL模型的拓?fù)湫畔⒅饕瑑煞矫婀ぷ鳎阂皇呛喜TL文件中重復(fù)的頂點;二是將兩個端點相同的半邊設(shè)置成伙伴半邊,從而建立三角面片之間的鄰接關(guān)系。這種拓?fù)湫畔⒁笤谝阎猄TL模型一個面片的情況下,能直接索引到構(gòu)成該面片的3條邊和3個頂點,通過邊信息索引到與其相連的3個面片,并通過頂點信息索引到與其鄰接的面片。
在建立了STL模型的拓?fù)湫畔⒑?,進(jìn)行截面輪廓線的計算,其基本原理為:當(dāng)分層的分層平面為z=zk時,首先找到一個與該分層平面相交的三角面片Fa,計算出交點的坐標(biāo),然后根據(jù)拓?fù)湫畔⒄业较噜徣敲嫫⑶蟪鼋稽c,依次追蹤,直到回到面片Fa,并得到一條有向封閉的輪廓線。重復(fù)上述過程,直到所有輪廓線計算完畢,最終得到該層完整的截面輪廓線。
該類算法具有以下兩個明顯優(yōu)點:一是該方法在三角面片與分層平面求交時,對某三角面片只需計算一個邊的交點,由面的鄰接關(guān)系,可繼承鄰接面片的一個交點;二是可直接獲得首尾相連的有向封閉輪廓線,而不需要對線段進(jìn)行重新排序相連。此算法存在一定的局限性:一是處理過程時間較長,特別是對于很大的STL模型;二是該算法使STL模型占用的內(nèi)存開銷較大;三是當(dāng)模型出現(xiàn)錯誤時(間隙、面片重疊等),算法將無法正常求解。
2.5.2 基于三角面片幾何特征的分層處理算法
STL模型的三角面片在分層過程中有兩個特征:一是三角面片在分層方向上的高度越高,則與它相交的分層平面越多;二是三角面片距xOy平面的距離越遠(yuǎn),則與它相交的分層平面距xOy平面越遠(yuǎn)。考慮到這兩個特征,在此引入了描述這兩個特征的兩個概念,分別為三角面片的勢和能量[1,2]。根據(jù)三角面片的勢,將三角面片分成若干級,級的劃分應(yīng)根據(jù)STL模型中三角面片勢的分布情況確定。根據(jù)三角面片的能量,將三角面片分成若干類,類的劃分應(yīng)根據(jù)STL模型中三角面片能量的分布情況確定。
在三角面片與分層平面求交處理時,充分利用這兩個特征,盡量減少在分層處理過程中,進(jìn)行三角面片與分層平面位置關(guān)系判斷的次數(shù),從而達(dá)到快速分層的目的。在算法中,首先對STL模型中所有三角面片的勢及能量進(jìn)行統(tǒng)計,并獲取該STL模型應(yīng)分的級和類,利用級和類將三角面片快速排序,然后確定每一個三角面片信息中的zmin和zmax。在同一類的面片中,zmin為排列在該面片以后的面片頂點z坐標(biāo)的最小值,zmax為排列在該面片以前的面片頂點z坐標(biāo)的最大值。在分層過程中,對某一類面片進(jìn)行相交關(guān)系判斷時,當(dāng)分層高度的z坐標(biāo)值小于某面片的zmin時,對排列在該面片以后的面片,則無須再進(jìn)行相交關(guān)系判斷。同理,當(dāng)分層高度的z坐標(biāo)值大于某面片的zmax時,對排列在該面片以前的面片,則無須再進(jìn)行相交關(guān)系的判斷。最后,將交線首尾相連生成截面輪廓線。該類算法具有以下兩個優(yōu)點:一是克服了幾何拓?fù)湫畔@取時間過長及內(nèi)存消耗過大等問題;二是根據(jù)STL模型三角面片的幾何特征,算法可進(jìn)行分類分級處理,減少了分層處理過程中STL模型三角面片與分層平面位置關(guān)系的判斷,加快了分層處理速度。算法存在以下缺點:一是在STL模型幾何特征分類時,類的劃分指標(biāo)是模糊值,因此難以完全杜絕三角面片與分層平面位置關(guān)系的無效判斷;二是在每一層輪廓線的生成過程中,都要進(jìn)行連接關(guān)系的搜索判斷。
2.5.3 定層厚容錯切片
定層厚容錯切片與定層厚拓?fù)淝衅膮^(qū)別只在于它不需要建立三角形的拓?fù)湫畔ⅲ驗檫@一點,所以在對交線整序保存時,算法也就顯得復(fù)雜一些。因為搜索求交計算出的是一條條雜亂無序的交線,為便于后續(xù)處理,必須將這些雜亂無章的交線依次連接起來,組成首尾相連的多義線。其算法流程如圖2-26所示。

圖2-26 多義線整序流程圖
2.5.4 直接分層切片
為克服STL文件的缺點(如對幾何模型描述的誤差大、拓?fù)湫畔G失較多、數(shù)據(jù)冗余大、文件尺寸大、STL文件容易出現(xiàn)錯誤和缺陷等),有不少文獻(xiàn)對CAD模型的直接分層切片進(jìn)行了研究。直接切片產(chǎn)生的層片文件與STL文件相比,其優(yōu)點在于:文件數(shù)據(jù)量大大降低,模型精度大大提高,數(shù)據(jù)糾錯過程簡單。圖2-27為基于直接切片分層的原型加工流程。

圖2-27 基于直接切片分層的原型加工流程
2.5.5 常用的切片軟件
模型切片軟件的處理流程可大致分為模型載入、分層、劃分組件、路徑生成、G-code代碼生成這五部分。切片完成后將G-code文件傳輸給3D打印機(jī)即可進(jìn)行3D打印。常用的切片軟件有以下幾種:
①Cura,是所有Ultimaker 3D打印機(jī)的標(biāo)準(zhǔn)切片機(jī)軟件,但它也可用于大多數(shù)其他3D打印機(jī),包括RepRap、MakerBot、Printrbot、Lulzbot和Witbox。它是完全開放源代碼,可以通過插件系統(tǒng)擴(kuò)展。對電腦配置要求很低,切片速度快。
②Skeinforge,采用Python開發(fā),優(yōu)點是對切片不同的拓?fù)浣Y(jié)構(gòu)判斷及處理最佳,打印質(zhì)量較好。缺點是填充樣式單一,僅有線性填充,切片速度較慢,容錯性較低,破面或洞有可能造成切片失敗。國內(nèi)杭州先臨的Einstart即采用該引擎。
③Slic3r,采用C++開發(fā),特點是可調(diào)參數(shù)多,例如填充圖案,支持可變層高設(shè)定,切片速度較快,容錯性較高,但是打印質(zhì)量不如Skeinforge。知名的MakerBot家的Makerware用的就是該引擎,Repeiter-Host默認(rèn)也是該引擎。
其他切片引擎還有KISSlicer、CustomOpen等。
- 勞動關(guān)系與勞動法模擬試題集
- 火力控制技術(shù)基礎(chǔ)
- 王凱《管理學(xué)原理》筆記和課后習(xí)題詳解
- 《財富管理:理論與實踐》學(xué)習(xí)指南與習(xí)題集
- 2020年甘肅省軍轉(zhuǎn)干部安置考試《行政職業(yè)能力測驗》考點精講及典型題(含歷年真題)詳解
- 莊繹傳《英漢翻譯簡明教程》筆記和課后習(xí)題詳解
- 薛榮久《國際貿(mào)易》(第6版)筆記和課后習(xí)題(含考研真題)詳解
- 電子商務(wù)理論與實務(wù)
- 中外美術(shù)史考研題庫【名??佳姓骖}+章節(jié)題庫+模擬試題】
- 新一代計算機(jī)體系結(jié)構(gòu)
- 新編營養(yǎng)師手冊(第三版)
- 媒介消費學(xué)
- 商務(wù)溝通與談判(第4版)
- 2020年廣西壯族自治區(qū)選調(diào)生考試《行政職業(yè)能力測驗》考點精講及典型題(含歷年真題)詳解
- SQL Server 2005數(shù)據(jù)庫及應(yīng)用