【干貨】史上最全STL格式轉(zhuǎn)換問題大全
3D打印過程中的一項(xiàng)重要步驟就是將3D設(shè)計(jì)文件轉(zhuǎn)換為STL格式的3D模型文件。一個(gè)STL文件基本上是用眾多的三角形來定義一個(gè)3D模型,因此包含了所有這些三角形的法線與頂點(diǎn)的XYZ坐標(biāo)的完整列表。如果這個(gè)文件中出現(xiàn)太多的三角形定義,那么這個(gè)文件就會(huì)過大,并被稱為“壞”文件。這個(gè)時(shí)候,一些老生常談就顯得相當(dāng)重要了。今天,就為大家分享一些轉(zhuǎn)STL文件驟中的注意事項(xiàng),以及STL格式的轉(zhuǎn)換過程中可能出現(xiàn)的問題。
一、生成STL格式的模型文件需注意的事項(xiàng)
?
1、共頂點(diǎn)規(guī)則
?
每相鄰的兩個(gè)三角形平面必須且只能共享兩個(gè)頂點(diǎn)。一個(gè)三角形平面的頂點(diǎn)不能落在相鄰的任何一個(gè)小三角形平面的邊上。
?
2、取向規(guī)則
?
對(duì)于每一個(gè)小三角形平面,其法向量必須向外,3個(gè)頂點(diǎn)連成的矢量方向按照逆時(shí)針方向的順序確定(右手法則)。而且,對(duì)于相鄰的小三角形平面,不能出現(xiàn)取向矛盾。
?
3、取值規(guī)則
?
每個(gè)小三角形平面的頂點(diǎn)坐標(biāo)值必須是正值,零和負(fù)值都會(huì)導(dǎo)致失敗。
?
4、充滿規(guī)則
?
在三維模型的所有表面上,必須布滿小三角形面片,不得有任何遺漏。
?
5、歐拉公式
?
STL文件中頂點(diǎn)數(shù)V、邊數(shù)E、面片數(shù)F之間必須符合歐拉公式。
?
?
?
二、STL格式轉(zhuǎn)換過程中可能出現(xiàn)的缺陷
?
1、存在縫隙,即三角形面片的丟失
?
對(duì)于大曲率的曲面相交部分,三角化時(shí)就會(huì)產(chǎn)生這種錯(cuò)誤。在顯示的STL格式模型上,會(huì)有錯(cuò)誤的裂縫或孔洞(其中無三角形),違反了充滿規(guī)則。此時(shí),應(yīng)在這些裂縫或孔沿處增補(bǔ)若干小三角形面片。
?
2、畸變,即三角形面片的所有邊都共線
?
這種缺陷通常發(fā)生在從三維實(shí)體到STL文件的轉(zhuǎn)換算法上。由于采用在其相交線處向不同實(shí)體產(chǎn)生三角形面片,就會(huì)導(dǎo)致相交線處的三角形面片的畸變。
?
3、三角形面片的重疊
?
面片的重疊主要是由于在三角化面片時(shí)數(shù)值的圓整誤差所產(chǎn)生的。三角形的頂點(diǎn)在3D空間中是以浮點(diǎn)數(shù)表示的,而不是整數(shù)。如果圓整誤差范圍較大,就會(huì)導(dǎo)致面片的重疊。
?
4、歧義的拓樸關(guān)系
?
按照共頂點(diǎn)規(guī)則,在任一邊上,僅存在兩個(gè)三角形共邊。若存在兩個(gè)以上的三角形共此邊,就產(chǎn)生了歧義的拓樸關(guān)系。這些問題可能發(fā)生在三角化具有尖角的平面、不同實(shí)體的相交部分或生成STL文件時(shí)控制參數(shù)出現(xiàn)誤差。
?
因?yàn)檫@些缺陷,在打印過程中我們必須事先對(duì)STL文件數(shù)據(jù)的有效性進(jìn)行檢查,否則,具有缺陷的STL文件會(huì)導(dǎo)致快速成形系統(tǒng)加工時(shí)的許多問題,如原型的幾何失真等,嚴(yán)重時(shí)會(huì)還會(huì)出現(xiàn)死機(jī)。
?