亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

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

        2020-02-14 06:03:57吳建吳婷陳廷豪包涵
        科技創(chuàng)新與應(yīng)用 2020年2期
        關(guān)鍵詞:面片交點(diǎn)輪廓

        吳建 吳婷 陳廷豪 包涵

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

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

        中圖分類號:TP391.73 ? ? ?文獻(xiàn)標(biāo)志碼:A ? ? ? ? 文章編號: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]。它對結(jié)構(gòu)復(fù)雜、形態(tài)多變、骨架分支多的難加工形體具有顯著優(yōu)勢,因而在現(xiàn)代醫(yī)學(xué)、高端制造等領(lǐng)域有著廣泛的應(yīng)用[2]。在3D打印工藝過程中,分層切片處理是最為關(guān)鍵的內(nèi)容之一。它通過層切平面與3D模型截面相交, 得到各層截面輪廓信息,因此切片處理的效率和精度直接影響模型制作的精度和質(zhì)量[3]。

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

        1 算法原理

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

        由于STL模型數(shù)據(jù)量較大,為提高切片處理的效率,本文采用如下方法進(jìn)行計(jì)算:首先對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)格對象,其中包含兩個(gè)矩陣成員:一個(gè)為網(wǎng)格頂點(diǎn)的坐標(biāo)矩陣,設(shè)為P;另一個(gè)為組成三角面片的頂點(diǎn)索引矩陣,設(shè)為T。

        依次從三角面片索引矩陣T中取出每個(gè)三角面片的頂點(diǎn)索引號,并從頂點(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)邊是公共邊的三角面片,然后再對這個(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)行切片測試。該模型共有461708個(gè)三角面片,230856個(gè)頂點(diǎn),X、Y、Z方向總體尺寸約為59mm、42mm、20mm。采用0.4mm的分層精度對該模型進(jìn)行切片測試,從圖4結(jié)果可以看出,即使該模型復(fù)雜、具有多條分支結(jié)構(gòu),本文算法也能產(chǎn)生較好的效果。

        3 結(jié)束語

        本文以MATLAB軟件為平臺,通過數(shù)據(jù)預(yù)處理、篩選相交三角面片集合、拓?fù)淝蠼坏炔襟E有效地對模型進(jìn)行切片分層處理,最大化的保留了原始形狀特征,重構(gòu)出準(zhǔn)確率高的切片模型。該方法方便快捷,加強(qiáng)了切片數(shù)據(jù)的可控性,優(yōu)化了切片的效率,提高了切片輪廓的準(zhǔ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.

        猜你喜歡
        面片交點(diǎn)輪廓
        OPENCV輪廓識別研究與實(shí)踐
        基于實(shí)時(shí)輪廓誤差估算的數(shù)控系統(tǒng)輪廓控制
        初次來壓期間不同頂板對工作面片幫影響研究
        閱讀理解
        借助函數(shù)圖像討論含參數(shù)方程解的情況
        試析高中數(shù)學(xué)中橢圓與雙曲線交點(diǎn)的問題
        甜面片里的人生
        幸福家庭(2016年3期)2016-04-05 03:47:08
        在線學(xué)習(xí)機(jī)制下的Snake輪廓跟蹤
        青海尕面片
        老伴逼我搟面片
        中文字幕亚洲视频一区| 欧美激情国产亚州一区二区| 少妇一区二区三区乱码| 久久亚洲av成人无码软件| 国产精品亚洲欧美天海翼| 无码 免费 国产在线观看91| 亚洲最新版无码AV| 在线视频一区二区三区中文字幕| 精品一区二区在线观看免费视频| 日韩精品极品视频在线观看免费| 国产精品亚洲日韩欧美色窝窝色欲| 无码人妻少妇久久中文字幕| 久久国产亚洲精品一区二区三区| 久久天天躁狠狠躁夜夜不卡| 人妻无码中文字幕免费视频蜜桃 | 国产精品美女久久久久| 91精品国产91| 亚洲国产一区二区av| 国产又大又硬又粗| 麻豆国产成人av高清在线观看| 久久HEZYO色综合| 国产一区二区三区色哟哟| 日韩欧美成人免费观看| 日韩乱码视频| 美女福利视频网址导航| 亚洲国产精品无码久久一区二区| 欧美第一黄网免费网站| 日日噜噜夜夜狠狠2021| 亚洲精品一区二区在线免费观看| 国产在线精品一区二区中文| 尤物视频一区二区| 精品日本免费观看一区二区三区| 久久精品夜色噜噜亚洲a∨| 日本乱子人伦在线视频| 国产精品自拍首页在线观看| 国产一区二区三区不卡在线观看 | 日韩成人精品日本亚洲| 亚洲精品国产亚洲av| 又大又紧又粉嫩18p少妇| 亚洲男人的天堂精品一区二区| 国产伦奸在线播放免费|