步驟二:分層
如果把模型放在XY平面上,Z軸對應的就是模型高度。我們把XY平面抬高一定高度再與模型的表面相交,就可以得到模型在這個高度上的切片。
所謂的分層就是每隔一定高度就用一個XY平面去和模型相交作切片,層與層之間的距離稱為層高。全部層高切完后就可以得到模型在每一個層上的輪廓線。就像是切土豆片一樣,把一個圓的或不圓的異或不管什么奇形怪狀的土豆用菜刀一刀一刀切開,最后就能得到一盤薄如紙片的土豆片,當然那還得你的刀功要足夠好才行。
分層本質(zhì)上就是一個把3D模型轉(zhuǎn)化為一系列2D平面的過程,自此之后的所有操作就都是在2D圖形的基礎上進行了。
在前面模型載入階段我說到了CuraEngine埋了一個三角形關聯(lián)的伏筆,作用是什么,現(xiàn)在可以揭曉答案了。我們知道,兩個平面相交,得到的是一條直線,一個平面和一個三角形相交,就得到一條線段。當然也有可能什么也得不到,平臺平行啦,三角形的三個點都在平面的同一面之類。這些我們可以不管,我們現(xiàn)在只關心和平面有交集的那些三角形即可。我們把一個平面和所有的三角形都相交了一遍,得到了許許多多的線段。但是我們需要的是2D圖形,三角形是2D圖形,四邊形,任意多邊形都是2D圖形,而線段不是。所以我們就要把這些線段試著連成一個多邊形,那么問題來了,要把這些線段連起來,只能兩個兩個地去試,看看它們是不是共端點。
粗算一下,每一層都是平方級的復雜度,再算上層數(shù),那就是三次方級。但現(xiàn)在,我們知道了三角形的關聯(lián)關系。兩個關聯(lián)的三角形,如果都與一個平面相交,那它們的交線一定也是關聯(lián)的。如此一來,每一條線段只需要判斷三個與它相鄰三角形,看看與這個平面有沒有交線即可,一下子就把問題的復雜度降了一個次元。速度自然可以有質(zhì)的提升。
|
|
你可能喜歡
最新《Nature》:動態(tài)界面3D打印
石墨烯增強混凝土能否推動可持續(xù)建筑? UVA
杜克大學:新型無溶劑3D打印材料,可用于醫(yī)
超強金屬3D打印合金問世:為太空探索打造極
推薦課程
神奇的3D打印
SLA3D打印工藝全套培訓課程 - 軟件篇
3D打印月球燈視頻教程 包括完整貼圖建模流
【原創(chuàng)發(fā)布】Cura軟件修改二次開發(fā)定制視頻