• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    簡(jiǎn)單多邊形裁剪算法

    2014-11-30 07:48:32宋樹(shù)華濮國(guó)梁陳潤(rùn)強(qiáng)
    關(guān)鍵詞:后繼前驅(qū)多邊形

    宋樹(shù)華,濮國(guó)梁,羅 旭,陳 東,陳潤(rùn)強(qiáng)

    (1.北京大學(xué) 遙感與地理信息系統(tǒng)研究所,北京100871;2.中國(guó)資源衛(wèi)星應(yīng)用中心,北京100094;3.中煤科技集團(tuán)公司,北京100013;4.北京應(yīng)用氣象研究所,北京100029)

    0 引 言

    在多邊形裁剪算法中,根據(jù)裁剪處理的對(duì)象不同,裁剪可分為線段裁剪和多邊形裁剪。多邊形裁剪較線段裁剪具有更高的使用頻率,且多邊形越復(fù)雜,多邊形裁剪算法的難度也越大。經(jīng)典的多邊形裁剪算法,如Sutherland-Hodgeman[1]、 梁-Barsky[2]、 Foley[3]、 Maillot[4]、 Andereev[5]等算法要求裁剪多邊形是矩形,羅畏[6]提出的算法則要求裁剪多邊形是圓形,而一般多邊形裁剪更加實(shí)用。Weiler算法[7]、Vatti算法[8]以及 greiner-Hormann算法[9]、劉永奎[10]和彭杰[11]提出的多邊形裁剪算法可對(duì)處理一般多邊形。同時(shí),趙紅波[12]和周清平[13]對(duì)等值線圖的任意多邊形窗口裁剪進(jìn)行研究,陳占龍[14]采用基于要素模型實(shí)現(xiàn)多邊形裁剪,劉雪娜[15]、王結(jié)臣[16]對(duì)復(fù)雜多邊形裁剪進(jìn)行了探討。其中,Weiler算法采用樹(shù)形數(shù)據(jù)結(jié)構(gòu),Vatti和greiner-Hormann算法采用雙線性鏈表數(shù)據(jù)結(jié)構(gòu),劉永奎、周清平、陳占龍和劉雪娜等的裁剪算法采用單線性鏈表,彭杰、趙紅波和王結(jié)臣等的裁剪算法則采用單鏈表、單指針的數(shù)據(jù)結(jié)構(gòu)。雖然后兩種在復(fù)雜性上優(yōu)于前幾種算法,但必須判斷多邊形頂點(diǎn)的順時(shí)針和逆時(shí)針性,增加了多邊形裁剪算法的難度。

    針對(duì)這些問(wèn)題,本文提出了一個(gè)新的多邊形裁剪算法,裁剪多邊形和被裁剪多邊形都可以是一般多邊形,且不需要規(guī)定多邊形輸入方向。本算法采用矢量數(shù)組結(jié)構(gòu),只需遍歷裁剪多邊形和被裁剪多邊形頂點(diǎn)即完成多邊形的裁剪,具有算法簡(jiǎn)單、運(yùn)行效率高的特點(diǎn)。

    1 基本概念與定義

    為了便于下文對(duì)算法的描述,本節(jié)將介紹多邊形裁剪中涉及的一些概念。

    1.1 多邊形、頂點(diǎn)及邊

    由平面上閉合多線段S:{E0,E1,…,En-1}(n≥3)稱為多邊形,其中連接相鄰頂點(diǎn)的線段n-1)稱為S的邊,Pi為頂點(diǎn)。Ei-1,Ei稱作Pi的鄰邊,并規(guī)定i的增序方向?yàn)镾的正方向,否則為反方向。若多邊形中不相鄰的邊不相交,則稱該多邊形為簡(jiǎn)單多邊形。

    1.2 交點(diǎn)、前驅(qū)與后繼

    對(duì)于S,若沿著S正方向,則Pi為I在S中的前驅(qū)(predecessor),Pi+1為I在S中的后繼 (successor);若沿著S反方向,則Pi+1為I在S中的前驅(qū),Pi為I在S中的后繼。同理,對(duì)于C,若沿著C正方向,則Pj為I在C中的前驅(qū),Pj+1為I在S中的后繼;若沿著C反方向,則Pj+1為I在S中的前驅(qū),Pj為I在S中的后繼。若Ei與Ej交點(diǎn)I為Pj,則在C中,I的前驅(qū)和后繼均為Pj,如圖1(a)中的I8點(diǎn)。

    圖1 裁剪多邊形S和被裁剪多邊形C

    2 算法的數(shù)據(jù)結(jié)構(gòu)

    多邊形裁剪算法的核心是數(shù)據(jù)結(jié)構(gòu),它決定了算法的復(fù)雜度和計(jì)算效率。目前,多邊形裁剪常用數(shù)據(jù)結(jié)構(gòu)為線性鏈表結(jié)構(gòu)、雙向鏈表結(jié)構(gòu)和樹(shù)形結(jié)構(gòu)。在算法的復(fù)雜性上,線性鏈表最簡(jiǎn)單,樹(shù)形結(jié)構(gòu)最復(fù)雜。同時(shí),線性鏈表比雙向鏈表少一個(gè)指針域而節(jié)省了存儲(chǔ)空間,但指針依然占用空間。因此,兼顧數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單和節(jié)省存儲(chǔ)空間的目的,本文提出了基于矢量數(shù)組vector的數(shù)據(jù)結(jié)構(gòu)。多邊形矢量數(shù)組的每個(gè)元素表示多邊形頂點(diǎn),且按頂點(diǎn)輸入的順序存儲(chǔ)。頂點(diǎn)或交點(diǎn)的數(shù)據(jù)結(jié)構(gòu)如下:

    Vertex= {double x,y;bool IsInPolygon;}

    交點(diǎn)的前驅(qū)后繼數(shù)據(jù)結(jié)構(gòu)如下:

    CrossPointIndex{

    int nPredecessorIndex=0;//前驅(qū)序號(hào)

    int nSuccessorIndex=0;//后繼序號(hào)

    線段的數(shù)據(jù)結(jié)構(gòu)如下:

    Segment{

    int nStartIndex=0;//頂點(diǎn)1序號(hào)

    int nEndIndex=0;//頂點(diǎn)1序號(hào)

    int*pIndexes;

    int nIndexCount;

    Vertex用來(lái)存儲(chǔ)多邊形的頂點(diǎn)或交點(diǎn),x,y表示頂點(diǎn)的坐標(biāo),IsInPolygon為true表示該點(diǎn)在多邊形內(nèi)部或在多邊形的邊上,否則,表示該點(diǎn)在多邊形外部。CrossPointIndex用于記錄交點(diǎn)在多邊形中的前驅(qū)與后繼的序號(hào)信息,以及記錄同一交點(diǎn)在兩個(gè)多邊形中頂點(diǎn)序號(hào)。即若P為多邊形S與多邊形C的交點(diǎn),為了表示P在S和C中為同一點(diǎn),則可用CrossPointIndex記錄用nPredecessorIndex記錄P在S中的序號(hào)、用nSuccessorIndex記錄P在C中序號(hào)。Segment表示多邊形在另一個(gè)多邊形內(nèi) (外)的線段,nStartIndex為Segment起始頂點(diǎn)的序號(hào),nEndIndex為Segment終止頂點(diǎn)的序號(hào),pIndexes為起始頂點(diǎn)與終止頂點(diǎn)之間的頂點(diǎn)序號(hào)集合,nIndexCount為pIndexes中元素個(gè)數(shù)。

    3 算法設(shè)計(jì)

    多邊形裁剪算法分為3個(gè)階段。第1個(gè)階段,采用射線法[17,18]計(jì)算并判斷S (或C)在C (或S)內(nèi),并修改S(或C)頂點(diǎn)Vertex的IsInPolygon的值。第2個(gè)階段,按正方向遍歷S與C,計(jì)算S與C的交點(diǎn)集,交點(diǎn)的前驅(qū)后繼信息、交點(diǎn)在S和C中對(duì)應(yīng)關(guān)系,以及相交多邊形弧段集。此階段是本算法的核心部分。第3個(gè)階段,對(duì)弧段集進(jìn)行合并,生成并輸出結(jié)果多邊形。

    第1個(gè)階段文獻(xiàn) [17,18]討論的很充分,這里就不再贅述了。下面從第2個(gè)階段開(kāi)始介紹,以圖1為例,具體步驟如下。

    步驟1 按正方向遍歷S與C并計(jì)算交點(diǎn)集Vector<Vertex>CrossPointSet,同時(shí)生成交點(diǎn)在S和C中前驅(qū)、后繼信息Vector<CrossPointIndex> CrossPointIndexSetS和Vector<CrossPointIndex>CrossPointIndexSetC。其中,CrossPointSet中元素IsInPolygon的值為true。若Cross-PointSet元素為多邊形的頂點(diǎn),如圖1(a)中I8與C中序號(hào)為7的點(diǎn)為同一點(diǎn),則CrossPointIndexSetC中對(duì)應(yīng)的元素nPredecessorIndex與nSuccessorIndex的值相等,均C頂點(diǎn)的序號(hào)7。表1為交點(diǎn)在在S和C中前驅(qū)與后繼信息統(tǒng)計(jì)表。

    表1 交點(diǎn)在S和C中前驅(qū)與后繼信息

    步驟2 判斷CrossPointIndexSetS或CrossPointIndex-SetC中首尾元素的nPredecessorIndex與nSuccessorIndex值是否相等。若相等,則將尾部元素放置到首部位置。重復(fù)判斷操作,直到首尾元素值不相等為止。表2為表1調(diào)整后的結(jié)果。

    表2 交點(diǎn)集合元素順序調(diào)整后的結(jié)果

    步驟3 按倒序?qū)rossPointIndexSetS和CrossPoint-IndexSetC中的元素插入到S和C中,計(jì)算原多邊形頂點(diǎn)的序號(hào)信息,并建立交點(diǎn)在兩個(gè)多邊形中頂點(diǎn)序號(hào)對(duì)應(yīng)關(guān)系集合。

    假設(shè)插入交點(diǎn)后的S和C成為S’和C’。插入同時(shí),建立交點(diǎn)在S’和C’中頂點(diǎn)序號(hào)對(duì)應(yīng)集合Vector<Cross-PointIndex>CorrespondingCrossPointIndexSet,并用nPredecessorIndex記錄S’中頂點(diǎn)序號(hào)、nSuccessorIndex記錄C’中頂點(diǎn)序號(hào)。其中,以CrossPointIndexSetS和Cross-PointIndexSetC中前驅(qū)序號(hào)為0的元素開(kāi)始,交點(diǎn)序號(hào)在前驅(qū)序號(hào)的基礎(chǔ)上順序遞增。根據(jù)交點(diǎn)的前驅(qū)后繼集合信息,S和C頂點(diǎn)在S’和C’中的序號(hào)具有如下變化規(guī)律:

    式中:nPredecessorIndex [i]、nSuccessorIndex [i]——S、C序號(hào)為i的頂點(diǎn)在S’和C’中的序號(hào),ni——S和C中序號(hào)為i與i+1之間的交點(diǎn)個(gè)數(shù)。表3是將圖1(b)中的交點(diǎn)插入到S和C后頂點(diǎn)序號(hào)變化統(tǒng)計(jì)表。其中,圖1(b)中括號(hào)前的數(shù)字表示交點(diǎn)插入前頂點(diǎn)序號(hào),括號(hào)中的數(shù)字表示交點(diǎn)插入后的頂點(diǎn)序號(hào)。

    表3 多邊形頂點(diǎn)序號(hào)變化

    步驟4 釋放CrossPointIndexSetS和CrossPointIndex-SetC空間,修改交點(diǎn)對(duì)應(yīng)集合CorrespondingCrossPointIndexSet的元素值,見(jiàn)表4。

    表4 交點(diǎn)對(duì)應(yīng)集合元素值

    步驟5 按正方向分別連接S’和C’中Vertex的IsInPolygon為true且相鄰的頂點(diǎn),生成線段集Vector<Segment>SegmentSetS和 Vector<Segment> Segment-SetC,見(jiàn)表5。

    表5 多邊形線段集元素的頂點(diǎn)序號(hào)表

    步驟6 遍歷SegmentSetS元素并取第i號(hào)元素的中點(diǎn)Pi,采用射線法判斷Pi是否在C中,若不在C中,則刪除SegmentSetS中第i號(hào)元素。同理,刪除SegmentSetC中元素的中點(diǎn)不在S’中的項(xiàng)。表6為SegmentSetS和Segment-SetC按照步驟6操作后的結(jié)果。

    表6 線段集合刪除在多邊形外元素后的結(jié)果

    步驟7 分別合并SegmentSetS和SegmentSetC中為相鄰邊的元素。表7是表6線段合并后的結(jié)果。

    表7 S’和C’的線段合并后的集合

    步驟8 遍歷SegmentSetS和SegmentSetC,利用CorrespondingCrossPointIndexSet交點(diǎn)在S’和C’的對(duì)應(yīng)關(guān)系,將S’和C’互為相鄰邊或相交的線段連接起來(lái)。若SegmentSetS中某元素和SegmentSetC中某元素的值相等或交叉相等,則表示為閉合多邊形。線段連接算法如下:

    int i=j(luò)=0;

    while(i<SegmentSetS.Size())

    Segment seg1= SegmentSetS[i++];

    int nStart=seg1.nStartIndex;

    int nEnd=seg1.nEndIndex;

    for(j=0;j<CorrespondingCrossPointIndexSet.Size();j++)

    遍歷CorrespondingCrossPointIndexSet,得到與S’的nStart、nEnd序號(hào)相等頂點(diǎn)的C’序號(hào),用nStart和nEnd記錄與S’頂點(diǎn)相應(yīng)的C’頂點(diǎn)序號(hào)。此處,可以刪除滿足條件的CorrespondingCross PointIndexSet,減少下次循環(huán)的次數(shù)。

    for(j=0;j< Polygon2segments.Count;j++)

    Segments seg2=SegmentSetC[j];

    Segments seg3=SegmentSetC[j+1];

    if ((nStart= = seg2.nStartIndex & nEnd= =seg2.nEndIndex))

    若線段seg1的起始節(jié)點(diǎn)與seg2的起始節(jié)點(diǎn)、seg1的終止節(jié)點(diǎn)與seg2的終止節(jié)點(diǎn)相等,表示線段seg1與seg2組成為一個(gè)相交多邊形,那么只需將seg2中的點(diǎn)倒序加入到seg1點(diǎn)的后面即可,即點(diǎn)的順序?yàn)椋簊eg1起始點(diǎn)-seg1中間點(diǎn) (順序)-seg1終止點(diǎn)-seg2中間點(diǎn) (倒序)。其中,括號(hào)中的順序是指按Segment中pIndexes元素序號(hào)從小到大的先后順序插入,括號(hào)中的倒序則是按pIndexes元素序號(hào)從大到小的順序插入。后面的意義相同。

    else if ((nStart= = seg2.nEndIndex & nEnd ==seg2.nStartIndex))

    若線段seg1的起始節(jié)點(diǎn)與seg2的終止節(jié)點(diǎn)、seg1的終止節(jié)點(diǎn)與seg2的起始節(jié)點(diǎn)相等,表示線段seg1與seg2組成為一個(gè)相交多邊形,那么只需將seg2中的點(diǎn)順序加入到seg1點(diǎn)的后面即可,即點(diǎn)的順序?yàn)椋簊eg1起始點(diǎn)-seg1中間點(diǎn) (順序)-seg1終止點(diǎn)-seg2中間點(diǎn) (順序)。

    else if ((nStart= = seg2.nEndIndex & nEnd ==seg3.nStartIndex))

    若線段seg1的起始節(jié)點(diǎn)與seg2的終止節(jié)點(diǎn)、seg1的終止節(jié)點(diǎn)與seg3的起始節(jié)點(diǎn)相等,表示線段seg2-seg1-seg3為相交多邊形的一部分,那么只需把線段seg1和seg3頂點(diǎn)和中間點(diǎn)追加到線段seg2后面即可,點(diǎn)的操作順序?yàn)椋簊eg1起始點(diǎn) (或seg2終止點(diǎn))-seg1中間點(diǎn) (順序)-seg1終止點(diǎn) (或seg3起始點(diǎn))-seg3中間點(diǎn) (順序)。同時(shí),將seg3從SegmentSetC中刪除。

    else if ((nStart== seg2.nStartIndex & nEnd ==seg3.nEndIndex))

    若線段seg1的起始節(jié)點(diǎn)與seg2的起始節(jié)點(diǎn)、seg1的終止節(jié)點(diǎn)與seg3的終止節(jié)點(diǎn)相等,表示線段seg3-seg1-seg2為相交多邊形的一部分,那么只需把線段seg1和seg2頂點(diǎn)和中間點(diǎn)追加到線段seg3后面即可,點(diǎn)的操作順序?yàn)椋簊eg1終止點(diǎn) (或seg3終止點(diǎn))-seg1中間點(diǎn) (倒序)-seg1起始點(diǎn) (或seg2起始點(diǎn))-seg2中間點(diǎn) (順序)。同時(shí),將seg2從SegmentSetC中刪除。

    算法結(jié)束,即可輸出結(jié)果多邊形。根據(jù)上述算法,結(jié)果多邊形形成的過(guò)程見(jiàn)表8。

    表8 結(jié)果多邊形形成的過(guò)程

    該算法不僅可以求多邊形的 “交” (多變形的裁剪),而且也可以求多邊形的 “并”和 “差”。例如,在求多邊形的 “并”時(shí),只需將交點(diǎn)與被裁減多邊形和裁剪多邊形的外點(diǎn) (IsInPolygon為false)連接,即為結(jié)果多邊形;而對(duì)于多邊形的 “差”,只需將交點(diǎn)與被裁減多邊形外點(diǎn) (IsIn-Polygon為false)連接,即可結(jié)果多邊形。

    4 算法分析

    下面從空間復(fù)雜性和時(shí)間復(fù)雜性上對(duì)算法進(jìn)行分析。

    首先對(duì)空間復(fù)雜性分析。假設(shè)S和C的頂點(diǎn)數(shù)分別為n和m(m>n),交點(diǎn)數(shù)為k。根據(jù)文獻(xiàn) [10]所述,文獻(xiàn)[10]中算法需要5(n+m)+6k個(gè)存儲(chǔ)單元,Vatti算法和Greiner-Hormann算法占9(n+m+2k)個(gè)存儲(chǔ)單元。

    對(duì)于本文的算法,每個(gè)頂點(diǎn)和交點(diǎn)只占用3個(gè)存儲(chǔ)單元,交點(diǎn)前驅(qū)后繼數(shù)據(jù)結(jié)構(gòu)占2個(gè)存儲(chǔ)單元,弧段占用4個(gè)存儲(chǔ)單元。由于交點(diǎn)前驅(qū)后繼數(shù)據(jù)結(jié)構(gòu)在對(duì)每個(gè)多邊形都記錄一次,因此一個(gè)交點(diǎn)的前驅(qū)后繼占用4個(gè)存儲(chǔ)單元;在申請(qǐng)弧段結(jié)構(gòu)時(shí),前驅(qū)后繼結(jié)構(gòu)是不同時(shí)存在的,那么在整個(gè)算法實(shí)現(xiàn)過(guò)程中,交點(diǎn)前驅(qū)后繼信息和弧段信息始終為4個(gè)存儲(chǔ)單元。因此,本算法總的存儲(chǔ)單位為

    因此,本算法中的頂點(diǎn)占用的空間比文獻(xiàn) [10]的頂點(diǎn)所占用的空間將盡少一半,交點(diǎn)占用存儲(chǔ)空間比文獻(xiàn)[10]算法多k個(gè)單元。而相對(duì)于 Vatti算法和Greiner-Hormann算法,則節(jié)約6(n+m)+11k個(gè)存儲(chǔ)單元,幾乎少用了2/3的存儲(chǔ)空間。

    其次,時(shí)間復(fù)雜度分析。第1階段生成交點(diǎn)以及點(diǎn)是否在多邊形內(nèi),遍歷多邊形1次,其時(shí)間復(fù)雜度為o(m×n);第2階段步驟1,判斷多邊形交點(diǎn)對(duì)應(yīng)關(guān)系,遍歷交點(diǎn)前驅(qū)后繼集1次,時(shí)間復(fù)雜度為o(k×k);步驟6判斷線段集合元素的有效性,遍歷線段集合和多邊形1遍,其中線段集合元素最多不超過(guò)k、多邊形邊數(shù)不超過(guò) (m+k),因此最壞情況下的時(shí)間復(fù)雜度為o((m+k)×k);步驟7和步驟8,分別是線段合并和線段連接,遍歷線段集合1遍,由于線段集合、頂點(diǎn)對(duì)應(yīng)集合的元素的個(gè)數(shù)均不超過(guò)k,所以最壞情況的時(shí)間復(fù)雜度為o(k×k)。因此,本算法的時(shí)間復(fù)雜度為o((m+k)×k)。

    5 結(jié)束語(yǔ)

    本文綜合考慮現(xiàn)有多邊形裁剪算法的優(yōu)缺點(diǎn),提出了一種基于多邊形頂點(diǎn)遍歷的簡(jiǎn)單多邊形裁剪算法。本算法通過(guò)采用矢量數(shù)組結(jié)構(gòu)、遍歷多邊形頂點(diǎn)并記錄裁剪多邊形和被裁減多邊形交點(diǎn)及其前驅(qū)、后繼信息,而無(wú)需考慮輸入多邊形的方向、形狀等,即可很好地處理多邊形邊重合、邊頂點(diǎn)相交等特殊的情況,實(shí)現(xiàn)多邊形裁剪。結(jié)果表明,本算法具有算法簡(jiǎn)單、易于實(shí)現(xiàn)、運(yùn)行效率高的特點(diǎn)。

    [1]Sutherland I E,Hodgeman G W.Reentrant polygon clipping[J].Communications of the ACM,1974,17 (1):32-42.

    [2]Liang Y,Barsky B A.An analysis and algorithm for polygon clipping [J].Communications of the ACM,1983,26 (11):868-877.

    [3]Foley J D,Dam A,F(xiàn)einer S K,et al.Computer graphics,principles and practice[M].MA:Addison-Wesley,1990.

    [4]Maillot P G.A new,fast method for 2Dpolygon clipping:Analysis and software implementation [J].ACM Transactions on Graphics,1992,11 (3):276-290.

    [5]Andereev R D.Algorithm for clipping arbitrary polygons [J].Computer Graphics Forum,1989,8 (2):183-191.

    [6]LUO Wei,ZOU Zhengrong.An algorithm of polygon clipping against a circular window [J].Science of Surveying and Mapping,2011,36 (3):234-235 (in Chinese).[羅畏,鄒崢嶸.一種基于圓形窗口的多邊形裁剪新算法 [J].測(cè)繪科學(xué),2011,36 (3):234-235.]

    [7]Weiler K,Atherton P.Hidden surface removal using polygon area sorting [C]//Proceedings of the SIGGRAPH.New York:ACM Press,1977:214-222.

    [8]Vatti B R.A generic solution to polygon clipping [J].Communications of the ACM,1992,35 (1):56-63.

    [9]Greiner G,Hormann K.Efficient clipping of arbitrary polygons[J].ACM Transactions on Graphics,1998,17 (2):71-83.

    [10]LIU Yongkui,GAO Yun,HUANG Youqun.An efficient algorithm for polygon clipping [J].Journal of Software,2003,14 (4):845-856 (in Chinese).[劉勇奎,高云,黃有群.一個(gè)有效的多邊形裁剪算法 [J].軟件學(xué)報(bào),2003,14(4):845-856.]

    [11]PENG Jie,LIU Nan,TANG Yuanbin,et al.An efficient algorithm for polygon clipping based on intersection points sorting [J].Journal of Zhejiang University (Science Edition),2012,39 (1):107-111 (in Chinese).[彭杰,劉南,唐遠(yuǎn)彬,等.一種基于交點(diǎn)排序的高效多邊形裁剪算法 [J].浙江大學(xué)學(xué)報(bào) (理學(xué)版),2012,39 (1):107-111.]

    [12]ZHAO Hongbo,ZHANG Han.Algorithm for contour clipping against general polygon window [J].Computer Engineering and Applications,2012,48 (32):170-175 (in Chinese).[趙紅波,張涵.一種等值線圖的任意復(fù)雜多邊形窗口裁剪算法 [J].計(jì)算機(jī)工程與應(yīng)用,2012,48 (32):170-175.]

    [13]ZHOU Qingping,CHEN Xuegong.Algorithm for contour clipping against general polygon [J].Computer and Modernization,2012 (4):196-200 (in Chinese).[周清平,陳學(xué)工.大規(guī)模等值線圖任意多邊形裁剪算法 [J].計(jì)算機(jī)與現(xiàn)代化,2012 (4):196-200.]

    [14]CHEN Zhanlong,WU Liang,LIU Huanhuan.Simple feature model polygon clipper algorithm base on sorting edges table [J].Microelectronics & Computer,2012,29 (9):145-148(in Chinese).[陳占龍,吳亮,劉煥煥.基于排序邊表的簡(jiǎn)單要素模型多邊形裁剪算法 [J].微電子學(xué)與計(jì)算機(jī),2012,29 (9):145-148.]

    [15]LIU Xuena,HOU Baoming.An improved algorithm for polygon clipping in complex polygon window [J].Computer and Modernization,2009 (11):36-38 (in Chinese).[劉雪娜,侯寶明.復(fù)雜多邊形窗口的多邊形裁剪的改進(jìn)算法 [J].計(jì)算機(jī)與現(xiàn)代化,2009 (11):36-38.]

    [16]WANG Jiechen,SHEN Dingtao,CHEN Yanming,et al.An efficient algorithm for complex polygon clipping [J].Geomatics and Information Science of Wuhan University,2010,53 (3):369-372 (in Chinese).[王結(jié)臣,沈定濤,陳焱明,等.一種有效的復(fù)雜多邊形裁剪算法 [J].武漢大學(xué)學(xué)報(bào)(信息科學(xué)版),2010,53 (3):369-372.]

    [17]JIANG Ping,LIU Minshi.Improved ray method to judge the relation of point and polygon including simple curve [J].Science of Surveying and Mapping,2009,34 (5):220-222(in Chinese).[江平,劉民士.射線法判斷點(diǎn)與包含簡(jiǎn)單曲線多邊形 關(guān)系 的完善 [J].測(cè) 繪科學(xué),2009,34 (5):220-222.]

    [18]LIU Minshi,WANG Chun.The improved algorithm to determine the inside and outside relationships between point and polygon by ray method [J].Journal of Chuzhou University,2010,12 (2):14-16 (in Chinese).[劉民士,王春.射線法判斷點(diǎn)與多邊形內(nèi)外關(guān)系的改進(jìn)算法 [J].滁州學(xué)院學(xué)報(bào),2010,12 (2):14-16.]

    猜你喜歡
    后繼前驅(qū)多邊形
    多邊形中的“一個(gè)角”問(wèn)題
    多邊形的藝術(shù)
    解多邊形題的轉(zhuǎn)化思想
    多邊形的鑲嵌
    皮亞諾公理體系下的自然數(shù)運(yùn)算(一)
    湖南教育(2017年3期)2017-02-14 03:37:33
    SiBNC陶瓷纖維前驅(qū)體的結(jié)構(gòu)及流變性能
    甘岑后繼式演算系統(tǒng)與其自然演繹系統(tǒng)的比較
    濾子與濾子圖
    可溶性前驅(qū)體法制備ZrC粉末的研究進(jìn)展
    前驅(qū)體磷酸鐵中磷含量測(cè)定的不確定度評(píng)定
    欧美97在线视频| 人成视频在线观看免费观看| 久久久国产一区二区| 丝袜喷水一区| 国产成人免费无遮挡视频| 精品国产乱码久久久久久小说| 免费观看人在逋| 国产99久久九九免费精品| 爱豆传媒免费全集在线观看| av有码第一页| 午夜精品国产一区二区电影| 在线观看免费高清a一片| 国产亚洲午夜精品一区二区久久| 久久性视频一级片| 国产亚洲欧美在线一区二区| 免费在线观看影片大全网站| 在线观看舔阴道视频| 久久久国产一区二区| 美女午夜性视频免费| 日韩欧美国产一区二区入口| 亚洲三区欧美一区| 欧美另类一区| 这个男人来自地球电影免费观看| 国产成人精品在线电影| 极品少妇高潮喷水抽搐| 欧美日韩黄片免| 女性被躁到高潮视频| 久久久久精品国产欧美久久久 | 99热国产这里只有精品6| 国产亚洲欧美在线一区二区| 12—13女人毛片做爰片一| 天天躁日日躁夜夜躁夜夜| 欧美中文综合在线视频| 欧美日韩福利视频一区二区| 亚洲av电影在线进入| 亚洲国产成人一精品久久久| 99国产精品一区二区三区| 国产片内射在线| 99热国产这里只有精品6| 国产黄色免费在线视频| 丝袜美腿诱惑在线| 91麻豆精品激情在线观看国产 | 一级黄色大片毛片| 亚洲 欧美一区二区三区| 丝袜人妻中文字幕| 黑丝袜美女国产一区| 亚洲av美国av| 老汉色∧v一级毛片| 99久久99久久久精品蜜桃| 久久国产精品人妻蜜桃| 高清av免费在线| 欧美人与性动交α欧美精品济南到| 久久久久久久久久久久大奶| 香蕉丝袜av| 美女高潮到喷水免费观看| 人妻一区二区av| 国产淫语在线视频| 久久人人97超碰香蕉20202| 动漫黄色视频在线观看| av电影中文网址| 亚洲一码二码三码区别大吗| 精品人妻1区二区| 丝袜在线中文字幕| 国产精品免费视频内射| netflix在线观看网站| 99久久精品国产亚洲精品| 人人妻人人澡人人看| 国产一区二区三区av在线| 在线观看免费视频网站a站| 欧美日韩黄片免| 免费在线观看日本一区| 日韩大片免费观看网站| 国产极品粉嫩免费观看在线| 国产黄色免费在线视频| 欧美午夜高清在线| 免费在线观看视频国产中文字幕亚洲 | 飞空精品影院首页| 国产高清videossex| 老司机午夜福利在线观看视频 | 老司机在亚洲福利影院| 一级毛片女人18水好多| 亚洲国产中文字幕在线视频| 国产精品成人在线| 天天躁狠狠躁夜夜躁狠狠躁| 韩国高清视频一区二区三区| 老司机在亚洲福利影院| 97人妻天天添夜夜摸| 成人影院久久| 国产男人的电影天堂91| 国产av又大| 免费观看av网站的网址| 亚洲少妇的诱惑av| 国产精品熟女久久久久浪| 精品久久久精品久久久| 在线观看免费高清a一片| 免费一级毛片在线播放高清视频 | 纯流量卡能插随身wifi吗| 免费日韩欧美在线观看| 热re99久久国产66热| 少妇的丰满在线观看| 在线观看免费午夜福利视频| 亚洲精品自拍成人| 亚洲七黄色美女视频| 成在线人永久免费视频| 欧美日本中文国产一区发布| 日本黄色日本黄色录像| 亚洲第一av免费看| 好男人电影高清在线观看| 黑人巨大精品欧美一区二区mp4| 成年人午夜在线观看视频| 日本av手机在线免费观看| 久久精品久久久久久噜噜老黄| 国产av一区二区精品久久| 亚洲少妇的诱惑av| 黄色 视频免费看| 少妇 在线观看| 一区二区三区四区激情视频| 久久人人爽av亚洲精品天堂| 国产成人欧美在线观看 | 丝袜人妻中文字幕| 亚洲一码二码三码区别大吗| 狠狠狠狠99中文字幕| 男女免费视频国产| 午夜免费成人在线视频| 一边摸一边做爽爽视频免费| 成人av一区二区三区在线看 | 欧美乱码精品一区二区三区| 国产亚洲午夜精品一区二区久久| 91麻豆av在线| 日韩大片免费观看网站| 精品福利永久在线观看| 精品国产乱码久久久久久男人| 岛国毛片在线播放| 国产精品二区激情视频| av视频免费观看在线观看| 搡老岳熟女国产| 黄色 视频免费看| 亚洲五月色婷婷综合| 十分钟在线观看高清视频www| 女人精品久久久久毛片| 日韩制服骚丝袜av| 国产免费福利视频在线观看| 丝袜在线中文字幕| 亚洲专区中文字幕在线| 老司机靠b影院| 99九九在线精品视频| 国产日韩一区二区三区精品不卡| 黄片播放在线免费| 大片电影免费在线观看免费| 中亚洲国语对白在线视频| 久久久精品免费免费高清| 色婷婷久久久亚洲欧美| 99久久99久久久精品蜜桃| 性少妇av在线| 亚洲av男天堂| 热99re8久久精品国产| 精品福利永久在线观看| 午夜精品国产一区二区电影| 亚洲精品国产区一区二| 91九色精品人成在线观看| av片东京热男人的天堂| 久久久久国内视频| 99精国产麻豆久久婷婷| 视频区欧美日本亚洲| 亚洲欧美精品自产自拍| 51午夜福利影视在线观看| 欧美在线一区亚洲| 久久人妻福利社区极品人妻图片| 精品少妇黑人巨大在线播放| 人人妻人人爽人人添夜夜欢视频| 日韩三级视频一区二区三区| 新久久久久国产一级毛片| 侵犯人妻中文字幕一二三四区| 少妇 在线观看| 国产精品久久久久久精品古装| 91老司机精品| 两性夫妻黄色片| 国产精品久久久久久人妻精品电影 | 蜜桃国产av成人99| 国产区一区二久久| 菩萨蛮人人尽说江南好唐韦庄| 成年女人毛片免费观看观看9 | 国产成人精品久久二区二区免费| 亚洲欧美精品自产自拍| 99国产精品一区二区蜜桃av | 精品第一国产精品| 午夜久久久在线观看| www.精华液| 久久久久久久精品精品| 久久99热这里只频精品6学生| 日本猛色少妇xxxxx猛交久久| 丝袜美腿诱惑在线| 成人免费观看视频高清| 免费观看av网站的网址| 交换朋友夫妻互换小说| 日韩欧美免费精品| 久久国产精品男人的天堂亚洲| 在线观看一区二区三区激情| 黄色视频在线播放观看不卡| 国产免费一区二区三区四区乱码| 老司机亚洲免费影院| 久久精品亚洲熟妇少妇任你| 亚洲 欧美一区二区三区| 熟女少妇亚洲综合色aaa.| 国产一区二区在线观看av| 久久精品亚洲av国产电影网| 国产一级毛片在线| 国产区一区二久久| 亚洲性夜色夜夜综合| www.999成人在线观看| 成人亚洲精品一区在线观看| 91av网站免费观看| 最新的欧美精品一区二区| 亚洲一卡2卡3卡4卡5卡精品中文| 国产一区二区在线观看av| 日韩人妻精品一区2区三区| 国产在线视频一区二区| 女性生殖器流出的白浆| 老汉色∧v一级毛片| 天堂8中文在线网| 黄色毛片三级朝国网站| av电影中文网址| 一级毛片电影观看| 国产精品欧美亚洲77777| 亚洲av欧美aⅴ国产| 老司机影院毛片| 亚洲男人天堂网一区| 亚洲av日韩精品久久久久久密| 电影成人av| 久久九九热精品免费| 久久久欧美国产精品| 动漫黄色视频在线观看| 国产精品 欧美亚洲| xxxhd国产人妻xxx| 搡老熟女国产l中国老女人| 水蜜桃什么品种好| 无限看片的www在线观看| 亚洲国产欧美一区二区综合| 亚洲欧美日韩另类电影网站| 日韩一区二区三区影片| 手机成人av网站| 97精品久久久久久久久久精品| 欧美人与性动交α欧美软件| 免费日韩欧美在线观看| 亚洲精品中文字幕在线视频| 18禁裸乳无遮挡动漫免费视频| 欧美精品一区二区大全| 久久久久视频综合| 宅男免费午夜| 极品少妇高潮喷水抽搐| 两个人看的免费小视频| xxxhd国产人妻xxx| 日韩免费高清中文字幕av| 99热国产这里只有精品6| 视频区图区小说| 黑人猛操日本美女一级片| av在线播放精品| 亚洲欧美精品综合一区二区三区| 色老头精品视频在线观看| 午夜两性在线视频| 一个人免费看片子| 国产一卡二卡三卡精品| 老司机影院毛片| 在线观看免费日韩欧美大片| 操美女的视频在线观看| 亚洲九九香蕉| 精品一品国产午夜福利视频| 国产在线免费精品| 成年美女黄网站色视频大全免费| 亚洲av日韩在线播放| 亚洲一区二区三区欧美精品| 久久香蕉激情| 免费久久久久久久精品成人欧美视频| 日本av手机在线免费观看| 免费日韩欧美在线观看| 久久久精品区二区三区| 久久狼人影院| 成人国产一区最新在线观看| 精品国产乱子伦一区二区三区 | 人妻 亚洲 视频| 宅男免费午夜| 久久99一区二区三区| 一区二区av电影网| 美女扒开内裤让男人捅视频| 精品少妇久久久久久888优播| 久久国产亚洲av麻豆专区| bbb黄色大片| 啪啪无遮挡十八禁网站| 丝袜美腿诱惑在线| 最黄视频免费看| 久久久精品94久久精品| 亚洲九九香蕉| 最黄视频免费看| 欧美精品一区二区大全| 欧美日韩福利视频一区二区| 国产免费现黄频在线看| 久久人人97超碰香蕉20202| 在线永久观看黄色视频| 搡老熟女国产l中国老女人| 一区二区三区乱码不卡18| 日本五十路高清| 亚洲中文av在线| 亚洲国产av新网站| 青春草亚洲视频在线观看| av电影中文网址| 一个人免费看片子| 99国产精品免费福利视频| 久久香蕉激情| 国产成人啪精品午夜网站| 黄色怎么调成土黄色| 无限看片的www在线观看| 国产精品一二三区在线看| 国产xxxxx性猛交| 国产精品一区二区在线观看99| 亚洲一区二区三区欧美精品| 天天操日日干夜夜撸| 欧美日韩一级在线毛片| a在线观看视频网站| 爱豆传媒免费全集在线观看| 久久国产亚洲av麻豆专区| 精品久久蜜臀av无| 首页视频小说图片口味搜索| 在线观看免费午夜福利视频| 日韩中文字幕视频在线看片| 热re99久久国产66热| 国产日韩欧美视频二区| 国产99久久九九免费精品| 天堂俺去俺来也www色官网| 一区福利在线观看| 国内毛片毛片毛片毛片毛片| 黄频高清免费视频| 99精品久久久久人妻精品| 精品少妇久久久久久888优播| 色老头精品视频在线观看| 午夜影院在线不卡| 亚洲全国av大片| 亚洲av成人不卡在线观看播放网 | 91成年电影在线观看| 国产精品一区二区精品视频观看| 国产成人av教育| 啦啦啦在线免费观看视频4| 在线观看舔阴道视频| 波多野结衣av一区二区av| 欧美精品亚洲一区二区| av不卡在线播放| 成人亚洲精品一区在线观看| 狠狠狠狠99中文字幕| 国产极品粉嫩免费观看在线| 欧美xxⅹ黑人| 免费不卡黄色视频| 久久亚洲国产成人精品v| 日韩一区二区三区影片| 成年动漫av网址| 亚洲成人免费电影在线观看| 女人精品久久久久毛片| 午夜91福利影院| 亚洲熟女毛片儿| 首页视频小说图片口味搜索| 人妻久久中文字幕网| 99久久国产精品久久久| 啦啦啦中文免费视频观看日本| 丝袜在线中文字幕| 欧美黑人欧美精品刺激| 亚洲激情五月婷婷啪啪| 欧美精品一区二区免费开放| 最近最新中文字幕大全免费视频| 亚洲成国产人片在线观看| 久久人人爽av亚洲精品天堂| 两性午夜刺激爽爽歪歪视频在线观看 | 欧美人与性动交α欧美软件| 久久久久久免费高清国产稀缺| 久久久精品免费免费高清| 国产亚洲av高清不卡| 国产欧美日韩一区二区三 | 三上悠亚av全集在线观看| 亚洲成人国产一区在线观看| 男女床上黄色一级片免费看| 男女下面插进去视频免费观看| 1024视频免费在线观看| 各种免费的搞黄视频| 国产精品欧美亚洲77777| 欧美成人午夜精品| 欧美精品啪啪一区二区三区 | 欧美激情高清一区二区三区| 午夜免费成人在线视频| 99re6热这里在线精品视频| 国产亚洲av片在线观看秒播厂| 成人影院久久| 久久影院123| 婷婷色av中文字幕| 日韩 亚洲 欧美在线| 嫩草影视91久久| 国产在线视频一区二区| 久热这里只有精品99| 久久人妻福利社区极品人妻图片| 80岁老熟妇乱子伦牲交| 大香蕉久久网| 黄色视频,在线免费观看| 亚洲精品中文字幕一二三四区 | 两个人看的免费小视频| 色婷婷久久久亚洲欧美| 999久久久精品免费观看国产| 国产91精品成人一区二区三区 | 成人亚洲精品一区在线观看| 欧美变态另类bdsm刘玥| 久久久国产成人免费| 久久久国产一区二区| 精品国内亚洲2022精品成人 | videos熟女内射| 一边摸一边抽搐一进一出视频| 国产精品国产三级国产专区5o| 国产免费一区二区三区四区乱码| 亚洲国产欧美日韩在线播放| 亚洲精品国产区一区二| 国产成人免费无遮挡视频| 桃红色精品国产亚洲av| 久久ye,这里只有精品| 另类精品久久| 黄色a级毛片大全视频| 国产99久久九九免费精品| 久久久久久人人人人人| 捣出白浆h1v1| 午夜免费观看性视频| 午夜福利,免费看| 成人av一区二区三区在线看 | 黄色视频在线播放观看不卡| 天天影视国产精品| 久久久久国产一级毛片高清牌| 日韩免费高清中文字幕av| 亚洲第一av免费看| 狠狠精品人妻久久久久久综合| 精品少妇一区二区三区视频日本电影| 亚洲国产欧美网| 亚洲av成人一区二区三| 精品亚洲乱码少妇综合久久| 他把我摸到了高潮在线观看 | 在线观看免费高清a一片| 久久精品国产亚洲av香蕉五月 | 人妻 亚洲 视频| 亚洲,欧美精品.| 亚洲国产精品成人久久小说| 精品国产超薄肉色丝袜足j| 日韩三级视频一区二区三区| 男女下面插进去视频免费观看| 精品一区在线观看国产| 王馨瑶露胸无遮挡在线观看| 亚洲国产成人一精品久久久| 国产欧美日韩精品亚洲av| 亚洲一区二区三区欧美精品| 美女高潮到喷水免费观看| 亚洲 欧美一区二区三区| 黄色毛片三级朝国网站| 极品少妇高潮喷水抽搐| 秋霞在线观看毛片| kizo精华| 国产成人精品久久二区二区91| 在线精品无人区一区二区三| 一区福利在线观看| 国产av一区二区精品久久| 日本精品一区二区三区蜜桃| 国产伦理片在线播放av一区| 亚洲精品粉嫩美女一区| 18禁国产床啪视频网站| 男女下面插进去视频免费观看| 国产一区二区在线观看av| 亚洲国产欧美在线一区| 黄色片一级片一级黄色片| 亚洲综合色网址| 欧美久久黑人一区二区| 久久人妻福利社区极品人妻图片| 免费看十八禁软件| 啦啦啦中文免费视频观看日本| 亚洲三区欧美一区| 成人免费观看视频高清| 国产男女内射视频| 动漫黄色视频在线观看| 捣出白浆h1v1| 亚洲精品乱久久久久久| 777久久人妻少妇嫩草av网站| 久久久久精品人妻al黑| 伊人亚洲综合成人网| 亚洲欧美日韩高清在线视频 | 亚洲成人国产一区在线观看| 久久精品亚洲av国产电影网| 久久ye,这里只有精品| 不卡一级毛片| 99国产综合亚洲精品| 国产高清国产精品国产三级| 亚洲成人免费电影在线观看| 国产精品.久久久| 国产成人啪精品午夜网站| av免费在线观看网站| 高清视频免费观看一区二区| 日韩大片免费观看网站| 亚洲精品第二区| 午夜福利,免费看| 少妇的丰满在线观看| 亚洲熟女毛片儿| 亚洲国产精品999| 久9热在线精品视频| 成年人午夜在线观看视频| 精品人妻一区二区三区麻豆| 欧美日韩成人在线一区二区| 自拍欧美九色日韩亚洲蝌蚪91| 99国产精品一区二区三区| avwww免费| 美女大奶头黄色视频| 国产精品免费大片| 国产一级毛片在线| 满18在线观看网站| 日本av手机在线免费观看| 亚洲国产看品久久| 精品福利永久在线观看| 高潮久久久久久久久久久不卡| 丝袜喷水一区| 亚洲天堂av无毛| 欧美日韩精品网址| 男女床上黄色一级片免费看| 中文欧美无线码| 亚洲自偷自拍图片 自拍| 老汉色av国产亚洲站长工具| 99热国产这里只有精品6| 亚洲午夜精品一区,二区,三区| 久久亚洲国产成人精品v| 十八禁人妻一区二区| 国产精品久久久久成人av| 国产精品二区激情视频| 国产男人的电影天堂91| 亚洲专区中文字幕在线| 日韩欧美一区二区三区在线观看 | 午夜91福利影院| 十八禁高潮呻吟视频| 18在线观看网站| 亚洲自偷自拍图片 自拍| 一本一本久久a久久精品综合妖精| 久久久久视频综合| 亚洲全国av大片| 欧美老熟妇乱子伦牲交| 久久久久久亚洲精品国产蜜桃av| 丰满饥渴人妻一区二区三| 中文字幕另类日韩欧美亚洲嫩草| 五月天丁香电影| 十八禁高潮呻吟视频| 十分钟在线观看高清视频www| 国产深夜福利视频在线观看| 欧美日韩福利视频一区二区| 狂野欧美激情性bbbbbb| 老司机影院毛片| 亚洲欧美日韩高清在线视频 | 婷婷成人精品国产| 免费观看av网站的网址| 免费一级毛片在线播放高清视频 | 日本wwww免费看| 日韩中文字幕欧美一区二区| 纵有疾风起免费观看全集完整版| 国产精品熟女久久久久浪| 91成年电影在线观看| 50天的宝宝边吃奶边哭怎么回事| 日韩视频在线欧美| e午夜精品久久久久久久| 婷婷色av中文字幕| av超薄肉色丝袜交足视频| 国产视频一区二区在线看| 精品福利永久在线观看| 亚洲欧美精品综合一区二区三区| 在线看a的网站| 咕卡用的链子| 精品免费久久久久久久清纯 | 精品一区二区三卡| 人人妻人人澡人人看| 国产精品影院久久| 欧美日韩一级在线毛片| 亚洲精品国产av成人精品| 国产伦人伦偷精品视频| 99九九在线精品视频| 亚洲精品国产精品久久久不卡| 久久热在线av| 精品一区二区三卡| 一本—道久久a久久精品蜜桃钙片| 黄色 视频免费看| 母亲3免费完整高清在线观看| 一本大道久久a久久精品| 女人久久www免费人成看片| 欧美大码av| 美女高潮喷水抽搐中文字幕| 午夜久久久在线观看| 欧美97在线视频| 女人精品久久久久毛片| 少妇 在线观看| 老鸭窝网址在线观看| 老司机深夜福利视频在线观看 | 中文字幕最新亚洲高清| av线在线观看网站| 久久九九热精品免费| 亚洲国产欧美日韩在线播放| 桃红色精品国产亚洲av| 飞空精品影院首页| 欧美成狂野欧美在线观看| 啦啦啦啦在线视频资源| 99精品久久久久人妻精品| 飞空精品影院首页| 亚洲伊人久久精品综合| www.自偷自拍.com| 欧美人与性动交α欧美精品济南到| 久久人人97超碰香蕉20202| 99热国产这里只有精品6| 蜜桃国产av成人99| 黄色片一级片一级黄色片| 免费在线观看影片大全网站| 免费高清在线观看视频在线观看| 国产精品免费视频内射| 久久天躁狠狠躁夜夜2o2o| 久9热在线精品视频| 美女视频免费永久观看网站| 两性夫妻黄色片|