999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MATLAB的STL模型切片分層算法

2020-02-14 06:03:57吳建吳婷陳廷豪包涵
科技創(chuàng)新與應(yīng)用 2020年2期
關(guān)鍵詞:模型

吳建 吳婷 陳廷豪 包涵

摘 ?要:為提高STL模型的切片效率,提出一種基于MATLAB的STL模型切片分層新算法。首先對(duì)STL模型進(jìn)行數(shù)據(jù)預(yù)處理,篩選出只與切平面相交的三角片集合,然后利用相鄰三角面片邊的拓?fù)潢P(guān)系依次求交,獲得各層截面輪廓信息。實(shí)驗(yàn)結(jié)果表明,該方法簡(jiǎn)單、有效,不僅優(yōu)化了數(shù)據(jù)結(jié)構(gòu),而且提高了切片效率,具有較好的可行性和準(zhǔn)確性。

關(guān)鍵詞:3D打印;切片;STL模型;MATLAB

中圖分類號(hào):TP391.73 ? ? ?文獻(xiàn)標(biāo)志碼:A ? ? ? ? 文章編號(hào):2095-2945(2020)02-0023-02

Abstract: In order to improve the slicing efficiency of STL model, a new slicing algorithm of STL model based on MATLAB is proposed. First, the STL model is preprocessed, and the set of triangles which only intersect with the tangent plane is selected, and then the topological relationship between the edges of the adjacent triangular patches is used to obtain the profile information of each layer. The experimental results show that the method is simple and effective, not only optimizes the data structure, but also improves the slicing efficiency and has good feasibility and accuracy.

Keywords: 3D printing; slicing; STL model; MATLAB

引言

3D打印,又稱作快速成形,是一種以數(shù)字模型文件為基礎(chǔ),運(yùn)用粉末狀金屬或塑料等可粘合材料,通過逐層堆疊累積的方式來構(gòu)造物體的技術(shù)[1]。它對(duì)結(jié)構(gòu)復(fù)雜、形態(tài)多變、骨架分支多的難加工形體具有顯著優(yōu)勢(shì),因而在現(xiàn)代醫(yī)學(xué)、高端制造等領(lǐng)域有著廣泛的應(yīng)用[2]。在3D打印工藝過程中,分層切片處理是最為關(guān)鍵的內(nèi)容之一。它通過層切平面與3D模型截面相交, 得到各層截面輪廓信息,因此切片處理的效率和精度直接影響模型制作的精度和質(zhì)量[3]。

本文以MATLAB軟件作為開發(fā)平臺(tái),對(duì)3D打印切片問題展開研究,運(yùn)用矩陣和數(shù)組及MATLAB自帶的一些函數(shù),在MATLAB軟件平臺(tái)下實(shí)現(xiàn)STL模型的快速分層切片處理。

1 算法原理

STL模型是由多個(gè)三角形面片組成的三維物體,因此對(duì)模型進(jìn)行切片就是沿切層方向(z軸)建立多個(gè)切平面,分別求出每層切平面與三角面片的交點(diǎn),然后進(jìn)行拓?fù)渲剡B,從而獲得截面輪廓線。

由于STL模型數(shù)據(jù)量較大,為提高切片處理的效率,本文采用如下方法進(jìn)行計(jì)算:首先對(duì)STL模型進(jìn)行數(shù)據(jù)排序,然后篩選出與各層切平面相交的三角面片集合, 以減少三角面片與切平面的求交判斷次數(shù);在計(jì)算三角面片與各層切平面間的交點(diǎn)時(shí), 利用相鄰三角面片邊的拓?fù)潢P(guān)系求交,可快速確定交點(diǎn),減少冗余點(diǎn)計(jì)算。

1.1 數(shù)據(jù)預(yù)處理

利用MATLAB軟件的stlread函數(shù)讀取STL模型數(shù)據(jù),得到一個(gè)三角網(wǎng)格對(duì)象,其中包含兩個(gè)矩陣成員:一個(gè)為網(wǎng)格頂點(diǎn)的坐標(biāo)矩陣,設(shè)為P;另一個(gè)為組成三角面片的頂點(diǎn)索引矩陣,設(shè)為T。

依次從三角面片索引矩陣T中取出每個(gè)三角面片的頂點(diǎn)索引號(hào),并從頂點(diǎn)坐標(biāo)矩陣P中找到其頂點(diǎn)的x、y、z坐標(biāo),然后將它們按照z坐標(biāo)值的大小進(jìn)行排序,并排成一行:

[x1,y1,zmin,x2,y2,zmid,x3,y3,zmax]

從而得到一個(gè)新的三角面片坐標(biāo)矩陣Vm×9,其中每行表示一個(gè)三角面片坐標(biāo)信息,m為三角面片總數(shù)。然后將矩陣V按照zmin進(jìn)行升序排序,如果zmin相同的,將zmax值小的三角面片排在前面。

1.2 相交三角片的智能篩選

在計(jì)算每層切平面與三角面片的交點(diǎn)時(shí),根據(jù)每個(gè)三角面片的z坐標(biāo)數(shù)據(jù)進(jìn)行判斷,篩選出只與當(dāng)前切平面相交的三角面片集合,以提高分層處理速度。具體步驟如下:

步驟1,首先根據(jù)切片精度Δz和模型z坐標(biāo)的最大值與最小值進(jìn)行等厚度分層,得到各層切平面的高度zi(i=1,2,…,n,n為切片總數(shù))。

步驟2,利用判斷條件篩選出與每層切平面zi相交的三角面片集合。若三角面片與切平面zi相交,則需滿足zmin≤zi≤zmax,如圖1所示,具體分為以下幾種情況:

(1)三角面片的兩條邊與切片面相交(圖1(a));(2)三角面片的一條邊與切平面重合(圖1(b)(c)),若圖1(b)三角片和圖1(c)三角片共邊,為避免產(chǎn)生冗余點(diǎn),只保留圖1(b)所示三角片;(3)三角面片的一個(gè)頂點(diǎn)在切平面上(圖1(d)(e)),為避免產(chǎn)生冗余點(diǎn),只保留圖1(d)所示三角片;(4)三角面片與切平面重合(圖1(f)),這種情況無法產(chǎn)生有效相交線段,故做排除。

1.3 拓?fù)淝蠼?/p>

三角網(wǎng)格模型中,每條邊都有兩個(gè)三角面片與之共享,因此利用這種鄰接拓?fù)潢P(guān)系,按順序依次求交即可得到首尾相連的切片輪廓。具體步驟如下:

步驟1,從篩選出的相交三角面片集合中,隨機(jī)確定一個(gè)三角面片作為起始三角面片,計(jì)算該三角面片與切平面的交點(diǎn),并保存交點(diǎn)所在的邊,然后從集合中刪除這個(gè)三角面片。

步驟2,在相交三角面片的集合中找到一個(gè)和上一個(gè)三角面片的交點(diǎn)邊是公共邊的三角面片,然后再對(duì)這個(gè)三角面片進(jìn)行交點(diǎn)計(jì)算,保存交點(diǎn)所在的邊后,從集合中刪除這個(gè)三角面片。如圖2所示,根據(jù)三角面片1的交點(diǎn)P1所在的邊AB找到與之相鄰的三角面片2,然后計(jì)算切平面與三角面片2的另一個(gè)交點(diǎn)P2,根據(jù)交點(diǎn)P2所在的邊BC找到三角面片3,依次類推。

步驟3,重復(fù)步驟2,直到找不到下一個(gè)拓?fù)淙敲嫫错樞蜻B接交點(diǎn)即可獲得當(dāng)前封閉輪廓。

步驟4,重復(fù)步驟1、步驟2、步驟3,直到相交的三角面片集合為空集,從而完成該層切片所有封閉輪廓的創(chuàng)建。

2 實(shí)例驗(yàn)證

為檢驗(yàn)本文算法的有效性,以圖3所示的蝎子模型為實(shí)例,進(jìn)行切片測(cè)試。該模型共有461708個(gè)三角面片,230856個(gè)頂點(diǎn),X、Y、Z方向總體尺寸約為59mm、42mm、20mm。采用0.4mm的分層精度對(duì)該模型進(jìn)行切片測(cè)試,從圖4結(jié)果可以看出,即使該模型復(fù)雜、具有多條分支結(jié)構(gòu),本文算法也能產(chǎn)生較好的效果。

3 結(jié)束語

本文以MATLAB軟件為平臺(tái),通過數(shù)據(jù)預(yù)處理、篩選相交三角面片集合、拓?fù)淝蠼坏炔襟E有效地對(duì)模型進(jìn)行切片分層處理,最大化的保留了原始形狀特征,重構(gòu)出準(zhǔn)確率高的切片模型。該方法方便快捷,加強(qiáng)了切片數(shù)據(jù)的可控性,優(yōu)化了切片的效率,提高了切片輪廓的準(zhǔn)確性,且該程序簡(jiǎn)短易懂,具有較好的應(yīng)用價(jià)值。

參考文獻(xiàn):

[1]郭亮,安芬菊,王貴.便攜式3D打印機(jī)設(shè)計(jì)[J].機(jī)電工程技術(shù),2017,46(10):90-92+108.

[2]徐敬華,任新華,陳前勇,等.基于雙傾斜度概率的流形模型3D打印層切優(yōu)化方法[J].機(jī)械工程學(xué)報(bào),2019,55(13):129-143.

[3]徐敬華,盛紅升,張樹有,等.基于鄰接拓?fù)涞牧餍尉W(wǎng)格模型層切多連通域構(gòu)建方法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2018,30(1):180-190.

猜你喜歡
模型
一半模型
一種去中心化的域名服務(wù)本地化模型
適用于BDS-3 PPP的隨機(jī)模型
提煉模型 突破難點(diǎn)
函數(shù)模型及應(yīng)用
p150Glued在帕金森病模型中的表達(dá)及分布
函數(shù)模型及應(yīng)用
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 亚洲美女一区| 韩国v欧美v亚洲v日本v| 成年A级毛片| 午夜精品一区二区蜜桃| 99精品在线看| 国产微拍精品| 强乱中文字幕在线播放不卡| 精品天海翼一区二区| 国产黄视频网站| 国产成人av一区二区三区| 老司机午夜精品视频你懂的| 看国产一级毛片| 国产精品久久久久久影院| 久久综合亚洲色一区二区三区| 国产成人久久777777| 日本a级免费| 亚洲欧州色色免费AV| 精品人妻系列无码专区久久| 99久久无色码中文字幕| 26uuu国产精品视频| 91九色国产在线| 超碰91免费人妻| 精品一区二区三区自慰喷水| 国产免费网址| 国产精品自在在线午夜区app| vvvv98国产成人综合青青| 国产亚洲精品资源在线26u| 无码乱人伦一区二区亚洲一| 亚洲人成色在线观看| 国产精品成人AⅤ在线一二三四| 成人国产小视频| 国产午夜不卡| 国产午夜精品鲁丝片| 亚洲性一区| 国产一区二区福利| 高清乱码精品福利在线视频| 亚洲AV无码不卡无码| 国产福利拍拍拍| 欧美性爱精品一区二区三区| 久久夜夜视频| 91国内外精品自在线播放| 免费精品一区二区h| 亚洲天堂777| 国产福利在线免费| 亚洲福利片无码最新在线播放| 亚洲视频四区| 国产精品成人一区二区| 色网站在线免费观看| 欧美亚洲香蕉| 欧美色亚洲| 一级毛片免费观看久| 亚洲精品色AV无码看| 91久久夜色精品国产网站| 欧美亚洲欧美区| 久久精品人人做人人爽电影蜜月| 制服丝袜在线视频香蕉| 亚洲Aⅴ无码专区在线观看q| 成人午夜视频免费看欧美| 国产天天色| 久久人人爽人人爽人人片aV东京热 | 国产经典在线观看一区| 欧美中出一区二区| 中文字幕资源站| 幺女国产一级毛片| 极品私人尤物在线精品首页| 久久国产av麻豆| 久久精品国产一区二区小说| 亚洲国产天堂在线观看| 免费va国产在线观看| 国产一区二区丝袜高跟鞋| 久久久亚洲国产美女国产盗摄| 精品无码人妻一区二区| 欧洲在线免费视频| 国产高清免费午夜在线视频| 午夜国产精品视频黄| 在线观看国产精品第一区免费 | 亚洲最新在线| 日韩AV无码免费一二三区| 亚洲综合色区在线播放2019| 波多野结衣一二三| 免费人成网站在线观看欧美| 亚洲第一页在线观看|