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

        ?

        基于三角網(wǎng)格模型的剖面輪廓信息提取

        2012-09-28 01:19:00張小青吳坤華
        測(cè)繪通報(bào) 2012年9期
        關(guān)鍵詞:交線面片輪廓線

        張小青,吳坤華,黃 鶴

        (1.福建水利電力職業(yè)技術(shù)學(xué)院水利工程系,福建永安366000;2.福建水利電力職業(yè)技術(shù)學(xué)院電氣工程系,福建永安366000;3.北京建筑工程學(xué)院測(cè)繪與城市空間信息學(xué)院,北京100044;4.現(xiàn)代城市測(cè)繪國(guó)家測(cè)繪地理信息局重點(diǎn)實(shí)驗(yàn)室,北京100044)

        基于三角網(wǎng)格模型的剖面輪廓信息提取

        張小青1,吳坤華2,黃 鶴3,4

        (1.福建水利電力職業(yè)技術(shù)學(xué)院水利工程系,福建永安366000;2.福建水利電力職業(yè)技術(shù)學(xué)院電氣工程系,福建永安366000;3.北京建筑工程學(xué)院測(cè)繪與城市空間信息學(xué)院,北京100044;4.現(xiàn)代城市測(cè)繪國(guó)家測(cè)繪地理信息局重點(diǎn)實(shí)驗(yàn)室,北京100044)

        為獲得三角網(wǎng)格模型的剖面輪廓信息,提出分層切片和鄰接排序算法。首先將模型中的三角形面片在剖切方向上分組;然后計(jì)算每一組三角形和剖切平面的交線,并按鄰接順序?qū)⒔痪€按首尾順序連接;最后對(duì)每一層非封閉的輪廓線進(jìn)行封閉處理,并計(jì)算剖面面積。試驗(yàn)結(jié)果表明,該算法高效簡(jiǎn)單,能夠有效地獲得封閉的剖面輪廓環(huán)。

        三角網(wǎng)格模型;網(wǎng)格剖切;分層切片;鄰接順序;輪廓信息

        一、引 言

        三維模型中的三角網(wǎng)格模型具有許多良好的幾何特性,它能夠用多個(gè)面片逼近復(fù)雜形體的表面,而且容易處理,因此三角網(wǎng)格模型被廣泛應(yīng)用于計(jì)算機(jī)圖形學(xué)、機(jī)械仿真、科學(xué)計(jì)算可視化等領(lǐng)域[1]。剖面輪廓線是三維模型的一個(gè)重要特征,它代表模型在某一位置處的大致輪廓和幾何形狀,并體現(xiàn)三維模型的基本外觀。如在文物三維展示和虛擬修復(fù)中,往往需要觀察其各個(gè)部位的截面特征,為達(dá)到既不損壞文物、又能夠觀察文物的截面形狀和大小的目的,可采用對(duì)三維模型進(jìn)行剖切處理的方法實(shí)現(xiàn)文物剖面輪廓信息的提取。

        目前常用的剖面輪廓線提取算法主要分兩類[2-4]:一類是先建立網(wǎng)格模型中的頂點(diǎn)、邊和三角面片的鄰接拓?fù)潢P(guān)系,再計(jì)算網(wǎng)格模型與剖切平面的交點(diǎn),此類算法的優(yōu)點(diǎn)是交點(diǎn)是有序的,但建立網(wǎng)格模型的完整的相鄰?fù)負(fù)潢P(guān)系比較費(fèi)時(shí);另一類算法是根據(jù)網(wǎng)格模型中三角形的幾何特征,預(yù)先將三角形按特定法則進(jìn)行排序和分組,并在每組中建立模型的點(diǎn)、邊和三角形面片的鄰接拓?fù)潢P(guān)系,再用平面對(duì)組中的三角形進(jìn)行剖切處理。后一類算法只需比較每個(gè)小組中的三角形和剖切平面的位置關(guān)系,而在每個(gè)小組中建立網(wǎng)格模型中的頂點(diǎn)、邊和三角形之間的相鄰?fù)負(fù)潢P(guān)系,減少了三角形面片和切割平面空間位置關(guān)系的判斷次數(shù),簡(jiǎn)化了網(wǎng)格模型拓?fù)潢P(guān)系的構(gòu)建工作。

        本文采用OBJ格式的三維模型數(shù)據(jù),利用分層切片和鄰接排序算法,獲得了三角網(wǎng)格模型的剖面輪廓信息,并對(duì)其處理結(jié)果進(jìn)行了分析。

        二、輪廓線生成算法

        本文的剖切算法可歸納為讀取模型數(shù)據(jù),即先提取模型中的三角形頂點(diǎn)信息,將三角形在剖切方向上分組;然后在每一組中,比較三角形和剖切平面的空間位置關(guān)系,如果三角形和剖切平面相交,則將交線添加到交線組合中;最后對(duì)交線排序并進(jìn)行封閉處理,獲得封閉的輪廓線。算法流程如圖1所示。

        圖1 輪廓線生成算法流程

        1.模型中的三角形面片分組

        影響剖切算法效率的因素有兩個(gè)[2-4]:一個(gè)是模型中三角形的數(shù)量;另一個(gè)是剖切層數(shù)。為了提高算法效率,將模型中的三角面片進(jìn)行預(yù)處理,即將模型中的三角形按照一定規(guī)則分成多個(gè)小組。本文是沿著Z軸方向剖切,即將模型中的三角形面片按其頂點(diǎn)坐標(biāo)Z值的大小進(jìn)行排序,求出網(wǎng)格模型中的Z坐標(biāo)最小值Zmin和最大值Zmax,模型中的每個(gè)三角形面片被剖切的順序由該三角形的Z坐標(biāo)最小值Zmin確定。假設(shè)剖切間距為d,Zi表示第i層剖切平面的高度,則第一層剖面的Z坐標(biāo)為Z1,其值為模型中Z坐標(biāo)最小值Zmin與剖切間距為d之和,第i層剖面高度的Z坐標(biāo)為Zi,第i+1層剖面的Z坐標(biāo)為Zi+1,相鄰剖面之間的計(jì)算公式為

        Zi+1=Zi+d (1)

        模型中三角形分組算法原理為:設(shè)Zi-1為第i-1層剖切平面的高度,Zi(i=1,2,…,n)為第i層剖切平面的高度,則存放在第i層剖切輪廓上的三角形面片由如下關(guān)系確定:當(dāng)某個(gè)三角形的 Zmin和Zmax滿足公式:Zi-1≤Zmin<Zi,而且Zmax≥Zi,則該三角形被分在第i個(gè)小組。

        2.判斷三角形面片與剖切平面的位置關(guān)系

        由于網(wǎng)格模型是由許多三角形構(gòu)成的,因此模型與剖切平面的相交問(wèn)題,可轉(zhuǎn)化為模型中的三角形與剖切平面的相交問(wèn)題。圖2表示了網(wǎng)格模型與平面的相交情況,粗的多邊形線段表示相交線,將這3條相交線段順序連接,從而構(gòu)成剖面輪廓多邊形。

        圖2 平面剖切網(wǎng)格模型

        模型中的三角形和剖切平面是否有交點(diǎn),可以通過(guò)計(jì)算三角形的每個(gè)頂點(diǎn)與平面的有符號(hào)距離,通過(guò)3個(gè)頂點(diǎn)的有符號(hào)距離,對(duì)剖切平面和模型中的三角形的位置關(guān)系進(jìn)行判斷。三角形與剖切平面的空間位置關(guān)系,采用以下原則來(lái)進(jìn)行判斷[6]:假設(shè)剖切平面方程為ax+by+cz+d=0,模型中的三角形的頂點(diǎn)P(X,Y,Z)到平面的有向距離為D,其值可表示為

        根據(jù)D值符號(hào)相同或不相同的情況,可確定三角形和平面的空間位置關(guān)系,包括5種情況,如圖3所示,除了圖3(a)中的三角形和平面沒(méi)有交點(diǎn),圖3中(b)~(e)均存在交點(diǎn)。

        圖3 三角形和平面的相交情況

        3.輪廓線封閉處理

        獲得交線組合后,再對(duì)交線進(jìn)行排序構(gòu)建封閉輪廓環(huán),先從交線組合中,任意取出一條交線,并將這條交線添加到一個(gè)新交線組合中,每條交線都有頭節(jié)點(diǎn)和尾節(jié)點(diǎn)。從這條交線的尾節(jié)點(diǎn)開始,尋找下一條交線上離這個(gè)尾節(jié)點(diǎn)距離最近的點(diǎn),稱滿足要求的交線為相關(guān)線。由于這些交線都是同一層剖面上的交線,所以它們具有相同的Z坐標(biāo),判斷兩點(diǎn)的距離公式為

        式中,(xz,yz)是取出的第一條交線的尾節(jié)點(diǎn)坐標(biāo)。如果找到的最近點(diǎn)是相關(guān)線的頭節(jié)點(diǎn),那么把這條交線添加到上述新交線組合中,并將這條相關(guān)線添加到前一條交線的后面;如果找到的最近點(diǎn)是相關(guān)線的尾節(jié)點(diǎn),則將這相關(guān)線的頭節(jié)點(diǎn)和尾節(jié)點(diǎn)順序改變,同樣將這條已更改頭節(jié)點(diǎn)和尾節(jié)點(diǎn)順序的交線添加到上述新交線組合中。繼續(xù)上述算法,直至這層剖面的交線都添加到上述新交線組合中。

        將交線排完順序后,要檢查每一組交線是否封閉。如果輪廓線不封閉[7],則要進(jìn)行封閉處理,在排完序的交線組合中,查找其尾節(jié)點(diǎn)是斷開的(即有斷點(diǎn))某條交線,若找到這樣的交線,稱之為斷開線。首先計(jì)算該斷開線的斷點(diǎn)與其他交線(如果有多條斷開線)的斷點(diǎn)之間的距離,并將這些距離值進(jìn)行比較,找到最小距離的那條斷線,這個(gè)最小距離值以D1表示,這條交線稱為相關(guān)線;然后計(jì)算該斷開線的終點(diǎn)與輪廓線中的起始線的起點(diǎn)之間的距離,令這個(gè)距離值為D2。輪廓線中的起始線是這樣的一條交線,即輪廓線是以這條交線的尾節(jié)點(diǎn)開始,并以這條交線的頭結(jié)點(diǎn)結(jié)束。如果距離值D1小于距離值D2,則在斷開線的尾節(jié)點(diǎn)和相關(guān)線的頭節(jié)點(diǎn)之間生成一條線;反之,則在斷開線和輪廓線的起始線之間生成一條線,令生成的那條線為輪廓線的起始線。繼續(xù)檢查是否有斷開線,若有,則繼續(xù)上述算法。最終得到一條正確封閉的輪廓線,并檢查輪廓線不相互交錯(cuò)以及不通過(guò)原來(lái)的線條。

        4.剖面面積計(jì)算

        將每一層剖面輪廓線進(jìn)行首尾排序之后,形成完整封閉的輪廓環(huán),每一層輪廓環(huán)可構(gòu)成簡(jiǎn)單多邊形,對(duì)于由頂點(diǎn)A1、A2、…、An構(gòu)成的簡(jiǎn)單多邊形,令頂點(diǎn)Ai的坐標(biāo)為(xi,yi,zi)(i=0,1,…,n),由于該剖切方向是沿著Z軸,每一層的輪廓線具有相同的Z坐標(biāo),其面積計(jì)算公式為[8]

        三、試驗(yàn)結(jié)果與分析

        本文采用的兔子網(wǎng)格模型如圖4所示,本文算法是在VC#2008環(huán)境下,調(diào)用OpenGL函數(shù)庫(kù)編程實(shí)現(xiàn)模型的顯示,將網(wǎng)格模型沿坐標(biāo)軸Z軸方向剖切了11層,獲得每一層剖面輪廓線,進(jìn)行排序構(gòu)建首尾相連的輪廓線,并將未封閉的輪廓線進(jìn)行封閉處理。如圖5所示,提取的是第8層剖面輪廓線,輪廓線中間有斷開,將其進(jìn)行封閉處理之后,如圖6所示。得到封閉的剖面輪廓線。剖面輪廓線能很好地表達(dá)模型的幾何形狀,圖7為第8層剖面面積計(jì)算結(jié)果。

        圖4 兔子網(wǎng)格模型

        圖5 輪廓線封閉前

        圖6 輪廓線封閉后

        圖7 剖面面積計(jì)算

        四、結(jié)束語(yǔ)

        本文提出的剖切算法能對(duì)一些復(fù)雜或有拓?fù)溴e(cuò)誤的模型有很好的適用性。由于將模型中的三角形在剖切方向上進(jìn)行了分組,減少了遍歷與剖切平面相交的三角形的次數(shù),能夠很好地提高算法效率。利用交線的首尾節(jié)點(diǎn)拓?fù)潢P(guān)系對(duì)交線進(jìn)行排序,而不需要對(duì)模型建立復(fù)雜的拓?fù)溧徑雨P(guān)系,利用最近距離法將輪廓線進(jìn)行封閉處理,從而得到完整封閉的輪廓線。在計(jì)算機(jī)圖形學(xué)、機(jī)械仿真和文物三維展示等領(lǐng)域,往往需要觀察模型的內(nèi)部或截面構(gòu)造,這就需要通過(guò)剖切算法來(lái)提取剖面輪廓特征,輪廓線能夠很好地表現(xiàn)三維模型的剖面特征,因此,剖切算法具有重要的應(yīng)用價(jià)值。

        [1] 張瑞,駱巖林,周明全,等.文物數(shù)字化的關(guān)鍵技術(shù)[J].北京師范大學(xué)學(xué)報(bào):自然科學(xué)版,2007,43 (2):150-153.

        [2] 王靜亞,方亮,郝敬賓.STL模型特征面片自適應(yīng)分層算法[J].計(jì)算機(jī)應(yīng)用研究,2011,28(6):2361-2364.

        [3] 潘海鵬,周天瑞,朱根松,等.STL模型切片輪廓數(shù)據(jù)的生成算法研究[J].中國(guó)機(jī)械工程,2007,18(17):2076-2079.

        [4] 謝存禧,李仲陽(yáng),成曉陽(yáng).STL文件毗鄰關(guān)系的建立與切片算法研究[J].華南理工大學(xué)學(xué)報(bào):自然科學(xué)版,2000,28(3):33-38.

        [5] 張小青,朱光,侯妙樂(lè),等.基于四面體的不規(guī)則表面文物體積計(jì)算[J].測(cè)繪通報(bào),2011(10):50-52.

        [6] VATANI M,RAHIMI A R,BRAZANDEH F,et al.An Enhanced SlicingAlgorithm UsingNearestDistance Analysis for Layer Manufacturing[J].World Academy of Science, Engineering and Technology, 2009,49:721-726.

        [7] TOPCU O,TASCIOGˇLU Y,üNVER H ?.A Method for Slicing CAD Models in Binary STL Format∥6th International Advanced Technologies Symposium(IATS’11).Elazigˇ,Turkey:[s.n.],2011.

        [8] 王泉德.任意三角網(wǎng)格模型體積的快速精確計(jì)算方法[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(18):32-34.

        Extraction of Section Contour Information Based on Triangular Meshes

        ZHANG Xiaoqing,WU Kunhua,HUANG He

        0494-0911(2012)09-0026-03

        P23

        B

        2012-04-25

        張小青(1980—),女,江西東鄉(xiāng)人,碩士,助教,主要研究方向?yàn)榫芄こ虦y(cè)量。

        猜你喜歡
        交線面片輪廓線
        球面與簡(jiǎn)單多面體表面交線問(wèn)題探究
        基于HTML5的凸輪廓線圖解法App教學(xué)軟件研究
        初次來(lái)壓期間不同頂板對(duì)工作面片幫影響研究
        平面體截交線邊數(shù)和頂點(diǎn)數(shù)的計(jì)算模型研究
        節(jié)日帽
        甜面片里的人生
        幸福家庭(2016年3期)2016-04-05 03:47:08
        柱錐面交線研究
        多輪廓線的三維形體重構(gòu)技術(shù)研究與實(shí)現(xiàn)*
        青海尕面片
        老伴逼我搟面片
        三级黄色片免费久久久 | 亚洲国产精品一区二区成人片国内| 国产精品毛片一区二区三区| 97伦伦午夜电影理伦片| 亚洲国产成人久久综合一区77| 亚洲福利第一页在线观看| 亚洲精品中文字幕不卡| 狠狠躁日日躁夜夜躁2022麻豆| 无码国产福利av私拍| 男女边吃奶边做边爱视频| 亚洲午夜无码久久久久软件| 国产丝袜长腿在线看片网站| 午夜视频在线观看视频在线播放| 亚洲av无码专区亚洲av伊甸园 | 超碰色偷偷男人的天堂| 久久久久久人妻毛片a片| 久久99精品中文字幕在| 伊人久久综合狼伊人久久| 亚洲一区二区免费在线观看视频| 日韩精品成人无码专区免费| 藏春阁福利视频| 欧美h久免费女| 永久中文字幕av在线免费| 国产亚洲精品第一综合另类| 久久av高潮av无码av喷吹| 天堂在线观看av一区二区三区| 亚洲三区av在线播放| 亚洲天堂丰满人妻av| 夜鲁很鲁在线视频| 精品一精品国产一级毛片| 国产成人自拍视频在线观看网站| h视频在线播放观看视频| 中文字幕av一区二区三区人妻少妇| 巨熟乳波霸若妻在线播放| 久久精品国产亚洲av热九九热| 免费看黄片的视频在线观看| 日韩国产精品无码一区二区三区| 同性男男黄g片免费网站| 亚洲日本视频一区二区三区| 日本一区二区视频在线| 99久久精品费精品国产一区二|