1.一種基于最小角消除的三角形網(wǎng)格曲面的重新網(wǎng)格化方法,其特征在于,包括以下步驟:
步驟S1,輸入三角形網(wǎng)格模型M,設(shè)定最小角度閾值θ;構(gòu)建初始輸出網(wǎng)格模型M';
步驟S2,將M'中三角形存入動(dòng)態(tài)優(yōu)先隊(duì)列Q;
步驟S3,剔除動(dòng)態(tài)優(yōu)先隊(duì)列Q中最小角大于θ的三角形,判斷隊(duì)列Q是否為空;
如果是,執(zhí)行步驟S6;
如果否,執(zhí)行步驟S4;
步驟S4,選取隊(duì)列頂部的三角形t,判斷三角形t的最小角對(duì)應(yīng)的邊是否可以被折疊;
如果是,執(zhí)行邊折疊操作;
如果否,重定位頂點(diǎn)v;
步驟S5,優(yōu)化頂點(diǎn)v所在的位置,返回步驟S3;
步驟S6,輸出重新網(wǎng)格化后的新輸出網(wǎng)格模型M”。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述的初始輸出網(wǎng)格模型M'與步驟S1中輸入三角形網(wǎng)格模型M一致。
3.據(jù)權(quán)利要求1所述的方法,其特征在于,所述的初始輸出網(wǎng)格模型M'的構(gòu)建方法為:
步驟S11,設(shè)定近似誤差閾值δ;令M'=M;
步驟S12,計(jì)算M和M'之間的豪斯多夫距離dH(M,M′),并判斷dH(M,M′)是否小于δ,若不小于則執(zhí)行步驟S13,若小于則執(zhí)行步驟S14;
步驟S13,對(duì)輸入三角形網(wǎng)格模型M進(jìn)行簡(jiǎn)化,并令M'=M;執(zhí)行步驟S12;
步驟S14,輸出初始輸出網(wǎng)格模型M'。
4.據(jù)權(quán)利要求3所述的方法,其特征在于,M和M'之間的豪斯多夫距離dH(M,M′)的計(jì)算方法為:
d(p,M′)=minp′∈M′d(p,p′)
dh(M,M′)=maxp∈M(d(p,M′))
dH(M,M′)=max(dh(M,M′),dh(M′,M))
其中,d(p,p′)為三維空間中兩個(gè)點(diǎn)p、p′的歐式距離,p∈M,p′∈M′,dh(M,M′)為M和M′之間的單向豪斯多夫距離。
5.據(jù)權(quán)利要求1~4中任一項(xiàng)所述的方法,其特征在于,動(dòng)態(tài)優(yōu)先隊(duì)列Q按照其內(nèi)各三角形的最小角的數(shù)值升序排列。
6.據(jù)權(quán)利要求5所述的方法,其特征在于,步驟S4中判斷三角形t的最小角對(duì)應(yīng)的邊是否可以被折疊的方法為:
步驟S411,判斷邊折疊操作能否引起h的1-鄰域三角形發(fā)生翻轉(zhuǎn);若是則執(zhí)行步驟S414;
步驟S412,判斷M和M'的豪斯多夫距離是否小于δ;若否則執(zhí)行步驟S414;
步驟S413,計(jì)算執(zhí)行邊折疊操作造成的最小角,并判斷該最小角是否小于執(zhí)行操作之前的最小角;若是則執(zhí)行步驟S414;若否則輸出判斷結(jié)果為三角形t的最小角對(duì)應(yīng)的邊可以被折疊;
步驟S414,輸出判斷結(jié)果為三角形t的最小角對(duì)應(yīng)的邊不可以被折疊。
7.據(jù)權(quán)利要求5所述的方法,其特征在于,步驟S4中重定位頂點(diǎn)v的方法為:
步驟S421,判斷執(zhí)行重定位頂點(diǎn)操作是否能引起三角形t中的某個(gè)頂點(diǎn)vt的1-鄰域三角形發(fā)生翻轉(zhuǎn);若是則執(zhí)行步驟S424;
步驟S422,判斷M和M'的豪斯多夫距離是否小于δ;若否則執(zhí)行步驟S424;
步驟S423,計(jì)算執(zhí)行重定位頂點(diǎn)操作造成的最小角,并判斷該最小角是否小于執(zhí)行操作之前的最小角;若是則執(zhí)行步驟S424;若否則輸出判斷結(jié)果為將v設(shè)置為三角形t的頂點(diǎn)vt對(duì)應(yīng)的重心Voronoi圖的重心;
步驟S424,輸出判斷結(jié)果為將v設(shè)置為沿著h傳播到局部最長(zhǎng)邊hl的中點(diǎn)。
8.據(jù)權(quán)利要求5所述的方法,其特征在于,步驟S5中優(yōu)化頂點(diǎn)v所在的位置的方法為:
優(yōu)化頂點(diǎn)v所在的位置通過(guò)最小化能量函數(shù)F計(jì)算得到,
其中,Sin和Sout分別為v在M和M'的局部點(diǎn)集集合,ai是Sout中的采樣點(diǎn),是ai的最近的點(diǎn),是Sin中的采樣點(diǎn),bj是的參考點(diǎn),和是ai與bj各自的權(quán)重。
9.據(jù)權(quán)利要求8所述的方法,其特征在于,最小化能量函數(shù)F的方法為:
步驟S51,計(jì)算最優(yōu)位置v*,
其中,是ai所在的三角形(v,vi1,vi2)的重心,是所在的三角形(v,vj1,vj2)的重心。
步驟S52,移動(dòng)v到v+μ(v*-v),其中權(quán)值μ∈(0,1];
步驟S53,判斷頂點(diǎn)v是否收斂到最優(yōu)的位置,若否則執(zhí)行步驟S51,若是則頂點(diǎn)v所在的位置。