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

    面向并行的動(dòng)態(tài)增量式Delaunay 三角剖分算法*

    2020-01-11 06:26:52楊昊禹
    計(jì)算機(jī)與生活 2020年1期
    關(guān)鍵詞:剖分增量三角形

    楊昊禹,劉 利,張 誠(chéng),于 灝

    清華大學(xué) 地球系統(tǒng)科學(xué)系 地球系統(tǒng)數(shù)值模擬教育部重點(diǎn)實(shí)驗(yàn)室,北京100084

    1 引言

    三角剖分[1]是計(jì)算幾何學(xué)領(lǐng)域中基礎(chǔ)而又重要的研究?jī)?nèi)容,其可以將平面或球面等區(qū)域中的散點(diǎn)轉(zhuǎn)化為以這些散點(diǎn)為頂點(diǎn)的三角形網(wǎng)格。三角剖分技術(shù)可應(yīng)用于眾多領(lǐng)域,例如逆向工程、計(jì)算機(jī)可視化、地理信息系統(tǒng)、有限元分析、地球系統(tǒng)模式等。作為一個(gè)基礎(chǔ)算法,三角剖分的計(jì)算效率可直接影響到上層應(yīng)用的整體效率,如何快速高效地完成三角剖分一直是業(yè)界重要的討論話(huà)題[2-4]。

    三角剖分算法相關(guān)研究已經(jīng)有較久遠(yuǎn)的歷史。如今最常討論的Delaunay 三角剖分由Boris Delaunay最先提出。Delaunay 三角剖分要求每個(gè)三角形均滿(mǎn)足空?qǐng)A特性,即任意一個(gè)三角形的外接圓內(nèi)均不包含任何其他點(diǎn)。

    目前二維平面Delaunay 三角剖分算法(簡(jiǎn)稱(chēng)為三角剖分算法)可分為多種不同類(lèi)型,包括插入法、構(gòu)造法、分治法、高維鑲嵌法等,其中最常用的算法為插入法和分治法。插入法邏輯簡(jiǎn)單、易于實(shí)現(xiàn),分治法通常擁有最低的時(shí)間復(fù)雜度,可達(dá)到O(nlgn),其中n表示點(diǎn)數(shù)。這兩種算法討論詳見(jiàn)第2 章。

    地球系統(tǒng)模式是氣候演變規(guī)律研究、未來(lái)氣候預(yù)測(cè)和無(wú)縫隙數(shù)值預(yù)報(bào)所不可或缺的科學(xué)工具,由分別模擬大氣、陸面、海洋和海冰等地球系統(tǒng)圈層的分量模式通過(guò)耦合器耦合而成[5-7]。由于不同分量模式所使用的網(wǎng)格可能不同,因此需要使用插值技術(shù)來(lái)實(shí)現(xiàn)耦合變量在不同網(wǎng)格間的插值。插值技術(shù)的實(shí)現(xiàn)依賴(lài)于臨近點(diǎn)搜索技術(shù),而三角剖分的實(shí)現(xiàn)正好可以給臨近點(diǎn)搜索提供具有通用性的基礎(chǔ)支持。

    雖然三角剖分算法已具有較低時(shí)間復(fù)雜度,但隨著網(wǎng)格分辨率的不斷提高,三角剖分的開(kāi)銷(xiāo)仍會(huì)越來(lái)越大,這樣的開(kāi)銷(xiāo)仍不可忽略。為了尋求進(jìn)一步的加速,大家開(kāi)始關(guān)注并行三角剖分的研究。

    并行三角剖分算法按照并行分塊策略的不同,可以分為非重疊分塊法和重疊式分塊法兩類(lèi)。非重疊分塊法將全球分為若干互不重疊的子塊,并行地對(duì)各塊進(jìn)行局地三角剖分,最后通過(guò)串行縫合操作將各子塊合并為最終結(jié)果。重疊式分塊法會(huì)在分塊時(shí)保持各子塊間的部分重疊,避免了合并時(shí)的串行縫合操作。雖然重疊會(huì)引入少量額外計(jì)算,但因其可以避免串行縫合,因此具有更高的并行可擴(kuò)展性。在并行規(guī)模越來(lái)越大的今天,重疊式分塊法比非重疊分塊法有更大優(yōu)勢(shì)。

    重疊式分塊法現(xiàn)在也可分為兩個(gè)子類(lèi),靜態(tài)重疊法[8]和動(dòng)態(tài)重疊法[9]。靜態(tài)重疊法在分塊之時(shí)就已經(jīng)確定下各分塊的大小及互相重疊的程度。動(dòng)態(tài)重疊法則允許算法在執(zhí)行中動(dòng)態(tài)改變分塊重疊區(qū)的大小。因?yàn)橹丿B區(qū)域過(guò)小會(huì)造成子塊間的公共三角形不一致,最終導(dǎo)致并行計(jì)算結(jié)果有誤(串行與并行計(jì)算結(jié)果不同),所以靜態(tài)重疊法往往使用過(guò)飽和的重疊區(qū)域以保證結(jié)果正確,但這樣會(huì)引入過(guò)多額外計(jì)算開(kāi)銷(xiāo),拖慢整體速度。動(dòng)態(tài)重疊法因?yàn)橹С址謮K重疊區(qū)的變動(dòng),所以可以降低上述額外開(kāi)銷(xiāo),并使最終結(jié)果的正確性更可靠。

    動(dòng)態(tài)重疊法帶來(lái)了一個(gè)新的問(wèn)題,對(duì)于單一分塊的局地三角剖分,在完成對(duì)已有點(diǎn)的三角剖分后,若重疊區(qū)擴(kuò)大,增加了若干新的點(diǎn),如何求取考慮了新增點(diǎn)的三角剖分結(jié)果?一般說(shuō)來(lái),有兩種實(shí)現(xiàn)方式:第一種方式是刪除已有三角剖分結(jié)果后,重新求解所有點(diǎn)(包含新增點(diǎn))的三角剖分結(jié)果;第二種方式是在保留已有三角剖分結(jié)果基礎(chǔ)上,增量求解新增點(diǎn)對(duì)三角剖分結(jié)果的調(diào)整。毫無(wú)疑問(wèn),后者將比前者更佳高效,本文將后者稱(chēng)為增量三角剖分算法?;趧?dòng)態(tài)重疊法設(shè)計(jì)的并行三角化軟件PatCC1[9](parallel triangulation algorithm with commonality and parallel consistency,version 1)在實(shí)現(xiàn)增量三角剖分時(shí)采用了上述第一種方式,若能設(shè)計(jì)出第二種方式的增量實(shí)現(xiàn),則會(huì)給PatCC1 帶來(lái)更高的性能提升。

    當(dāng)前已有的三角剖分算法都無(wú)法完全滿(mǎn)足增量三角剖分需求,為此本文提出了TID(truly incremental Delaunay)算法,該算法可以高效實(shí)現(xiàn)增量三角剖分。

    2 相關(guān)工作

    2.1 插入法

    插入法是最為常用的三角剖分算法。該類(lèi)算法首先創(chuàng)建一個(gè)假想的極大三角形以包圍住所有點(diǎn),隨后逐步插入這些點(diǎn),并對(duì)每個(gè)點(diǎn)進(jìn)行如下操作:定位該點(diǎn)所在的三角形,將該三角形替換為3 個(gè)或兩個(gè)子三角形(后稱(chēng)分裂操作),然后判斷相應(yīng)邊的Delaunay 合法性并進(jìn)行適當(dāng)?shù)姆D(zhuǎn)操作[10](又稱(chēng)局部?jī)?yōu)化)。待所有點(diǎn)插入完成,最終三角剖分結(jié)果也隨之完成。

    插入法的關(guān)鍵步驟即為點(diǎn)的定位,即判斷一個(gè)點(diǎn)被當(dāng)前哪個(gè)三角形所包含?,F(xiàn)有定位方式可分為以下四類(lèi):Walking 方法[11]、Delaunay 樹(shù)方法[12]、索引矩陣法[13]以及分解定位法[14-15]。本文稱(chēng)使用前三類(lèi)定位方式的插入法為在線(xiàn)插入法,使用分解定位法的插入法為離線(xiàn)插入法。

    Walking 方法的核心操作即為在當(dāng)前邊的臨近邊中選取離插入點(diǎn)最近的邊作為新的當(dāng)前邊,該方法從隨機(jī)某邊開(kāi)始,重復(fù)執(zhí)行上述操作來(lái)逐步逼近插入點(diǎn)所在的三角形。Delaunay 樹(shù)方法,會(huì)在插點(diǎn)過(guò)程中以三角形為節(jié)點(diǎn)建立一個(gè)搜索樹(shù),點(diǎn)的定位即可通過(guò)遍歷搜索樹(shù)來(lái)完成。索引矩陣法,將整個(gè)區(qū)域分為若干矩形子域,用以粗略記錄三角形的位置信息。該方法中點(diǎn)的定位均通過(guò)初步定位、局地精確遍歷兩個(gè)步驟來(lái)完成。在分解定位法中,一個(gè)三角形除包含三個(gè)頂點(diǎn)外,還包含若干位于該三角形中的尚未插入的點(diǎn)(稱(chēng)為待插點(diǎn))。在生成若干新三角形后,待插點(diǎn)會(huì)被分配到這些三角形中。

    Walking 方法中臨邊快速選取的實(shí)現(xiàn)方法及數(shù)據(jù)結(jié)構(gòu)較為復(fù)雜;Delaunay 方法的缺點(diǎn)是內(nèi)存占用大,維護(hù)三角形間的樹(shù)形關(guān)系較為困難;索引矩陣法的缺點(diǎn)則是索引效率受總點(diǎn)數(shù)及矩陣大小的影響,輸入點(diǎn)規(guī)模的變化給定位效率帶來(lái)的波動(dòng)較大。此外,以上三種定位方法的逐點(diǎn)定位方法無(wú)法高效利用中央處理器(central processing unit,CPU)高速緩存(cache)帶來(lái)的加速效果。分解定位法對(duì)點(diǎn)進(jìn)行統(tǒng)一管理,更易通過(guò)連續(xù)訪存實(shí)現(xiàn)定位,具有較高的計(jì)算效率,但因其為離線(xiàn)算法,必須事先準(zhǔn)備好所有點(diǎn)。

    2.2 分治法

    分治法三角剖分主要由劃分與合并兩部分操作組成。劃分即為按照一定的方法將平面或球面的一個(gè)區(qū)域分解為若干子區(qū)域,然后分別為各子區(qū)域單獨(dú)求解三角剖分;合并則是將各子區(qū)域的三角剖分結(jié)果整合為一個(gè)整體,這過(guò)程的局部?jī)?yōu)化操作會(huì)給三角剖分的結(jié)果帶來(lái)調(diào)整。常見(jiàn)的劃分方法主要包括一維二分法(沿水平線(xiàn)或垂線(xiàn)二分)和二維二分法(沿水平線(xiàn)和垂線(xiàn)交替二分)。

    一方面,當(dāng)區(qū)域中的點(diǎn)很少時(shí),分治法的效率會(huì)遠(yuǎn)低于插入法;另一方面,分治法合并過(guò)程實(shí)現(xiàn)起來(lái)比較困難,特別是當(dāng)需要保證Delaunay 三角剖分的空?qǐng)A特性時(shí)。

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

    增量三角剖分的需求來(lái)源于動(dòng)態(tài)重疊式并行三角剖分算法,該類(lèi)并行算法分塊范圍的動(dòng)態(tài)變化需要在已有三角剖分的基礎(chǔ)上加入新增點(diǎn),并求解更新后的三角剖分??梢钥偨Y(jié)出該增量三角剖分場(chǎng)景具有以下特點(diǎn):

    (1)新增點(diǎn)大多位于已有三角形外,少量位于已有三角形內(nèi)(后文分別稱(chēng)為外增點(diǎn)和內(nèi)增點(diǎn))。

    (2)性能需求:新增點(diǎn)并非逐一加入,而是批量式加入。

    (3)現(xiàn)有的動(dòng)態(tài)重疊法并行算法PatCC1 使用了分解定位插入法來(lái)完成局地三角化。

    對(duì)于增量三角化的實(shí)現(xiàn),在線(xiàn)插入法可以支持內(nèi)增點(diǎn),但無(wú)法高效支持外增點(diǎn)。雖然可以采取折中策略避免出現(xiàn)外增點(diǎn),即設(shè)置一個(gè)非常大的初始三角形,但卻會(huì)帶來(lái)較大性能損失。例如,極大初始三角形會(huì)導(dǎo)致索引矩陣覆蓋范圍很大,但常用的卻只為中間少量索引塊;極大初始三角形也會(huì)使Delaunay 樹(shù)不平衡,增加樹(shù)深,增加單次搜索的耗時(shí)。

    離線(xiàn)插入法雖然支持內(nèi)增點(diǎn),但每次增加點(diǎn)均需要通過(guò)全局搜索對(duì)點(diǎn)進(jìn)行定位,效率低下,此外離線(xiàn)插入法也無(wú)法支持外增點(diǎn)。

    分治法既不支持內(nèi)增點(diǎn),也不支持外增點(diǎn)。這是因?yàn)榉种畏ú皇侵瘘c(diǎn)插入型算法,同時(shí)分治法的合并操作缺乏通用性,無(wú)法實(shí)現(xiàn)對(duì)已有區(qū)塊和新增區(qū)塊在任意位置下的合并。

    綜上所述,無(wú)法基于分治法而只能基于插入法來(lái)實(shí)現(xiàn)增量三角剖分。由于分解定位插入法具有很好的數(shù)據(jù)訪問(wèn)局部性,且PatCC1 也采用該算法來(lái)實(shí)現(xiàn)局地三角剖分,因此基于分解定位插入法來(lái)實(shí)現(xiàn)增量三角剖分,既有利于取得高效率,也有利于重用PatCC1 中分解定位插入法的實(shí)現(xiàn),但必須解決以下兩個(gè)問(wèn)題:

    (1)外增點(diǎn)的支持;

    (2)高效實(shí)現(xiàn)所有新增點(diǎn)到三角形的定位。

    為此,本文引入原有剖分的擴(kuò)展操作來(lái)將所有外增點(diǎn)均轉(zhuǎn)化為內(nèi)增點(diǎn),并使用索引技術(shù)實(shí)現(xiàn)新增點(diǎn)的高效定位,設(shè)計(jì)出了增量三角剖分算法TID。

    3.1 相關(guān)名詞

    假想矩形:算法為了便于執(zhí)行插入法三角剖分所引入包含所有點(diǎn)的矩形。

    假想點(diǎn):假想矩形的4 個(gè)頂點(diǎn)。

    原有點(diǎn):在增加新點(diǎn)之前已有的點(diǎn)。

    新增點(diǎn):需要被插入到原有剖分中的點(diǎn)。

    原有剖分:在增加新點(diǎn)之前已有的三角剖分。

    外擴(kuò)剖分:原有剖分經(jīng)過(guò)擴(kuò)展后得到的新剖分。

    外層三角形:頂點(diǎn)中包含假想點(diǎn)的三角形。

    三角形的外邊框:能包圍住該三角形,且各邊均垂直或平行于坐標(biāo)軸橫軸的最小矩形。

    3.2 整體設(shè)計(jì)

    增量算法整體流程如圖1,主要由以下步驟組成:

    (1)初始狀態(tài)的設(shè)定,主要涉及假想點(diǎn)的生成。

    (2)判斷是否存在新增點(diǎn),若存在,則執(zhí)行下一步,否則算法結(jié)束。

    (3)根據(jù)新增點(diǎn)對(duì)原有剖分進(jìn)行適當(dāng)外擴(kuò)。

    (4)定位新增點(diǎn)至原有剖分中。

    (5)基于原有三角剖分及新增點(diǎn),動(dòng)態(tài)更新三角剖分,返回(2)。

    Fig.1 Main flowchart of TID圖1 TID 算法流程圖

    該算法可以滿(mǎn)足前述兩點(diǎn)需求,其中(3)實(shí)現(xiàn)了外增點(diǎn)的支持,(4)可以完成新增點(diǎn)的高效定位。

    3.3 算法實(shí)現(xiàn)

    本節(jié)將詳細(xì)討論TID 算法各步驟的具體實(shí)現(xiàn)以及算法對(duì)四點(diǎn)共圓情況的特殊處理。

    3.3.1 初始化階段

    與其他插入法類(lèi)似,TID 算法使用假想矩形包圍住所有點(diǎn)。在初始化階段,算法根據(jù)第一輪新增點(diǎn)的位置分布來(lái)創(chuàng)建假想矩形,保證假想矩形能夠包圍住所有第一輪新增點(diǎn)。

    3.3.2 原有剖分外擴(kuò)

    若原有剖分對(duì)應(yīng)的假想矩形不能包含全部已有新增點(diǎn),則算法會(huì)首先擴(kuò)大該假想矩形,然后更新所有外層三角形的頂點(diǎn)坐標(biāo),從而完成原有剖分外擴(kuò)。

    為確定假想矩形的擴(kuò)大范圍,算法先掃描新增點(diǎn)并確定坐標(biāo)的邊界,然后分別以邊界邊長(zhǎng)的預(yù)定比例對(duì)邊界最小值進(jìn)行減小,對(duì)最大值進(jìn)行增加,進(jìn)而得到預(yù)期外擴(kuò)范圍。本文將上述預(yù)定比例稱(chēng)為外擴(kuò)參數(shù),與該參數(shù)相關(guān)的測(cè)試結(jié)果及討論見(jiàn)4.4 節(jié)。

    原有剖分外擴(kuò)過(guò)程如圖2,圖中的5 個(gè)實(shí)心圓點(diǎn)為原有點(diǎn),4 個(gè)空心圓點(diǎn)為假想點(diǎn),3 個(gè)空心菱形為新增點(diǎn),圖2(a)和圖2(b)分別代表擴(kuò)展前后三角剖分的狀態(tài)。通過(guò)原有剖分的外擴(kuò),所有外增點(diǎn)均已被轉(zhuǎn)化為內(nèi)增點(diǎn)。在外擴(kuò)后,外層三角形由于形狀的變化,其Delaunay 合法性可能會(huì)受到改變,但因?yàn)檫@些外層三角形僅為假想三角形,所以不會(huì)對(duì)最終結(jié)果產(chǎn)生影響。

    Fig.2 Expansion of existing triangulation圖2 原有剖分外擴(kuò)示意圖

    3.3.3 新增點(diǎn)定位

    新增點(diǎn)定位即將各新增點(diǎn)根據(jù)位置關(guān)系定位到外擴(kuò)剖分的某個(gè)三角形中。TID 算法通過(guò)索引矩陣法來(lái)完成高效定位。

    算法首先把當(dāng)前外擴(kuò)剖分覆蓋范圍均勻劃分為若干索引塊并建立索引矩陣,再把各新增點(diǎn)放入相應(yīng)索引塊內(nèi)(將含有新增點(diǎn)的索引塊標(biāo)記為非空索引塊);然后掃描外擴(kuò)剖分中的所有三角形,若三角形與非空索引塊的區(qū)域有重疊,則將其記錄在相應(yīng)索引塊中;最后依次在各非空索引塊內(nèi),確定新增點(diǎn)所在的三角形,從而實(shí)現(xiàn)新增點(diǎn)的快速定位。

    索引塊的數(shù)量是影響新增點(diǎn)定位效率的重要參數(shù)。索引塊過(guò)少會(huì)導(dǎo)致一個(gè)索引塊包含有很多新增點(diǎn)和三角形,從而導(dǎo)致索引效率的降低;索引塊過(guò)多雖然會(huì)降低復(fù)雜度,但會(huì)導(dǎo)致Cachemiss 增多,無(wú)法較好利用CPU 高速緩存。因此,應(yīng)該在保證索引過(guò)程不增加TID 算法復(fù)雜度的前提下,選擇最小的索引塊數(shù)量。對(duì)于不同的數(shù)據(jù)規(guī)模,TID 算法會(huì)根據(jù)公式動(dòng)態(tài)推測(cè)索引塊的最優(yōu)數(shù)量。該公式的推導(dǎo)詳見(jiàn)3.3.6 小節(jié),相關(guān)測(cè)試結(jié)果詳見(jiàn)4.3 節(jié)。當(dāng)已有三角形數(shù)量很少時(shí),使用索引定位法的意義不大,此時(shí)將直接使用全局搜索。

    為了加快點(diǎn)與三角形位置關(guān)系的判斷,TID 算法會(huì)先使用三角形的外邊框進(jìn)行預(yù)判,只有當(dāng)點(diǎn)位于外邊框內(nèi)時(shí),才會(huì)精確判斷該點(diǎn)是否位于三角形內(nèi)。

    3.3.4 三角剖分動(dòng)態(tài)更新

    在經(jīng)過(guò)新增點(diǎn)定位后,所有新增點(diǎn)均已被成組地分配到若干三角形中,稱(chēng)這些三角形為非空三角形。TID 算法通過(guò)單獨(dú)對(duì)每一個(gè)非空三角形執(zhí)行分裂操作來(lái)完成整體三角剖分的更新。分裂操作由以下三步完成:

    (1)子三角形的生成;

    (2)局部?jī)?yōu)化;

    (3)父三角形待插點(diǎn)到子三角形的分配。

    首先,TID 算法從父三角形待插點(diǎn)中取出離父三角形重心最近的點(diǎn),以該點(diǎn)作為插入點(diǎn),連接該點(diǎn)與父三角形各頂點(diǎn)形成多個(gè)子三角形。如圖3 所示,當(dāng)插入點(diǎn)位于父三角形內(nèi)時(shí),會(huì)形成3 個(gè)子三角形;當(dāng)插入點(diǎn)位于父三角形某一邊上時(shí),則在形成兩個(gè)子三角形同時(shí),將共享該邊的另一個(gè)三角形也分裂為兩個(gè)子三角形,共生成4 個(gè)子三角形。

    其次,對(duì)所有新生成的子三角形進(jìn)行局部?jī)?yōu)化。即判斷所有子三角形邊的Delaunay 合法性,若不合法則通過(guò)翻轉(zhuǎn)操作將其轉(zhuǎn)化為合法邊。翻轉(zhuǎn)操作會(huì)引入新的父三角形和子三角形。

    Fig.3 Generation of new triangles圖3 子三角形生成示例

    最后,將父三角形剩余待插點(diǎn)按照位置關(guān)系分配至相應(yīng)子三角形內(nèi)。需注意由于翻轉(zhuǎn)操作的存在,父三角形可能存在多個(gè),子三角形個(gè)數(shù)也可能大于4 個(gè)。

    TID 算法會(huì)遞歸地分裂子三角形,當(dāng)所有子三角形都不包含任何點(diǎn)時(shí),本次三角剖分完成。

    為減少內(nèi)存使用,避免頻繁的內(nèi)存分配帶來(lái)的時(shí)間開(kāi)銷(xiāo),本文采用數(shù)組加鏈表的方式來(lái)存儲(chǔ)待插點(diǎn)。該方法只使用O(n)的空間,同時(shí)其順序訪存可以有效利用起CPU 高速緩存。

    3.3.5 四點(diǎn)共圓特例

    嚴(yán)格的Delaunay 三角剖分不允許存在4 點(diǎn)共圓的情況,但共圓情況在地球系統(tǒng)模式網(wǎng)格中卻無(wú)法避免,甚至是經(jīng)常出現(xiàn)的。例如,在地球系統(tǒng)模式中最常用的經(jīng)緯網(wǎng)格中,經(jīng)度或緯度值相鄰的4 個(gè)格點(diǎn)均共圓。該情況下三角剖分會(huì)存在多種合法解。這會(huì)給算法行為帶來(lái)不確定性,若用于并行計(jì)算,則會(huì)給其帶來(lái)串并行不一致的風(fēng)險(xiǎn)。本文針對(duì)這種情況,使用了與PatCC1[9]相同的特殊判斷規(guī)則:

    四點(diǎn)共圓合法性給定兩個(gè)相鄰三角形及其二者的頂點(diǎn),若該4 個(gè)頂點(diǎn)共圓,則當(dāng)且僅當(dāng)該4 點(diǎn)中的最左點(diǎn)(若存在多個(gè)最左點(diǎn)則為最左下點(diǎn))不被這兩個(gè)三角形共享時(shí),這兩個(gè)三角形是合法三角形。

    3.3.6 索引矩陣參數(shù)公式

    給定n個(gè)原有點(diǎn)和m個(gè)新增點(diǎn),對(duì)于TID 算法,三角剖分動(dòng)態(tài)更新階段的時(shí)間復(fù)雜度為:

    給定k×k的索引矩陣,本文稱(chēng)k為索引矩陣參數(shù)。構(gòu)建該索引矩陣的時(shí)間復(fù)雜度為O(m+n),即O(n)。假設(shè)新增點(diǎn)在外圈均勻分布,則非空索引塊位于索引矩陣的外層,非空索引塊數(shù)為O(k),各索引塊平均包含三角形數(shù)量為,各非空索引塊平均包含新增點(diǎn)數(shù)為,因此索引矩陣法的定位復(fù)雜度為上述三者之積,即。

    為保證效率,本文要求索引定位法的時(shí)間復(fù)雜度既不高于構(gòu)建索引矩陣的時(shí)間復(fù)雜度,也不高于三角剖分動(dòng)態(tài)更新的時(shí)間復(fù)雜度,即:

    本文選取滿(mǎn)足上述條件的最小k值作為最優(yōu)索引矩陣參數(shù)K,可以表示為:

    其中,a與b為系數(shù),可通過(guò)實(shí)際測(cè)試得來(lái)。

    4 性能評(píng)估

    本文的性能評(píng)估主要包括:核心三角剖分性能評(píng)估和增量場(chǎng)景下的性能評(píng)估。對(duì)于前者,本文以Github 上的三角剖分軟件作為對(duì)照組,在非增量場(chǎng)景進(jìn)行了TID 算法和同類(lèi)算法的性能對(duì)比。對(duì)于后者,本文首先對(duì)比了增量場(chǎng)景下TID 算法和PatCC1 原始算法的性能差異,然后通過(guò)比較TID 算法本身在增量場(chǎng)景和非增量場(chǎng)景的性能差異,來(lái)探究增量功能帶來(lái)的額外開(kāi)銷(xiāo)。此外,本文還分別針對(duì)索引矩陣參數(shù)和原有剖分外擴(kuò)參數(shù)進(jìn)行了相應(yīng)的實(shí)驗(yàn)探究。

    4.1 實(shí)驗(yàn)配置

    本文全部實(shí)驗(yàn)均在個(gè)人電腦上完成,其裝有Intel Core i9-9900K 8 核3.6 GHz 處理器,32 GB 內(nèi)存,可執(zhí)行程序均使用GNU 6.3.0 編譯器在O3 優(yōu)化等級(jí)下進(jìn)行編譯。

    本文的實(shí)驗(yàn)網(wǎng)格采用了3 種不同密度,粗、中、細(xì),以及3 種不同類(lèi)型,隨機(jī)生成網(wǎng)格、均勻網(wǎng)格、真實(shí)網(wǎng)格。其中真實(shí)網(wǎng)格選取了地球系統(tǒng)模式中的球面立方網(wǎng)格作為實(shí)驗(yàn)數(shù)據(jù)。

    實(shí)驗(yàn)共使用了3 種不同插點(diǎn)方法:

    (1)非增量式:一次性加入所有點(diǎn)并生成三角剖分。

    (2)單次增量式:將點(diǎn)分為兩組,依次加入并生成三角剖分。

    (3)多次增量式:將點(diǎn)分為多組,依次加入并生成三角剖分。

    4.2 核心三角剖分性能

    核心三角剖分即TID 算法整體流程的第5 步。本實(shí)驗(yàn)的對(duì)照組為Juannavascalvente 的三角剖分軟件(https://github.com/juannavascalvente/Delaunay,后稱(chēng)Juan 軟件),其使用基于Delaunay 樹(shù)定位的插入式算法。本實(shí)驗(yàn)使用非增量式插點(diǎn)方法,分別統(tǒng)計(jì)了兩者在不同類(lèi)型、不同分辨率的網(wǎng)格下的三角剖分耗時(shí)。該耗時(shí)只包括核心三角剖分過(guò)程,去除了文件輸入輸出等無(wú)關(guān)過(guò)程的影響。

    實(shí)驗(yàn)結(jié)果如表1,表中Timeout 代表實(shí)際執(zhí)行時(shí)間超過(guò)1 h,OOM(out of memory)代表程序執(zhí)行時(shí)耗盡系統(tǒng)內(nèi)存??梢钥闯鯰ID 算法在每個(gè)網(wǎng)格下的計(jì)算效率均優(yōu)于Juan 軟件,同時(shí)網(wǎng)格規(guī)模越大,TID 算法的優(yōu)勢(shì)越明顯。因此,TID算法所采用的分解定位法在運(yùn)行速度和內(nèi)存占用上均優(yōu)于Delaunay樹(shù)定位法。

    Table 1 Comparison of kernel triangulation time between Juan algorithm and TID algorithm表1 Juan 和TID 算法核心三角剖分耗時(shí)

    4.3 索引矩陣參數(shù)實(shí)驗(yàn)

    索引矩陣參數(shù)決定著新增點(diǎn)定位的效率。為確定3.3.6 小節(jié)中最優(yōu)索引矩陣參數(shù)公式的系數(shù)a、b,本節(jié)使用單次增量插點(diǎn)法基于多種分辨率的隨機(jī)生成網(wǎng)格進(jìn)行了探究。

    本文分別在粗網(wǎng)格、中網(wǎng)格、細(xì)網(wǎng)格下使用不同的索引矩陣參數(shù)測(cè)試了新增點(diǎn)定位的整體耗時(shí)。測(cè)試結(jié)果如圖4 所示,其橫坐標(biāo)為索引矩陣參數(shù),縱坐標(biāo)為新增點(diǎn)定位耗時(shí)進(jìn)行歸一化后的結(jié)果,即實(shí)際耗時(shí)除以該網(wǎng)格下的最低耗時(shí)。

    Fig.4 Tendency of locating time with indexing map parameter using various grids圖4 多種網(wǎng)格下定位耗時(shí)隨索引矩陣參數(shù)變化趨勢(shì)

    從圖4 中數(shù)據(jù)可以看出,隨著索引矩陣參數(shù)逐漸增大,各網(wǎng)格新增點(diǎn)定位耗時(shí)均呈現(xiàn)先減小,后增大的趨勢(shì)。這主要是因?yàn)樗饕龎K較少時(shí),每個(gè)索引塊內(nèi)點(diǎn)數(shù)及三角形數(shù)量過(guò)多,塊內(nèi)定位的開(kāi)銷(xiāo)仍比較大,隨著索引矩陣參數(shù)增大,這樣的開(kāi)銷(xiāo)越來(lái)越小。但當(dāng)索引矩陣參數(shù)過(guò)大時(shí),過(guò)于密集的索引矩陣導(dǎo)致單索引塊中所含點(diǎn)數(shù)及三角形數(shù)量很少,在進(jìn)行塊內(nèi)定位時(shí)會(huì)產(chǎn)生較多Cachemiss 現(xiàn)象,反而拖慢定位速度。從圖中可以看出,粗、中、細(xì)網(wǎng)格的最優(yōu)矩陣參數(shù)分別為30、70、100。本文規(guī)定定位耗時(shí)不超過(guò)最低耗時(shí)0.1 倍的部分為最優(yōu)區(qū)間,則上述網(wǎng)格的最優(yōu)區(qū)間分別為[21,37]、[40,140]、[70,300]。

    綜合粗、中、細(xì)網(wǎng)格的原有點(diǎn)數(shù)、新增點(diǎn)數(shù)及索引矩陣參數(shù)最優(yōu)值,本文嘗試不同的系數(shù)配置,并最終確定了合適的系數(shù)配置,a為0.2,b為0.3。該系數(shù)配置可以保證3 個(gè)網(wǎng)格下的公式推測(cè)值均落入最優(yōu)區(qū)間中,如表2 所示。為進(jìn)一步驗(yàn)證公式準(zhǔn)確性,本文構(gòu)造了點(diǎn)數(shù)更多的隨機(jī)生成網(wǎng)格作為驗(yàn)證網(wǎng)格,并測(cè)試了其不同索引矩陣參數(shù)下的定位耗時(shí),結(jié)果如圖5。該網(wǎng)格的公式推測(cè)值也在表2 中一并列出,可見(jiàn)推測(cè)值仍位于圖中的最優(yōu)區(qū)間內(nèi)。

    4.4 原有剖分外擴(kuò)參數(shù)實(shí)驗(yàn)

    本節(jié)探究了3.3.2 小節(jié)中外擴(kuò)參數(shù)對(duì)新增點(diǎn)定位耗時(shí)和三角剖分動(dòng)態(tài)更新耗時(shí)的影響。該實(shí)驗(yàn)使用單次增量插點(diǎn)法,基于細(xì)密度的隨機(jī)生成網(wǎng)格,索引矩陣參數(shù)采用4.3 節(jié)中測(cè)試出的最優(yōu)值100。實(shí)驗(yàn)分別統(tǒng)計(jì)了多種外擴(kuò)參數(shù)下兩個(gè)主要階段的耗時(shí),并記錄了非空索引塊數(shù)量占總索引塊數(shù)量的比重。

    Table 2 Prediction of optimal indexing map parameters using grids with different resolution表2 不同分辨率網(wǎng)格下最優(yōu)索引矩陣參數(shù)的推測(cè)

    Fig.5 Tendency of locating time with indexing map parameter using very fine grid圖5 極細(xì)網(wǎng)格下定位耗時(shí)隨索引矩陣參數(shù)變化趨勢(shì)

    測(cè)試結(jié)果見(jiàn)表3,隨著外擴(kuò)系數(shù)的增大,新增點(diǎn)定位耗時(shí)的增加非常明顯,這是因?yàn)橥鈹U(kuò)系數(shù)增大會(huì)導(dǎo)致索引矩陣范圍的增大,進(jìn)而導(dǎo)致新增點(diǎn)位于越來(lái)越少的索引矩陣塊中,索引效率降低,這可從非空索引塊占比的逐漸降低中看出。另外,三角剖分動(dòng)態(tài)更新耗時(shí)隨著外擴(kuò)系數(shù)的增加而輕微增加,這主要是因?yàn)槠史址秶脑龃髮?dǎo)致外層三角形被“拉長(zhǎng)”,新增點(diǎn)在單個(gè)三角形中的分布不均勻,進(jìn)而導(dǎo)致三角形的分裂次數(shù)增多,耗時(shí)增加。由該實(shí)驗(yàn)可知,為保證程序運(yùn)行的高效性,應(yīng)使用盡量小的外擴(kuò)參數(shù)。

    Table 3 Running time of two main steps using different expansion parameters表3 不同外擴(kuò)參數(shù)下的兩個(gè)主要階段耗時(shí)

    4.5 增量場(chǎng)景整體性能

    增量場(chǎng)景的性能實(shí)驗(yàn)由兩部分組成:TID 算法與PatCC1 原始算法對(duì)比實(shí)驗(yàn)、增量開(kāi)銷(xiāo)實(shí)驗(yàn)。這兩個(gè)性能實(shí)驗(yàn)均將輸入點(diǎn)分為10 組,每組的點(diǎn)數(shù)均已在結(jié)果表格中給出。

    PatCC1 在更新三角剖分時(shí)采用了刪除原有剖分并重新求解的方法,本文以該方法作為對(duì)照組,使用多次增量式插點(diǎn)方法進(jìn)行了性能對(duì)比實(shí)驗(yàn)。結(jié)果如表4,TID 算法相比PatCC1 原始算法具有很明顯的速度優(yōu)勢(shì)??梢?jiàn)若將TID 算法用于PatCC1 中,將會(huì)給其帶來(lái)較大的性能提升。

    Table 4 Comparison of triangulation time between TID algorithm and PatCC1 algorithm表4 TID 算法與PatCC1 原始算法增量三角剖分耗時(shí)

    增量插點(diǎn)功能的引入也會(huì)帶來(lái)額外開(kāi)銷(xiāo),其主要來(lái)源于索引矩陣的構(gòu)建及新增點(diǎn)的定位。為探究該開(kāi)銷(xiāo)大小,本文分別統(tǒng)計(jì)了TID 算法對(duì)相同網(wǎng)格采用不同插點(diǎn)方式(非增量式和多次增量式)時(shí)的耗時(shí),實(shí)驗(yàn)結(jié)果見(jiàn)表5。表中序號(hào)n對(duì)應(yīng)的增量單次耗時(shí)即為增量插入第n組新點(diǎn)并更新三角剖分所消耗的時(shí)間,非增量耗時(shí)即為將第0 組到第n組的所有點(diǎn)一次性插入并進(jìn)行三角剖分的耗時(shí)。假設(shè)當(dāng)前增量耗時(shí)為T(mén)inc,上一次非增量耗時(shí)T0,當(dāng)前非增量耗時(shí)Tc,則額外開(kāi)銷(xiāo)占比。從結(jié)果中可以看出,增量功能并不會(huì)引入過(guò)多額外開(kāi)銷(xiāo),其在較好情況下與非增量式的耗時(shí)基本相近,在較壞情況下額外開(kāi)銷(xiāo)仍低于10%。

    Table 5 Comparison of triangulation time between incremental TID algorithm and non-incremental TID algorithm表5 TID 算法增量式與非增量式三角剖分耗時(shí)

    5 總結(jié)

    本文基于分解定位插入法設(shè)計(jì)了一種高效的增量三角剖分算法TID,該算法支持在已有三角剖分基礎(chǔ)上增加任意位置的點(diǎn)并更新三角剖分。該算法不僅具有增量插點(diǎn)特性,其與同類(lèi)非增量軟件相比也具有更高的計(jì)算效率。此外,合法化特殊規(guī)則的引入確保該算法能夠生成唯一的三角剖分結(jié)果。

    TID算法現(xiàn)已成功用于并行三角剖分軟件PatCC1。TID 算法源代碼見(jiàn)https://github.com/WireFisher/TID。

    猜你喜歡
    剖分增量三角形
    提質(zhì)和增量之間的“辯證”
    基于重心剖分的間斷有限體積元方法
    “價(jià)增量減”型應(yīng)用題點(diǎn)撥
    二元樣條函數(shù)空間的維數(shù)研究進(jìn)展
    三角形,不扭腰
    三角形表演秀
    如果沒(méi)有三角形
    畫(huà)一畫(huà)
    基于均衡增量近鄰查詢(xún)的位置隱私保護(hù)方法
    一種實(shí)時(shí)的三角剖分算法
    亚洲精品国产色婷婷电影| 亚洲国产欧美日韩在线播放| 91成人精品电影| 一级黄色大片毛片| 色婷婷久久久亚洲欧美| 欧美国产精品va在线观看不卡| 中文字幕精品免费在线观看视频| 手机成人av网站| 色播在线永久视频| 国产又爽黄色视频| 国产av一区二区精品久久| 黄色 视频免费看| 飞空精品影院首页| 飞空精品影院首页| 考比视频在线观看| 美女高潮到喷水免费观看| 久久99一区二区三区| 亚洲七黄色美女视频| 欧美激情高清一区二区三区| 久久精品91无色码中文字幕| 国产国语露脸激情在线看| 欧美国产精品一级二级三级| 国产片内射在线| 久久青草综合色| 亚洲专区字幕在线| 国产精品一区二区精品视频观看| 国产精品久久久久成人av| 亚洲精品成人av观看孕妇| 蜜桃国产av成人99| 超碰97精品在线观看| 亚洲精品中文字幕在线视频| 一边摸一边做爽爽视频免费| 丰满饥渴人妻一区二区三| 免费黄频网站在线观看国产| 18禁国产床啪视频网站| 亚洲av日韩精品久久久久久密| 中文字幕人妻丝袜制服| 欧美人与性动交α欧美精品济南到| 国产成人一区二区三区免费视频网站| 精品欧美一区二区三区在线| 国产99久久九九免费精品| 女性被躁到高潮视频| 日韩免费av在线播放| 嫩草影视91久久| 国产日韩欧美亚洲二区| 久久中文看片网| 天堂中文最新版在线下载| 国产色视频综合| 99热国产这里只有精品6| 亚洲精品乱久久久久久| 国产在线精品亚洲第一网站| 手机成人av网站| 国产在线一区二区三区精| 日韩欧美一区二区三区在线观看 | 女性被躁到高潮视频| 久久国产精品影院| 精品亚洲成a人片在线观看| 久久久欧美国产精品| 午夜福利在线免费观看网站| 亚洲国产精品一区二区三区在线| 这个男人来自地球电影免费观看| tocl精华| 久久精品国产亚洲av高清一级| 侵犯人妻中文字幕一二三四区| 欧美人与性动交α欧美软件| 91九色精品人成在线观看| 99国产精品99久久久久| 美女福利国产在线| 高清欧美精品videossex| 97人妻天天添夜夜摸| 一区二区三区激情视频| 久久久久久人人人人人| 99re在线观看精品视频| 女人久久www免费人成看片| 999久久久精品免费观看国产| 女人被躁到高潮嗷嗷叫费观| 日本五十路高清| 国产淫语在线视频| 久久av网站| 90打野战视频偷拍视频| 亚洲一区二区三区欧美精品| 99久久国产精品久久久| 在线播放国产精品三级| 久久久久久久久免费视频了| 国产高清国产精品国产三级| 久久久久国产一级毛片高清牌| 夜夜夜夜夜久久久久| 美女扒开内裤让男人捅视频| 亚洲国产中文字幕在线视频| 一级毛片电影观看| 丰满迷人的少妇在线观看| 亚洲情色 制服丝袜| 大片免费播放器 马上看| 夜夜骑夜夜射夜夜干| 久久久久久免费高清国产稀缺| 女人高潮潮喷娇喘18禁视频| 精品一品国产午夜福利视频| 亚洲视频免费观看视频| 99精品久久久久人妻精品| 午夜免费鲁丝| 老司机靠b影院| 精品人妻熟女毛片av久久网站| 亚洲熟女精品中文字幕| 久久久精品94久久精品| 夜夜骑夜夜射夜夜干| 热99国产精品久久久久久7| 一级片免费观看大全| 欧美日韩成人在线一区二区| 国产成人免费观看mmmm| 久久午夜综合久久蜜桃| 欧美日韩av久久| 亚洲第一av免费看| 黑丝袜美女国产一区| 欧美日韩福利视频一区二区| 久久人人爽av亚洲精品天堂| 97人妻天天添夜夜摸| 久久久国产欧美日韩av| 日本黄色日本黄色录像| 丝袜人妻中文字幕| 欧美国产精品一级二级三级| 欧美人与性动交α欧美软件| 日韩欧美国产一区二区入口| 19禁男女啪啪无遮挡网站| 亚洲精品自拍成人| 两人在一起打扑克的视频| 色综合婷婷激情| 成人特级黄色片久久久久久久 | 久久久精品免费免费高清| 中文字幕人妻丝袜制服| 日本vs欧美在线观看视频| 国产在线精品亚洲第一网站| 亚洲午夜精品一区,二区,三区| 精品亚洲成a人片在线观看| 国产一区二区三区在线臀色熟女 | 免费黄频网站在线观看国产| 日本黄色日本黄色录像| 十八禁人妻一区二区| 免费av中文字幕在线| 在线十欧美十亚洲十日本专区| 99国产极品粉嫩在线观看| 国产欧美日韩精品亚洲av| 黄片大片在线免费观看| 法律面前人人平等表现在哪些方面| 亚洲自偷自拍图片 自拍| 成人av一区二区三区在线看| 亚洲第一青青草原| 这个男人来自地球电影免费观看| 成人18禁在线播放| 欧美性长视频在线观看| 国产男靠女视频免费网站| 大香蕉久久网| 国产欧美日韩一区二区精品| 国产97色在线日韩免费| 真人做人爱边吃奶动态| 动漫黄色视频在线观看| 亚洲第一青青草原| 亚洲精品中文字幕一二三四区 | 好男人电影高清在线观看| 99精品欧美一区二区三区四区| 久久久久久久久久久久大奶| 免费观看a级毛片全部| 久久ye,这里只有精品| www日本在线高清视频| 久久精品国产a三级三级三级| 少妇被粗大的猛进出69影院| 天天添夜夜摸| 国产av又大| 高清av免费在线| 国产成人免费无遮挡视频| 两性午夜刺激爽爽歪歪视频在线观看 | 午夜老司机福利片| 欧美久久黑人一区二区| 热99国产精品久久久久久7| 国产成人欧美| 宅男免费午夜| 日韩人妻精品一区2区三区| 国产亚洲午夜精品一区二区久久| 91精品国产国语对白视频| 亚洲伊人色综图| 亚洲精品美女久久av网站| 国产av又大| 中文字幕av电影在线播放| 在线亚洲精品国产二区图片欧美| 91精品三级在线观看| a级毛片在线看网站| 国产精品久久电影中文字幕 | 在线av久久热| 美女福利国产在线| 在线亚洲精品国产二区图片欧美| 亚洲专区中文字幕在线| 大香蕉久久网| 中亚洲国语对白在线视频| 在线播放国产精品三级| 日韩中文字幕欧美一区二区| 男女午夜视频在线观看| 久久国产亚洲av麻豆专区| 色播在线永久视频| 女人被躁到高潮嗷嗷叫费观| 捣出白浆h1v1| 麻豆av在线久日| 午夜老司机福利片| 亚洲情色 制服丝袜| 曰老女人黄片| 久久婷婷成人综合色麻豆| 久久天堂一区二区三区四区| 成在线人永久免费视频| 桃红色精品国产亚洲av| 夜夜夜夜夜久久久久| 丝袜美足系列| 黄网站色视频无遮挡免费观看| 亚洲精品久久成人aⅴ小说| 少妇裸体淫交视频免费看高清 | 日本vs欧美在线观看视频| 黑人欧美特级aaaaaa片| 侵犯人妻中文字幕一二三四区| 一区福利在线观看| 男女免费视频国产| 黑人猛操日本美女一级片| 丝袜在线中文字幕| 一夜夜www| 国产高清国产精品国产三级| 好男人电影高清在线观看| av网站免费在线观看视频| 看免费av毛片| 蜜桃在线观看..| 国产成人一区二区三区免费视频网站| 777久久人妻少妇嫩草av网站| 日本黄色日本黄色录像| 伦理电影免费视频| 色在线成人网| 亚洲人成电影免费在线| 美女国产高潮福利片在线看| 大香蕉久久网| 亚洲欧洲精品一区二区精品久久久| 18禁观看日本| 一边摸一边抽搐一进一小说 | 亚洲国产成人一精品久久久| 亚洲av日韩在线播放| 精品国产乱子伦一区二区三区| 三上悠亚av全集在线观看| 纵有疾风起免费观看全集完整版| 亚洲av片天天在线观看| 欧美老熟妇乱子伦牲交| 亚洲国产欧美在线一区| 亚洲av成人不卡在线观看播放网| 天天操日日干夜夜撸| 少妇猛男粗大的猛烈进出视频| 日韩精品免费视频一区二区三区| 亚洲人成伊人成综合网2020| 亚洲精品国产区一区二| 一边摸一边抽搐一进一小说 | 99久久人妻综合| 亚洲一区二区三区欧美精品| 五月天丁香电影| 99国产精品免费福利视频| 老司机福利观看| 纯流量卡能插随身wifi吗| 男女免费视频国产| 久久精品国产综合久久久| 18禁国产床啪视频网站| 91麻豆av在线| 亚洲全国av大片| 亚洲国产欧美一区二区综合| 脱女人内裤的视频| 亚洲,欧美精品.| 久久久久久亚洲精品国产蜜桃av| 亚洲国产欧美日韩在线播放| 欧美亚洲 丝袜 人妻 在线| 咕卡用的链子| 成年人免费黄色播放视频| 午夜久久久在线观看| 国产深夜福利视频在线观看| 国产黄频视频在线观看| 国产精品99久久99久久久不卡| 久久精品人人爽人人爽视色| 国产aⅴ精品一区二区三区波| 免费看a级黄色片| 亚洲av国产av综合av卡| 国产精品久久久久成人av| 久久久水蜜桃国产精品网| av网站在线播放免费| 成人国产一区最新在线观看| 国产av又大| 精品福利观看| 免费观看av网站的网址| 国产成人精品久久二区二区免费| 欧美日本中文国产一区发布| 黑人欧美特级aaaaaa片| 国产欧美日韩一区二区三| 成人国语在线视频| 欧美+亚洲+日韩+国产| 免费看十八禁软件| 精品福利观看| 久久99一区二区三区| 亚洲成人手机| 老汉色av国产亚洲站长工具| 最近最新中文字幕大全电影3 | 亚洲午夜精品一区,二区,三区| 久久久久久久大尺度免费视频| 亚洲五月色婷婷综合| 国产91精品成人一区二区三区 | 亚洲中文日韩欧美视频| 精品亚洲成国产av| 18禁美女被吸乳视频| 可以免费在线观看a视频的电影网站| 国产老妇伦熟女老妇高清| 1024香蕉在线观看| 日韩一卡2卡3卡4卡2021年| 我要看黄色一级片免费的| 国产免费av片在线观看野外av| 在线看a的网站| 久久ye,这里只有精品| 女人被躁到高潮嗷嗷叫费观| 亚洲av美国av| 波多野结衣一区麻豆| 久久 成人 亚洲| 国产欧美日韩一区二区三区在线| 久久中文看片网| 中文字幕另类日韩欧美亚洲嫩草| 国产高清激情床上av| 亚洲av电影在线进入| 两人在一起打扑克的视频| 欧美国产精品va在线观看不卡| 亚洲国产毛片av蜜桃av| 成年人免费黄色播放视频| 亚洲熟女精品中文字幕| 亚洲av成人一区二区三| 欧美精品高潮呻吟av久久| 男女免费视频国产| 亚洲欧洲日产国产| 亚洲欧美精品综合一区二区三区| 国产91精品成人一区二区三区 | 99精品欧美一区二区三区四区| 制服诱惑二区| 9191精品国产免费久久| 午夜福利视频在线观看免费| 久久精品成人免费网站| 亚洲午夜精品一区,二区,三区| 欧美日韩亚洲综合一区二区三区_| 在线观看免费高清a一片| 美女高潮喷水抽搐中文字幕| 最新美女视频免费是黄的| 搡老岳熟女国产| 精品久久久久久电影网| 老熟妇仑乱视频hdxx| 成年人黄色毛片网站| 一级a爱视频在线免费观看| 免费女性裸体啪啪无遮挡网站| 亚洲av成人一区二区三| 久久国产精品大桥未久av| 国产免费视频播放在线视频| www.999成人在线观看| 国产日韩一区二区三区精品不卡| 欧美老熟妇乱子伦牲交| 国产精品一区二区免费欧美| 深夜精品福利| 黑人欧美特级aaaaaa片| 黄片小视频在线播放| 午夜成年电影在线免费观看| 精品视频人人做人人爽| www.精华液| 国产淫语在线视频| 国产亚洲午夜精品一区二区久久| 少妇被粗大的猛进出69影院| 欧美大码av| 在线永久观看黄色视频| 国产片内射在线| 国产主播在线观看一区二区| 高清在线国产一区| 91麻豆精品激情在线观看国产 | 国产熟女午夜一区二区三区| 飞空精品影院首页| 亚洲av第一区精品v没综合| 黄片播放在线免费| 老司机深夜福利视频在线观看| 亚洲自偷自拍图片 自拍| 国产精品香港三级国产av潘金莲| 69av精品久久久久久 | 午夜精品国产一区二区电影| 日韩欧美免费精品| 色视频在线一区二区三区| av在线播放免费不卡| 一区在线观看完整版| 黄片播放在线免费| 久久精品熟女亚洲av麻豆精品| 日韩一卡2卡3卡4卡2021年| 老汉色∧v一级毛片| 99国产精品一区二区蜜桃av | 亚洲成人手机| 一本一本久久a久久精品综合妖精| 最新在线观看一区二区三区| 国产欧美日韩一区二区三区在线| 中亚洲国语对白在线视频| 久久精品亚洲熟妇少妇任你| 一二三四社区在线视频社区8| 午夜激情久久久久久久| 久久久久久久国产电影| 一级片免费观看大全| 男男h啪啪无遮挡| 少妇被粗大的猛进出69影院| 无人区码免费观看不卡 | 肉色欧美久久久久久久蜜桃| 后天国语完整版免费观看| 一区二区三区乱码不卡18| 精品乱码久久久久久99久播| 成人国产av品久久久| 91精品三级在线观看| av又黄又爽大尺度在线免费看| 免费在线观看影片大全网站| 国产福利在线免费观看视频| 午夜福利视频精品| 亚洲精品一二三| 久久精品国产99精品国产亚洲性色 | 欧美日韩亚洲国产一区二区在线观看 | 后天国语完整版免费观看| 免费观看a级毛片全部| av电影中文网址| 18禁国产床啪视频网站| e午夜精品久久久久久久| 精品国产亚洲在线| 精品福利永久在线观看| 50天的宝宝边吃奶边哭怎么回事| a级毛片在线看网站| 精品高清国产在线一区| 成年动漫av网址| 亚洲一卡2卡3卡4卡5卡精品中文| 色老头精品视频在线观看| 国产一区二区激情短视频| 欧美中文综合在线视频| 精品人妻1区二区| 超色免费av| 一本大道久久a久久精品| 国产精品久久久人人做人人爽| 老司机午夜十八禁免费视频| 麻豆乱淫一区二区| 免费观看人在逋| 啦啦啦在线免费观看视频4| 久久精品熟女亚洲av麻豆精品| 精品国产一区二区久久| 亚洲中文字幕日韩| 亚洲欧美一区二区三区黑人| 日本av手机在线免费观看| 成年动漫av网址| 狂野欧美激情性xxxx| 国产野战对白在线观看| 黄色片一级片一级黄色片| 动漫黄色视频在线观看| 国产精品 国内视频| 亚洲自偷自拍图片 自拍| 国产av精品麻豆| 精品少妇内射三级| 久久精品人人爽人人爽视色| 中文字幕高清在线视频| 美女高潮到喷水免费观看| xxxhd国产人妻xxx| 日韩欧美三级三区| av天堂久久9| 精品人妻在线不人妻| 亚洲综合色网址| 黄色怎么调成土黄色| 精品少妇黑人巨大在线播放| 国产日韩一区二区三区精品不卡| 久久精品aⅴ一区二区三区四区| 亚洲第一欧美日韩一区二区三区 | av视频免费观看在线观看| 国产男女内射视频| 欧美在线黄色| 大片电影免费在线观看免费| 国产精品影院久久| 亚洲伊人久久精品综合| 好男人电影高清在线观看| 国产熟女午夜一区二区三区| 精品一区二区三区视频在线观看免费 | 国产麻豆69| 欧美 日韩 精品 国产| 久久精品亚洲av国产电影网| 亚洲欧美激情在线| 亚洲精品中文字幕一二三四区 | 国产成人精品在线电影| 久久午夜综合久久蜜桃| 国产91精品成人一区二区三区 | 久久久欧美国产精品| 欧美国产精品一级二级三级| 天天影视国产精品| av片东京热男人的天堂| 欧美日韩亚洲高清精品| 最新的欧美精品一区二区| 成年人午夜在线观看视频| 成人亚洲精品一区在线观看| 久久99热这里只频精品6学生| 他把我摸到了高潮在线观看 | 波多野结衣av一区二区av| 一进一出抽搐动态| 天堂俺去俺来也www色官网| 欧美精品人与动牲交sv欧美| 夜夜骑夜夜射夜夜干| 日韩视频一区二区在线观看| 啦啦啦视频在线资源免费观看| 免费在线观看完整版高清| 久久久久精品国产欧美久久久| 99re在线观看精品视频| 一本色道久久久久久精品综合| 亚洲 国产 在线| 一区在线观看完整版| 国产精品久久久久久精品古装| 老鸭窝网址在线观看| 757午夜福利合集在线观看| 精品国产乱码久久久久久男人| 黄色毛片三级朝国网站| 久久精品人人爽人人爽视色| 咕卡用的链子| 性色av乱码一区二区三区2| 在线十欧美十亚洲十日本专区| 亚洲七黄色美女视频| 国产精品国产高清国产av | 久久亚洲精品不卡| 久久中文看片网| 中文字幕最新亚洲高清| kizo精华| 欧美国产精品一级二级三级| 免费黄频网站在线观看国产| 国产单亲对白刺激| 在线观看一区二区三区激情| 精品久久蜜臀av无| 波多野结衣av一区二区av| 无人区码免费观看不卡 | 精品福利永久在线观看| 99九九在线精品视频| 人妻 亚洲 视频| 老司机午夜福利在线观看视频 | 男女之事视频高清在线观看| 我要看黄色一级片免费的| 最近最新中文字幕大全免费视频| 99国产精品一区二区三区| 国产成人精品无人区| 色老头精品视频在线观看| 亚洲av欧美aⅴ国产| 一级a爱视频在线免费观看| 日韩人妻精品一区2区三区| 亚洲欧美精品综合一区二区三区| 免费看十八禁软件| 黄网站色视频无遮挡免费观看| 制服诱惑二区| 欧美日韩亚洲高清精品| 黄色片一级片一级黄色片| 国产深夜福利视频在线观看| 99热网站在线观看| 天天影视国产精品| 国产亚洲午夜精品一区二区久久| 午夜福利一区二区在线看| 成人18禁高潮啪啪吃奶动态图| 美女高潮喷水抽搐中文字幕| 一级毛片女人18水好多| 国产亚洲欧美在线一区二区| 欧美日韩国产mv在线观看视频| 国内毛片毛片毛片毛片毛片| 在线 av 中文字幕| av超薄肉色丝袜交足视频| 黄网站色视频无遮挡免费观看| 99香蕉大伊视频| 人人妻,人人澡人人爽秒播| 久久久久国产一级毛片高清牌| 男女无遮挡免费网站观看| 制服人妻中文乱码| 国产午夜精品久久久久久| av电影中文网址| 国产男女超爽视频在线观看| 久久久国产成人免费| 欧美 日韩 精品 国产| 日本一区二区免费在线视频| 女人被躁到高潮嗷嗷叫费观| bbb黄色大片| 免费看a级黄色片| 成人三级做爰电影| 精品人妻在线不人妻| 国产日韩一区二区三区精品不卡| 一本一本久久a久久精品综合妖精| 日日夜夜操网爽| 国产男女超爽视频在线观看| 热99国产精品久久久久久7| 亚洲九九香蕉| 欧美日韩av久久| 久久九九热精品免费| 狠狠精品人妻久久久久久综合| 亚洲成a人片在线一区二区| 亚洲国产毛片av蜜桃av| 亚洲精品国产一区二区精华液| 蜜桃在线观看..| 精品国内亚洲2022精品成人 | 午夜视频精品福利| 久久久久久亚洲精品国产蜜桃av| 在线观看一区二区三区激情| 高清在线国产一区| 中文字幕人妻丝袜一区二区| 亚洲av片天天在线观看| 亚洲av第一区精品v没综合| 在线观看66精品国产| 波多野结衣一区麻豆| 亚洲伊人色综图| 精品午夜福利视频在线观看一区 | 免费av中文字幕在线| 亚洲九九香蕉| 国产高清视频在线播放一区| 成人18禁在线播放| 黄频高清免费视频| 亚洲专区中文字幕在线| 黑人猛操日本美女一级片| 在线天堂中文资源库| 天天躁日日躁夜夜躁夜夜| 黑丝袜美女国产一区| 麻豆av在线久日| 热re99久久精品国产66热6| 亚洲人成电影免费在线| 日韩制服丝袜自拍偷拍| 精品午夜福利视频在线观看一区 |