楊繼全,李 娜,施建平,唐文來(lái),張 鋼
(南京師范大學(xué)電氣與自動(dòng)化工程學(xué)院,江蘇 南京 210023)
不同CAD軟件設(shè)計(jì)的三維模型文件因格式不同、用途不同等,經(jīng)常要進(jìn)行數(shù)據(jù)交換,這就需要建立數(shù)據(jù)交換標(biāo)準(zhǔn)。3D打印設(shè)備常用的“準(zhǔn)標(biāo)準(zhǔn)”文件是STL格式文件,但STL格式并不完備,比如表面漏洞,其表達(dá)的只是對(duì)象的幾何信息,不包含色彩和材料信息,異質(zhì)零件模型進(jìn)行三角面片化所得到的傳統(tǒng)STL格式文件也比較粗略。針對(duì)這些問(wèn)題,本文首先介紹多材料三維打印的成形工藝及過(guò)程,然后重點(diǎn)闡述異質(zhì)零件制造的模型及數(shù)據(jù)格式,其中本文給出的基于STL格式的細(xì)化及在細(xì)化基礎(chǔ)上的四面體模型,將作為異質(zhì)零件的建?;A(chǔ)。
3D打印成形系統(tǒng)的工作原理是在數(shù)字信號(hào)驅(qū)動(dòng)下,采用物理手段,將成形材料以一定的速率從噴頭打印至指定位置,打印材料按照一定的序列堆積,形成三維實(shí)體零件。
目前針對(duì)多材料模型的成形方法研究,開(kāi)發(fā)的系統(tǒng)都只適用于有限材料的相對(duì)簡(jiǎn)單的成形件的加工。圖1所示的是基于微滴噴射技術(shù)和3D打印技術(shù)的異質(zhì)零件設(shè)計(jì)與制造一體化加工流程。其思路為:將通過(guò)逆向工程獲得的掃描數(shù)據(jù)或根據(jù)要求設(shè)計(jì)出的三維結(jié)構(gòu)CAD實(shí)體模型以單色STL文件的形式導(dǎo)出,根據(jù)零件功能要求進(jìn)行零件的幾何拓?fù)湫螤?用單色STL面化模型數(shù)據(jù)表示)和材料組織結(jié)構(gòu)(用色彩信息表示)的并行設(shè)計(jì);對(duì)含有結(jié)構(gòu)及材料信息的彩色STL模型進(jìn)行切片分層,獲得一系列彩色切片,并對(duì)每層加工單元所對(duì)應(yīng)的色彩信息和結(jié)構(gòu)信息進(jìn)行解析,使之與成形信息相對(duì)應(yīng);在成形過(guò)程中,計(jì)算機(jī)根據(jù)每一層的成形信息分別控制各機(jī)構(gòu)做協(xié)調(diào)運(yùn)動(dòng),采用微滴噴射技術(shù)和3D打印技術(shù),將含有材料微粒的濃懸浮液、紫外光敏樹(shù)脂或低熔點(diǎn)合金熔液,通過(guò)微細(xì)噴嘴實(shí)現(xiàn)數(shù)字化的分層微滴噴射,從而制得異質(zhì)零件。具體而言,制作開(kāi)始時(shí),計(jì)算機(jī)把第一層加工信息發(fā)送給打印噴頭控制電路,打印噴頭控制電路根據(jù)第一層的材料信息驅(qū)動(dòng)打印噴頭中的某個(gè)或某幾個(gè)噴頭按該層的形狀噴射一種或幾種液態(tài)材料,隨后液態(tài)材料通過(guò)揮發(fā)、固化、迅速凝固等過(guò)程形成實(shí)體區(qū)域。如果需要打印支撐,在打印噴頭中的某個(gè)或某幾個(gè)噴頭噴射液態(tài)材料的同時(shí),打印噴頭中的另一噴頭噴射支撐材料填充該層未被噴射的區(qū)域,迅速凝固后形成支撐區(qū)域。隨后,計(jì)算機(jī)把下一層的成形信息發(fā)送給打印噴頭控制電路,打印噴頭噴射出液態(tài)材料和支撐材料。如此反復(fù),一層層地打印,從而快速制作出異質(zhì)零件。
圖1 基于微滴噴射技術(shù)和3D打印技術(shù)的異質(zhì)零件設(shè)計(jì)與制造一體化加工流程
圖2所示的是異質(zhì)零件模型3D打印成形系統(tǒng)結(jié)構(gòu)簡(jiǎn)圖,包括控制計(jì)算機(jī)、X和Y掃描器、工作臺(tái)和若干噴頭等。噴頭的個(gè)數(shù)可以根據(jù)加工所需的材料種類(lèi)而定。每個(gè)噴頭內(nèi)又包括若干個(gè)噴嘴,通過(guò)協(xié)調(diào)控制完成多種材料的噴射打印。
圖2 成型系統(tǒng)結(jié)構(gòu)簡(jiǎn)圖
3D打印制造零件的過(guò)程中,使用的數(shù)字模型有幾何結(jié)構(gòu)模型、材料模型、切片模型、打印數(shù)字化模型?;邳c(diǎn)云數(shù)據(jù)先建立幾何結(jié)構(gòu)模型,然后建立材料模型,打印前進(jìn)行切片處理需要使用切片模型,最后使用打印數(shù)字化模型控制噴頭進(jìn)行打印。這些模型既是獨(dú)立的,又是互相聯(lián)系的,在打印制造的不同階段使用的模型具有不同格式,不同的平臺(tái)也使用不同格式的模型,所以模型在使用過(guò)程中需要在不同的格式之間進(jìn)行轉(zhuǎn)換。
設(shè)計(jì)多材料異質(zhì)零件首先需要通過(guò)三維造型系統(tǒng)設(shè)計(jì)出零件的數(shù)字模型。目前國(guó)際上常用的三維造型軟件有Pro/Engineer、UG、SolidWorks、3Ds Max、CATIA等,這些軟件雖然數(shù)據(jù)格式各不相同[1],但它們憑借各自的優(yōu)勢(shì)廣泛應(yīng)用于機(jī)械、建筑、影視、游戲開(kāi)發(fā)、虛擬設(shè)計(jì)、醫(yī)療等領(lǐng)域。不同的行業(yè)、企業(yè)及個(gè)人通常習(xí)慣于使用某一種造型軟件。隨著現(xiàn)代企業(yè)間的協(xié)同合作以及全球化生產(chǎn)的飛速發(fā)展,不同CAD系統(tǒng)間的資源共享和數(shù)據(jù)交換存在一定困難,是亟須解決的問(wèn)題。因此,自20世紀(jì)70年代末以來(lái),相關(guān)組織及機(jī)構(gòu)制定了一系列的標(biāo)準(zhǔn)格式來(lái)解決不同CAD系統(tǒng)間的數(shù)據(jù)交換問(wèn)題[2],主要的標(biāo)準(zhǔn)有IGES、STEP、DXF格式和VRML語(yǔ)言。
1)IGES。
IGES(initial graphics exchange specification,初始圖像交換規(guī)范)是首個(gè)實(shí)現(xiàn)不同CAD系統(tǒng)間數(shù)據(jù)交換的標(biāo)準(zhǔn),由美國(guó)國(guó)家標(biāo)準(zhǔn)局和工業(yè)界共同制定。它獨(dú)立于具體的CAD系統(tǒng),起到了“中介”的作用,企業(yè)既可以將自己的數(shù)據(jù)文件按照IGES輸出,也可以接收符合IGES的數(shù)據(jù)文件,從而實(shí)現(xiàn)不同CAD系統(tǒng)間的數(shù)據(jù)交換。
IGES文件在結(jié)構(gòu)上一般由注釋段、文件特性描述段、索引段、參數(shù)數(shù)據(jù)段以及結(jié)尾段這五部分組成。IGES文件把產(chǎn)品的數(shù)據(jù)信息視為實(shí)體集合,因?yàn)槿我粚?shí)體的描述都包括該實(shí)體的形狀、尺寸、顏色等信息,所以文件在描述實(shí)體時(shí)也相應(yīng)地把實(shí)體的幾何形狀(如圓、圓弧、橢圓、直線(xiàn)等)等信息叫作幾何實(shí)體,保存在參數(shù)數(shù)據(jù)段中;將線(xiàn)性尺寸標(biāo)注實(shí)體、角度尺寸標(biāo)注實(shí)體、半徑尺寸標(biāo)注實(shí)體、直徑尺寸標(biāo)注實(shí)體等以及顏色定義、線(xiàn)型定義、線(xiàn)寬定義、字形定義等稱(chēng)為非幾何實(shí)體,并把這些信息保存在索引段。每一類(lèi)型的實(shí)體都有相應(yīng)的實(shí)體類(lèi)型號(hào),100~199是幾何實(shí)體的類(lèi)型號(hào)區(qū)間,200~499是非幾何實(shí)體的類(lèi)型號(hào)區(qū)間。這樣,IGES文件就可以通過(guò)實(shí)體來(lái)描述產(chǎn)品的尺寸、形狀等信息。
雖然IGES在很多領(lǐng)域得到廣泛的應(yīng)用,但它仍存在如下問(wèn)題:①在表達(dá)某些幾何類(lèi)型信息時(shí)會(huì)模棱兩可,轉(zhuǎn)換的數(shù)據(jù)不穩(wěn)定;②文件格式冗長(zhǎng),導(dǎo)致很難找到和糾正錯(cuò)誤,表達(dá)信息易出錯(cuò);③只注意圖形數(shù)據(jù)的轉(zhuǎn)換,對(duì)于公差、材料特性、工作條件等信息的轉(zhuǎn)換不完整;④只適用于在計(jì)算機(jī)集成生產(chǎn)中的各子系統(tǒng)領(lǐng)域之間傳送技術(shù)繪圖或簡(jiǎn)單的幾何模型信息。
由于上述原因,國(guó)際標(biāo)準(zhǔn)化組織(International Organization for Standardization, ISO)在IGES的基礎(chǔ)上制定了STEP (standard for the exchange of product model data,產(chǎn)品模型數(shù)據(jù)交換標(biāo)準(zhǔn))。
2)STEP。
“產(chǎn)品模型數(shù)據(jù)”是指為了產(chǎn)品在整個(gè)生命周期中的應(yīng)用而全面定義的產(chǎn)品所有數(shù)據(jù)元素,包括為進(jìn)行設(shè)計(jì)、分析、制造、測(cè)試、檢驗(yàn)和產(chǎn)品支持而全面定義的構(gòu)件所需的幾何、拓?fù)?、公差、關(guān)系、屬性和性能等數(shù)據(jù),另外,還可能包含一些與處理有關(guān)的數(shù)據(jù)。產(chǎn)品模型可以對(duì)下達(dá)生產(chǎn)任務(wù)、直接質(zhì)量控制、測(cè)試等提供全面的信息[3]。因此,產(chǎn)品模型數(shù)據(jù)對(duì)整個(gè)產(chǎn)品而不是僅對(duì)其幾何形狀進(jìn)行描述。此外,STEP還制定了一系列的應(yīng)用協(xié)議來(lái)彌補(bǔ)IGES的缺陷。
STEP研究面向產(chǎn)品全生命周期的信息建模,用一種中性的、與平臺(tái)無(wú)關(guān)的方式對(duì)產(chǎn)品信息進(jìn)行描述,它在以下方面具有明顯的優(yōu)勢(shì)[4]:①包含的信息支持產(chǎn)品的整個(gè)生命周期;②采用描述產(chǎn)品數(shù)據(jù)的形式化建模語(yǔ)言Express語(yǔ)言規(guī)范,所有的產(chǎn)品定義均為機(jī)器可理解的方式;③通過(guò)制定應(yīng)用協(xié)議,消除了產(chǎn)品信息的二義性,提高了數(shù)據(jù)精度;④支持單個(gè)零件及裝配件的裝配控制;⑤經(jīng)濟(jì)效益顯著,應(yīng)用范圍廣泛,許多常用CAD軟件都提供STEP接口。
3)VRML語(yǔ)言。
目前通過(guò)CAx(CAD、CAM、CAE等各項(xiàng)技術(shù)的綜合叫法)系統(tǒng)設(shè)計(jì)的產(chǎn)品數(shù)據(jù)信息,大多由專(zhuān)用系統(tǒng)產(chǎn)生,不能用通用的瀏覽器瀏覽。VRML語(yǔ)言是目前唯一能被Web瀏覽器支持的一種通用三維場(chǎng)景描述語(yǔ)言。但是VRML語(yǔ)言不能提供對(duì)幾何體的精確表達(dá),所以它所描述的幾何體不能作為產(chǎn)品設(shè)計(jì)生產(chǎn)的依據(jù)[5-6]。
幾何模型軟件與生產(chǎn)制造設(shè)備的數(shù)據(jù)共享也需要轉(zhuǎn)換的公共標(biāo)準(zhǔn),現(xiàn)在流行的設(shè)備制造者之間也出現(xiàn)數(shù)據(jù)格式不統(tǒng)一、商業(yè)化應(yīng)用推廣難的問(wèn)題。目前,3D打印使用的30年前制定的數(shù)據(jù)格式,已經(jīng)不能滿(mǎn)足越來(lái)越高的需求。隨著越來(lái)越多的行業(yè)涌入3D打印行業(yè),滿(mǎn)足各類(lèi)新型應(yīng)用需求的3D打印行業(yè)數(shù)據(jù)標(biāo)準(zhǔn)日益重要,可以預(yù)計(jì)新的數(shù)據(jù)標(biāo)準(zhǔn)將會(huì)在近期出現(xiàn)并應(yīng)用。
三維造型軟件的存儲(chǔ)格式很多,這里介紹目前流行的3D打印可用的數(shù)據(jù)存儲(chǔ)格式,見(jiàn)表1。
表1 常用的3D打印三維模型數(shù)據(jù)存儲(chǔ)格式比較
對(duì)表1中幾種數(shù)據(jù)格式加以比較,見(jiàn)表2。
表2 常用三維模型文件格式比較
另外還有DXF格式,它是AutoCAD用來(lái)將內(nèi)部圖樣信息傳遞到外部的文件格式,不是由標(biāo)準(zhǔn)化機(jī)構(gòu)制定的標(biāo)準(zhǔn),但由于AutoCAD軟件的流行,DXF文件也成為中性文件的一種。
STL格式應(yīng)用廣泛[7],已有的3D打印軟件都支持STL格式,針對(duì)STL格式的設(shè)計(jì)應(yīng)用最廣泛。STL格式是基于三角網(wǎng)格格式的三維模型,使用多個(gè)三角面片組合接近并表現(xiàn)三維模型的曲面形式,而彩色三維模型數(shù)據(jù)則是將顏色信息作為附加信息,添加在模型坐標(biāo)信息之后。
STL模型類(lèi)似于有限元的網(wǎng)格劃分,它將物體表面劃分成很多個(gè)小三角形,使用三角面片來(lái)近似表示三維實(shí)體模型的表面,并且通過(guò)對(duì)三角形頂點(diǎn)坐標(biāo)和三角形的法向量的描述來(lái)表示3D模型的幾何特征,圖3所示的是一個(gè)煙灰缸的STL模型。圖4所示的是STL模型中放大的任一三角面片,每個(gè)面片用3個(gè)頂點(diǎn)坐標(biāo)及其法向量這4個(gè)數(shù)據(jù)項(xiàng)唯一表示[8]。
圖3 煙灰缸的STL模型
圖4 STL模型中的三角面片
2.3.1STL模型遵循的規(guī)則[9]
1)共頂點(diǎn)規(guī)則。
每一個(gè)三角面片都必須與其相鄰的三角面片共用兩個(gè)頂點(diǎn),即一個(gè)三角面片的頂點(diǎn)不能落在相鄰三角面片的邊上。如圖5(a)所示,△ABC的頂點(diǎn)C落在了△BFD的邊BD上,違反了共頂點(diǎn)規(guī)則,可通過(guò)連接頂點(diǎn)F、C和G對(duì)其進(jìn)行修正,如圖5(b)所示。
圖5 STL的共頂點(diǎn)法則
2)取向規(guī)則。
對(duì)于每一個(gè)小三角面片,其法向量必須向外,3個(gè)頂點(diǎn)連成的矢量的方向按右手定則確定,而且相鄰的小三角平片不能出現(xiàn)取向矛盾。圖6所示為法向量與三角形頂點(diǎn)的關(guān)系。
圖6 STL模型的取向規(guī)則
3)取值規(guī)則。
每個(gè)小三角面片的頂點(diǎn)坐標(biāo)值必須是正數(shù),零和負(fù)數(shù)是錯(cuò)誤的。
4)充滿(mǎn)規(guī)則。
在模型的所有表面上必須布滿(mǎn)小三角面片,不得有任何遺漏。
2.3.2STL格式存在的缺陷及相關(guān)處理辦法
雖然STL文件的應(yīng)用非常廣泛,但由于文件格式的缺陷,其存在數(shù)據(jù)冗余、缺乏拓?fù)湫畔?、?shù)據(jù)量大、數(shù)據(jù)錯(cuò)誤等問(wèn)題。
1)數(shù)據(jù)冗余。
STL文件通過(guò)對(duì)三角形頂點(diǎn)坐標(biāo)和三角面片的法向量這4個(gè)參數(shù)來(lái)表示三維模型的幾何特征。STL文件有二進(jìn)制形式和ASCII碼形式兩種,數(shù)據(jù)處理時(shí)一般采用ASCII碼形式。ASCII碼形式示例如下:
solid
facet normal
outer loop //三角形環(huán)開(kāi)始標(biāo)記
vertex
vertex
vertex
end loop //三角形環(huán)結(jié)束標(biāo)記
end facet //第一個(gè)面標(biāo)記結(jié)束
facet normal
outer loop //三角形環(huán)開(kāi)始標(biāo)記
vertex
vertex
vertex
end loop //三角形環(huán)結(jié)束標(biāo)記
end facet //第二個(gè)面標(biāo)記結(jié)束
…
End solid
實(shí)際上,如圖7所示,△ABC每個(gè)頂點(diǎn)至少為3個(gè)三角形所共有,因此在存儲(chǔ)信息時(shí)一個(gè)頂點(diǎn)的數(shù)據(jù)至少會(huì)被保存3次;另外,由于滿(mǎn)足右手定則,每個(gè)三角面片的法向量可以由三角形的3個(gè)頂點(diǎn)給出,因此矢向量也是冗余的。一般情況下,假設(shè)STL文件中的面片數(shù)為n面,生成STL文件時(shí)不重復(fù)的頂點(diǎn)數(shù)為n頂,則兩者之間具有如下關(guān)系:
圖7 三角面片的數(shù)據(jù)冗余
n面/n頂=2
相應(yīng)地可以求出冗余的頂點(diǎn)數(shù)為:
3n面-n面/2=2.5n面
即頂點(diǎn)冗余數(shù)大約是面片數(shù)的2.5倍。
這些冗余的信息不僅占用資源,而且影響數(shù)據(jù)的傳輸、讀取和處理速度。
王從軍[10]、任乃飛[11]等分別提出了新的數(shù)據(jù)格式。他們提出的數(shù)據(jù)格式仍然采用三角面片來(lái)逼近幾何實(shí)體模型,但是在保存信息時(shí),首先對(duì)三角形的頂點(diǎn)按x,y,z方向進(jìn)行排序,按順序存儲(chǔ)各點(diǎn)的坐標(biāo);然后按右手定則建立三角形面對(duì)應(yīng)點(diǎn)的索引,依次保存每個(gè)面的信息。這種新的STL格式文件的大小為原來(lái)二進(jìn)制格式文件的1/3~1/2。
崔樹(shù)標(biāo)[12]、衛(wèi)煒[13]等分別用三軸分塊排序算法和哈希表算法對(duì)STL文件中的冗余頂點(diǎn)進(jìn)行過(guò)濾,大大提高了數(shù)據(jù)處理的速度。
2)缺乏拓?fù)湫畔ⅰ?/p>
一個(gè)完善的拓?fù)浣Y(jié)構(gòu)應(yīng)滿(mǎn)足以下條件[14]:
①處理大數(shù)據(jù)量的操作時(shí),依然十分高效、快速;
②具備分析數(shù)據(jù)質(zhì)量的能力,即能夠快速地搜索孔洞、間隙和邊界;
③能夠快速查詢(xún)每一個(gè)點(diǎn)的鄰域信息;
④能夠快速查詢(xún)每個(gè)面的相鄰3個(gè)面;
⑤通過(guò)一條邊可以遍歷所有其他的邊;
⑥通過(guò)一個(gè)面可以遍歷所有其他的面。
STL文件中雖然存在著大量的冗余數(shù)據(jù),但是缺少三角面片之間的拓?fù)湫畔?,相?yīng)有一些處理方法。
①通過(guò)建立基于VF存儲(chǔ)結(jié)構(gòu)的平衡二叉(AVL)樹(shù)頂點(diǎn)聚合算法,去除冗余信息,壓縮STL文件的大小;同時(shí),利用基于虛AVL的鄰邊搜索優(yōu)化算法完成STL半邊拓?fù)湫畔⒅亟?。雖然這種方法的處理速度接近商業(yè)軟件的水平,但是在AVL的快速生成、內(nèi)存管理等方面還有需要進(jìn)一步解決的問(wèn)題[15]。
②將半邊數(shù)據(jù)結(jié)構(gòu)用于STL文件拓?fù)湫畔⒌闹亟?,提出基于散列的STL拓?fù)湫畔⒅亟ǖ姆椒?,但這是一種靜態(tài)的結(jié)構(gòu),不適用于網(wǎng)格的動(dòng)態(tài)修改[16]。
3)數(shù)據(jù)錯(cuò)誤。
在將三維模型轉(zhuǎn)換成STL文件的過(guò)程中,如果出現(xiàn)STL文件規(guī)則或參數(shù)設(shè)置不當(dāng)、相交的曲面曲率相差過(guò)大等錯(cuò)誤,產(chǎn)生的STL文件可能會(huì)出現(xiàn)孔洞、裂縫、重疊、頂點(diǎn)不重合及法向錯(cuò)誤等問(wèn)題[17]。常見(jiàn)錯(cuò)誤見(jiàn)表3。
表3 STL文件常見(jiàn)錯(cuò)誤
習(xí)俊通等[18]提出了STL文件的診斷和修復(fù)方法:先利用三角面片結(jié)構(gòu)中的標(biāo)記flag來(lái)對(duì)各種錯(cuò)誤進(jìn)行診斷分類(lèi),然后采用空間多邊形三角剖分算法對(duì)孔洞和裂縫進(jìn)行修復(fù);同時(shí)提出了一種基于坐標(biāo)區(qū)域分塊的點(diǎn)表、邊表、面表的快速建立方法,以提高STL文件的診斷和修復(fù)效率。
目前,Materialise公司開(kāi)發(fā)的Magics RP軟件在STL格式文件中的查錯(cuò)、糾錯(cuò)、合并等編輯功能非常強(qiáng)大,國(guó)內(nèi)各研發(fā)機(jī)構(gòu)亦推出了多個(gè)功能較強(qiáng)的STL格式文件修復(fù)軟件[19]。
2.3.3STL模型的細(xì)化
由CAD系統(tǒng)設(shè)計(jì)出來(lái)的三維模型,其表面三角剖分之后會(huì)呈現(xiàn)多面體狀。盡管生成STL模型時(shí)可以根據(jù)精度要求選擇三角面片的大小,但是傳統(tǒng)STL格式的表面網(wǎng)格化往往較為粗略,不適合多材料異質(zhì)零件CAD模型的材料的精細(xì)描述,為此需對(duì)其進(jìn)行網(wǎng)格細(xì)化及均勻化。圖8(a)所示為一單色實(shí)體模型,采用傳統(tǒng)的STL格式將該模型面化成如圖8(b)所示的含有12個(gè)面片和8個(gè)頂點(diǎn)的面化模型,為提高異質(zhì)零件的結(jié)構(gòu)和材料信息描述精度,對(duì)圖8(b)所示的每個(gè)面片進(jìn)行細(xì)化得到如圖8(c)所示的細(xì)化STL網(wǎng)格化模型。
圖8 STL模型網(wǎng)格細(xì)化
圖9所示的是對(duì)一個(gè)尺寸為200 mm×200 mm×240 mm的模型,分別采用傳統(tǒng)單色STL處理、12.7 mm三角網(wǎng)格細(xì)化和5.08 mm三角網(wǎng)格細(xì)化的對(duì)比圖。對(duì)比可知細(xì)化后的網(wǎng)格精度及均勻度較傳統(tǒng)單色STL模型在材料的描述方面要理想得多。
圖9 STL模型網(wǎng)格細(xì)化對(duì)比
對(duì)STL模型進(jìn)行細(xì)化,不僅可以提高模型外形結(jié)構(gòu)的精度,而且使得以STL格式為基礎(chǔ)的對(duì)多材料異質(zhì)零件材料空間的描述成為可能。
異質(zhì)零件內(nèi)部和外表面可能具有不同結(jié)構(gòu)和不同材料,需要對(duì)其外部和內(nèi)部信息分別描述。建立內(nèi)部特征點(diǎn)的模型有利于復(fù)雜信息處理。本文使用的微四面體模型具有很強(qiáng)的內(nèi)部信息處理能力,為后續(xù)連載文章中多材料異質(zhì)零件信息處理的標(biāo)準(zhǔn)格式。
1)微四面體的創(chuàng)建。
利用STL文件所產(chǎn)生的三角面片,可以獲得異質(zhì)零件的表面信息,此時(shí)每個(gè)三角形頂點(diǎn)的特征已知。通過(guò)這些已知的頂點(diǎn),向零件內(nèi)部構(gòu)建四面體。仍然以圖8所示的正方體模型為例,定義圖8(b)所示的STL網(wǎng)格化模型的各頂點(diǎn),并為其加上空間直角坐標(biāo)系,如圖10所示。
圖10 空間直角坐標(biāo)系下的網(wǎng)格化模型
從圖10所示的網(wǎng)格化模型中,取出△ADC、△ADE、△ACE及△DCE所構(gòu)成的四面體ACDE,并以它為研究對(duì)象。假設(shè)原模型是一個(gè)邊長(zhǎng)為10 mm的正方體,并分別將邊AD、DC、DE五等分,則圖11中各點(diǎn)的坐標(biāo)見(jiàn)表4。
表4 網(wǎng)格模型中各特征節(jié)點(diǎn)的坐標(biāo)
圖11 微四面體的構(gòu)建
如圖12所示,特征節(jié)點(diǎn)分別為v1(x1,y1,z1)、v2(x2,y2,z2)、v3(x3,y3,z3)、v4(x4,y4,z4)。如果圖12所示的四面體的邊v1v2被m等分,邊v2v3被n等分,邊v2v4被k等分,就可以建立如圖13所示的微四面體。
圖12 空間任意四面體 圖13 空間微四面體的構(gòu)建
2)微四面體創(chuàng)建流程。
通過(guò)上述方法,基于STL格式的微四面體創(chuàng)建流程如圖14所示。
從圖14可以看出,針對(duì)STL格式,對(duì)三角形各邊進(jìn)行細(xì)分,可以獲得已知特征的網(wǎng)格節(jié)點(diǎn),通過(guò)這些網(wǎng)格節(jié)點(diǎn)就可以依次構(gòu)建出微四面體。圖15中,Sa,Sb分別為實(shí)體被分解后的空間四面體,fa~fg分別為空間四面體的各三角面片,v1~v5分別為被分解后的三角面片的各頂點(diǎn)。
圖14 基于STL格式的微四面體創(chuàng)建流程
假設(shè)已知上述實(shí)體各頂點(diǎn)的坐標(biāo)值,就可以得到如圖15所示的各點(diǎn)、面、體的參數(shù)關(guān)系。
圖15 微四面體分解
圖15中,ns為空間四面體的個(gè)數(shù);nf為四面體被分解成的三角面片的個(gè)數(shù)。
利用上述方法構(gòu)造微四面體,就可以得到基于微四面體空間單元的多材料異質(zhì)零件模型。其每個(gè)微四面體可視為相對(duì)獨(dú)立的實(shí)體單元(見(jiàn)圖16),每個(gè)微四面體單元結(jié)構(gòu)信息由4個(gè)頂點(diǎn)(A,B,C,D)、4個(gè)面法向量(u,v,s,t)表示,而其材料信息由下式描述。
圖16 微四面體各點(diǎn)定義
Pm=[m1,m2,…,mk]T=M·
式中:Pm指四面體上任意一點(diǎn)的材料信息;M為四面體頂點(diǎn)材料分布矩陣。
在使用上述方法構(gòu)建的基于單色STL格式的微四面體多材料異質(zhì)零件CAD模型的基礎(chǔ)上,建立微四面體各頂點(diǎn)的材料信息與色彩信息的映射函數(shù),創(chuàng)建以彩色STL格式描述的多材料異質(zhì)零件CAD模型,就可以為后續(xù)的多材料異質(zhì)零件CAD模型的可視化和成形制造奠定基礎(chǔ)。
異質(zhì)零件的CAD建模是異質(zhì)零件3D打印技術(shù)的關(guān)鍵性、基礎(chǔ)性問(wèn)題,本文在介紹異質(zhì)零件3D打印成形原理的基礎(chǔ)上,論述了面向異質(zhì)零件CAD建模所采取的幾種數(shù)據(jù)存儲(chǔ)格式。STL格式作為3D打印領(lǐng)域的“準(zhǔn)標(biāo)準(zhǔn)”,有著極其廣泛的應(yīng)用,因此本文重點(diǎn)圍繞STL數(shù)據(jù)模型的細(xì)化、基于STL數(shù)據(jù)格式的微四面體定義,以及異質(zhì)零件微四面體構(gòu)建方法,介紹了異質(zhì)零件CAD建模的基礎(chǔ)理論,為后續(xù)異質(zhì)零件的建模和模型設(shè)計(jì)可視化奠定理論基礎(chǔ)。