欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

全球?qū)哟蔚匦文P烷_孔建模方法

文檔序號:6399861閱讀:246來源:國知局
專利名稱:全球?qū)哟蔚匦文P烷_孔建模方法
技術(shù)領(lǐng)域
本發(fā)明涉及工業(yè)控制網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體地指一種全球?qū)哟蔚匦文P烷_孔建模方法。
背景技術(shù)
三維數(shù)字地球風(fēng)靡全球,如Google Earth,深受廣大工程人員及GIS開發(fā)人員的喜愛。但其地圖內(nèi)的地形不能修改,無法在其上進(jìn)行道路路基、橋梁、隧道設(shè)計(jì)及大型建筑物、場地施工的設(shè)計(jì)。很顯然,基礎(chǔ)地形數(shù)據(jù)是廣泛共享給所有用戶的通用數(shù)據(jù),公共三維GIS平臺不能提供地形修改的功能除了存在技術(shù)上的困難外,更重要是的需要保護(hù)公有共享基礎(chǔ)數(shù)據(jù)不能因?yàn)閭€性化需要而得到破壞,還有一點(diǎn),既便是建立本地私有數(shù)據(jù),也不能在精度上通過地形數(shù)據(jù)調(diào)整實(shí)現(xiàn)精細(xì)化地形調(diào)整表達(dá)。一種可以考慮的地形重構(gòu)途徑是,通過將一定區(qū)域內(nèi)的地形屏蔽掉,形成一個地形孔,并使得孔外的地形無縫地與孔邊界縫合,而可以在孔內(nèi)部疊置同樣與孔邊界完全縫合的獨(dú)立工程模型,這樣就可以在不改變基礎(chǔ)地形數(shù)據(jù)的情形,高精度的實(shí)現(xiàn)地形的重構(gòu),而且可以保持工程模型的獨(dú)立性。設(shè)計(jì)或疊置表達(dá)工程模型是不存在技術(shù)問題的,但我們可以看到,無論是強(qiáng)大的Google Earth,還是專門面向全球工程表達(dá)的Skyline Globe,都沒有發(fā)布地形重構(gòu)等類似的地形應(yīng)用,關(guān)鍵的難題就是如何高效地在全球三維表達(dá)開出一個孔,是困擾人們多年的一個難題。構(gòu)成這一技術(shù)難點(diǎn)的原因有如下幾點(diǎn):1)大區(qū)域地形表達(dá)尤其是全球地形表達(dá),往往是海量地形數(shù)據(jù)的表達(dá),效率是致關(guān)重要的技術(shù)考慮因素,復(fù)雜的模型結(jié)構(gòu)或混合建模技術(shù)都可能會對地形表達(dá)與交互效率帶來致命的影響,這就是為什么有些能夠在小區(qū)域地形表達(dá)上實(shí)現(xiàn)的開孔技術(shù)難以移植到全球地形表達(dá)上的原因;2)大區(qū)域地形是動態(tài)的三維模型,要實(shí)時根據(jù)視點(diǎn)呈現(xiàn)不同的地形模型,本身的系統(tǒng)開銷就很大,如果處理過于復(fù)雜的開孔實(shí)現(xiàn),將使得處理難度相對靜態(tài)地形模型更加復(fù)雜,效率更會成級數(shù)下降;3)大區(qū)域地形為了實(shí)現(xiàn)漫游效果與效率的需要,通常都需要采用以地形塊為獨(dú)立表達(dá)單位的多層次分塊地形表達(dá),要處理這種分層、分塊的動態(tài)地形模型將會使得處理復(fù)雜度急劇上升;4)同樣為了保持大區(qū)域地形的效率,絕大部分地形塊的表達(dá)是以規(guī)則的網(wǎng)格建模方式來構(gòu)建地形模型的,它有一個致命的弱點(diǎn)就是不能實(shí)現(xiàn)精細(xì)化模型表達(dá),因而從模型性質(zhì)上來講它不可能實(shí)現(xiàn)非規(guī)則地形的表達(dá),它成為解決大區(qū)域地形重構(gòu)的致命難點(diǎn)問題。

發(fā)明內(nèi)容
本發(fā)明的目的就是要提供一種全球?qū)哟蔚匦文P烷_孔建模方法,該方法通過對地形塊中部分三角形的模型索引數(shù)據(jù)進(jìn)行剔除實(shí)現(xiàn)區(qū)域屏蔽,通過外圍邊界頂點(diǎn)進(jìn)行投射調(diào)整頂點(diǎn)數(shù)據(jù)實(shí)現(xiàn)獨(dú)立的塊內(nèi)孔邊縫合處理。以非常小的代價、在沒有改變模型性質(zhì)的情形下實(shí)現(xiàn)了地形的開孔建模。
為實(shí)現(xiàn)此目的,本發(fā)明所設(shè)計(jì)的一種全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于,該方法包括如下步驟:步驟1:根據(jù)給定的需要開孔的區(qū)域即重構(gòu)多邊形區(qū)域,判斷所有已加載的地形塊中每個地形塊是否與重構(gòu)多邊形區(qū)域存在交集,若不存在交集則不進(jìn)行處理,若存在交集則進(jìn)入步驟2 ;步驟2:將步驟I中判斷出來與重構(gòu)多邊形區(qū)域有交集的地形塊的模型頂點(diǎn)再次逐一進(jìn)行判中操作即判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi),對每個地形塊設(shè)置一個標(biāo)志數(shù)組記載該地形塊的模型頂點(diǎn)是不是在重構(gòu)多邊形區(qū)域內(nèi),如果地形塊的某個模型頂點(diǎn)處于重構(gòu)多邊形區(qū)域內(nèi),則將該模型頂點(diǎn)標(biāo)志設(shè)置為True,否則設(shè)置為False ;步驟3:依據(jù)步驟2得到的模型頂點(diǎn)是不是在重構(gòu)多邊形區(qū)域內(nèi)的標(biāo)志數(shù)組,對地形塊的每一個三角形子地形塊進(jìn)行判斷:只要三角形子地形塊有一個模型頂點(diǎn)的標(biāo)志為True,則從地形塊的索引數(shù)組中刪除對應(yīng)的三角形索引值,也就是相當(dāng)于從地形塊中剔除了該三角形子地形塊。 對所有三角形子地形塊處理后,將得到的地形塊索引數(shù)組重新構(gòu)建三角形索引緩沖區(qū),這樣可以得到一個被粗略屏蔽的帶孔地形塊;步驟4:為上述粗略屏蔽的帶孔地形塊分配一個頂點(diǎn)數(shù)組用于記載外圍邊界頂點(diǎn)數(shù)據(jù),并提取外圍邊界線頂點(diǎn);步驟5:對上述步驟中所有提取的外圍邊界頂點(diǎn),逐一將其投射到給定多邊形的對應(yīng)的邊線上,用投射點(diǎn)的位置來置換上述外圍邊界線頂點(diǎn)的位置,這樣相當(dāng)于將這些邊界線上的頂點(diǎn)隱含地挪到開孔區(qū)域邊線上;此多邊形通常與重構(gòu)多邊形區(qū)域一致,但允許其與重構(gòu)多邊形區(qū)域不一致以得到更豐富的重構(gòu)應(yīng)用需求;步驟6:將上述所有包括外圍邊界點(diǎn)在內(nèi)的模型頂點(diǎn)的數(shù)據(jù)重新寫回到頂點(diǎn)緩沖區(qū),以便地形模型能夠?qū)⒅貥?gòu)后的模型顯示出來,屏蔽重構(gòu)多邊形區(qū)域內(nèi)的頂點(diǎn)及模型,即完成全球?qū)哟尉W(wǎng)格地形模型開孔的建模操作。所述步驟4中,所述外圍邊界線頂點(diǎn)的提取步驟需要對每一個刪除的三角形子地形塊的三個頂點(diǎn)分別進(jìn)行判斷;如果三角形子地形塊的三個頂點(diǎn)中有一個頂點(diǎn)在重構(gòu)多邊形區(qū)域內(nèi),對另外兩個頂點(diǎn)加入到邊界頂點(diǎn)數(shù)組中;如果三角形子地形塊的三個頂點(diǎn)中有兩個頂點(diǎn)在重構(gòu)多邊形區(qū)域內(nèi),對另外一個頂點(diǎn)加入到邊界頂點(diǎn)數(shù)組中;如果三角形子地形塊的三個頂點(diǎn)均在重構(gòu)多邊形區(qū)域內(nèi),則不加入邊界頂點(diǎn)數(shù)組,已經(jīng)加入到邊界數(shù)組的頂點(diǎn)不再重復(fù)加入。所述步驟2中,當(dāng)需要重構(gòu)的區(qū)域有多個時,通過“或”邏輯運(yùn)算對同一頂點(diǎn)的多次判中操作進(jìn)行綜合后繼續(xù)第3步的步驟。所述步驟6中,保留重構(gòu)多邊形區(qū)域內(nèi)的頂點(diǎn),不將其刪除,以免由于破壞掉三角形索引數(shù)據(jù)的組織,而導(dǎo)致的需要對整個地形進(jìn)行重新的復(fù)雜建模。所述步驟2中,判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi),并以此設(shè)置標(biāo)志數(shù)組的具體的方法為:將重構(gòu)多邊形區(qū)域以填充方式繪制到位圖上,根據(jù)像素填充色設(shè)置相應(yīng)模型頂點(diǎn)的是不是在重構(gòu)多邊形區(qū)域內(nèi)的True值或False值,具體步驟如下:
步驟201:根據(jù)與重構(gòu)多邊形區(qū)域有交集的地形塊的模型頂點(diǎn)行列數(shù)量創(chuàng)建一幅等幅大小的位圖,以保障每一個像素與一個模型頂點(diǎn)對應(yīng);步驟202:對重構(gòu)多邊形區(qū)域向統(tǒng)一的像素坐標(biāo)空間轉(zhuǎn)換,并以地形塊確立的像素偏移量繪制到位圖上,并以一種填充色填充重構(gòu)多邊形區(qū)域;步驟203:逐一檢索位圖的像素顏色,將顏色為填充色的像素行列號對應(yīng)的模型頂點(diǎn)標(biāo)志數(shù)組值設(shè)為True,否則設(shè)為False ;所述步驟4中,通過在步驟202所得位圖的基礎(chǔ)上進(jìn)行多個緩沖頂點(diǎn)的外圍邊界提取,要得到η個頂點(diǎn)緩沖寬度的外圍邊界具體的操作步驟如下,其中η>=1 ;步驟401:對步驟202得到了位圖,以2η+1個像素寬畫筆進(jìn)行轉(zhuǎn)換后的多邊形繪制,著一種邊界色;步驟402:再以2η_1個像素寬畫筆進(jìn)行轉(zhuǎn)換后的多邊形繪制,以填充色進(jìn)行繪制;步驟403:逐一檢索位圖的像素顏色,將顏色為邊界色的像素行列號對應(yīng)的頂點(diǎn)加入到外圍邊界頂點(diǎn)數(shù)組中。所述步驟I中,通過判斷每個地形塊的四個頂點(diǎn)和一個中點(diǎn)是否與重構(gòu)多邊形區(qū)域存在交集,來判斷地形塊與重構(gòu)多邊形區(qū)域是否存在交集。所述步驟2中,通過幾何判中方法判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi)。本發(fā)明通過對頂點(diǎn)的判斷剔除孔內(nèi)關(guān)聯(lián)模型索引數(shù)據(jù),實(shí)現(xiàn)對孔內(nèi)三角形的屏蔽;通過保持頂點(diǎn)緩沖器區(qū)規(guī)模與數(shù)據(jù),避免重新地形塊建模;通過提取孔外邊緣邊界頂點(diǎn),并對邊界頂點(diǎn)向孔邊線上進(jìn)行幾何投射實(shí)現(xiàn)頂點(diǎn)位置的調(diào)整;通過上述步驟更新頂點(diǎn)緩沖器數(shù)據(jù)與索引緩沖區(qū)數(shù)據(jù)實(shí)現(xiàn)不規(guī)則地形塊完全規(guī)則格網(wǎng)模式下的邏輯組織表達(dá),實(shí)現(xiàn)了在不改變規(guī)則地形表達(dá)方式與結(jié)構(gòu)的情形下,不明顯增加系統(tǒng)計(jì)算開銷地實(shí)現(xiàn)模型重構(gòu)。本發(fā)明在不改變地形模型結(jié)構(gòu)性質(zhì)與不影響場景調(diào)度模型邏輯組織的情況下,實(shí)現(xiàn)區(qū)域開孔不規(guī)則地形塊的一致高效表達(dá),提供了一種高效可行的大區(qū)域或全球地形的多層次多分辨率三維地形表達(dá)中提供開孔重構(gòu)的方法。


圖1本發(fā)明中多個地形塊上區(qū)域開孔示意圖;圖2發(fā)明中地形塊孔內(nèi)、外頂點(diǎn)判中分布示意圖;圖3發(fā)明中孔外邊緣頂點(diǎn)提取示意圖;圖4發(fā)明中邊界點(diǎn)向孔邊上投射調(diào)整示意圖;圖5發(fā)明中經(jīng)過開孔處理后單塊不規(guī)則表達(dá)示意圖;圖6發(fā)明中開孔重構(gòu)建模整體效果圖。
具體實(shí)施例方式以下結(jié)合附圖和具體實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)說明:眾所周知全球地形是動態(tài)的模型表達(dá),隨視點(diǎn)變化地形塊在不斷地創(chuàng)建與銷毀,地形開孔要保障漫游的流暢,效率是至關(guān)重要的控制因素,因此地形塊內(nèi)建模采用網(wǎng)格模型既能保障效率,也能避免與復(fù)雜三角網(wǎng)的整合開發(fā);全球地形模型是多層次的,在同一個場景中,會存在不同節(jié)點(diǎn)層的以不同尺度表達(dá)的地形塊,地形塊的表達(dá)是獨(dú)立的,接邊是通過采點(diǎn)數(shù)據(jù)一致來實(shí)現(xiàn)無縫的,不存在塊的接邊處理機(jī)制,因此地形開孔的實(shí)現(xiàn)要保持這種塊建模與表達(dá)獨(dú)立性為佳。基于上述兩個特點(diǎn),對全球地形的開孔實(shí)現(xiàn)最佳途徑還是采用塊內(nèi)的規(guī)則格網(wǎng)模型進(jìn)行表達(dá)為佳。但規(guī)則格網(wǎng)有一個顯著的特點(diǎn)就是無法精確地描述一個非規(guī)則實(shí)體的邊緣,其實(shí),對計(jì)算機(jī)的算法實(shí)現(xiàn)而言,規(guī)則格網(wǎng)最重要是的實(shí)現(xiàn)算法與組織存儲上的邏輯規(guī)則性,即邏輯結(jié)構(gòu)上的規(guī)則性,但呈現(xiàn)出來的是不是規(guī)則的正正方方的地形,并不是由這種組織邏輯的規(guī)則性來決定的,而是數(shù)據(jù),也就是說,如果我們保持了這種組織結(jié)構(gòu)的邏輯規(guī)則性,而僅僅修改的規(guī)則格網(wǎng)頂點(diǎn)的數(shù)據(jù),則同樣可以呈現(xiàn)各種不規(guī)則的模型,正是深入理解到了這一點(diǎn),對我們提出投射校正開孔技術(shù)提供了關(guān)鍵性的思維啟示,通過對地形頂點(diǎn)的屏蔽、投射校正等手段,實(shí)現(xiàn)了在全球規(guī)則格網(wǎng)地形上的最簡化開孔技術(shù)實(shí)現(xiàn)。具體來說本發(fā)明公開的全球?qū)哟蔚匦文P烷_孔建模方法,該方法包括如下步驟:步驟1:根據(jù)給定的需要開孔的區(qū)域即重構(gòu)多邊形區(qū)域,如圖1所示,判斷所有已加載的地形塊中每個地形塊是否與重構(gòu)多邊形區(qū)域存在交集,若不存在交集則不進(jìn)行處理,若存在交集則進(jìn)入步驟2 ;步驟2:將步驟I中判斷出來與重構(gòu)多邊形區(qū)域有交集的地形塊的模型頂點(diǎn)再次逐一進(jìn)行判中操作即判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi),對每個地形塊設(shè)置一個標(biāo)志數(shù)組記載該地形塊的模型頂點(diǎn)是不是在重構(gòu)多邊形區(qū)域內(nèi),如果地形塊的某個模型頂點(diǎn)處于重構(gòu)多邊形區(qū)域內(nèi),則將該模型頂點(diǎn)標(biāo)志設(shè)置為True,否則設(shè)置為False ;這樣可以呈現(xiàn)所有頂點(diǎn)的分布情況,如圖2中圓點(diǎn)網(wǎng)格所示。步驟3:依據(jù)步驟2得到的模型頂點(diǎn)是不是在重構(gòu)多邊形區(qū)域內(nèi)的標(biāo)志數(shù)組,對地形塊的每一個三角形子地形塊進(jìn)行判斷:只要三角形子地形塊有一個模型頂點(diǎn)的標(biāo)志為True,則從地形塊的索引數(shù)組中刪除對應(yīng)的三角形索引值,也就是相當(dāng)于從地形塊中剔除了該三角形子地形塊。對所有三角形子地形塊處理后,將得到的地形塊索引數(shù)組重新構(gòu)建三角形索引緩沖區(qū),這樣可以得到一個被粗略屏蔽的帶孔地形塊,如圖3所示;步驟4:為上述粗略屏蔽的帶孔地形塊分配一個頂點(diǎn)數(shù)組用于記載外圍邊界頂點(diǎn)數(shù)據(jù),并提取外圍邊界線頂點(diǎn);該外圍邊界線頂點(diǎn)在孔外,但不一定跟孔完全重合,如圖2中小黑方框點(diǎn)組成的連線;步驟5:對上述步驟中所有提取的外圍邊界頂點(diǎn),逐一將其投射到給定多邊形的對應(yīng)的邊線上,如圖4所示,用投射點(diǎn)的位置來置換上述外圍邊界線頂點(diǎn)的位置,這樣相當(dāng)于將這些邊界線上的頂點(diǎn)隱含地挪到開孔區(qū)域邊線上;此多邊形通常與重構(gòu)多邊形區(qū)域一致,但允許其與重構(gòu)多邊形區(qū)域不一致以得到更豐富的重構(gòu)應(yīng)用需求;上述投射的幾何意義即點(diǎn)到邊界線段的投射,其投射點(diǎn)的位置可以是邊界線段的端點(diǎn)或垂足;步驟6:將上述所有包括外圍邊界點(diǎn)在內(nèi)的模型頂點(diǎn)的數(shù)據(jù)重新寫回到頂點(diǎn)緩沖區(qū),以便地形模型能夠?qū)⒅貥?gòu)后的模型顯示出來,屏蔽重構(gòu)多邊形區(qū)域內(nèi)的頂點(diǎn)及模型,即完成全球?qū)哟尉W(wǎng)格地形模型開孔的建模操作。上述技術(shù)方案的步驟4中,所述外圍邊界線頂點(diǎn)的提取步驟需要對每一個刪除的三角形子地形塊的三個頂點(diǎn)分別進(jìn)行判斷;如果三角形子地形塊的三個頂點(diǎn)中有一個頂點(diǎn)在重構(gòu)多邊形區(qū)域內(nèi),對另外兩個頂點(diǎn)加入到邊界頂點(diǎn)數(shù)組中;如果三角形子地形塊的三個頂點(diǎn)中有兩個頂點(diǎn)在重構(gòu)多邊形區(qū)域內(nèi),對另外一個頂點(diǎn)加入到邊界頂點(diǎn)數(shù)組中(如圖3中ABC三角形區(qū)域中的關(guān)聯(lián)頂點(diǎn)C);如果三角形子地形塊的三個頂點(diǎn)均在重構(gòu)多邊形區(qū)域內(nèi),則不加入邊界頂點(diǎn)數(shù)組,已經(jīng)加入到邊界數(shù)組的頂點(diǎn)不再重復(fù)加入。上述技術(shù)方案的步驟2中,當(dāng)需要重構(gòu)的區(qū)域有多個時,通過“或”邏輯運(yùn)算對同一頂點(diǎn)的多次判中操作進(jìn)行綜合后繼續(xù)第3步的步驟。上述技術(shù)方案的步驟6中,保留重構(gòu)多邊形區(qū)域內(nèi)的頂點(diǎn),不將其刪除,以免由于破壞掉三角形索引數(shù)據(jù)的組織,而導(dǎo)致的需要對整個地形進(jìn)行重新的復(fù)雜建模。上述技術(shù)方案的步驟2中,判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi),并以此設(shè)置標(biāo)志數(shù)組的具體的方法為:將重構(gòu)多邊形區(qū)域以填充方式繪制到位圖上,根據(jù)像素填充色設(shè)置相應(yīng)模型頂點(diǎn)的是不是在重構(gòu)多邊形區(qū)域內(nèi)的True值或False值,具體步驟如下:步驟201:根據(jù)與重構(gòu)多邊形區(qū)域有交集的地形塊的模型頂點(diǎn)行列數(shù)量創(chuàng)建一幅等幅大小的位圖,以保障每一個像素與一個模型頂點(diǎn)對應(yīng);步驟202:對重構(gòu)多邊形區(qū)域向統(tǒng)一的像素坐標(biāo)空間轉(zhuǎn)換,并以地形塊確立的像素偏移量繪制到位圖上,并以一種填充色填充重構(gòu)多邊形區(qū)域;步驟203:逐一檢索位圖的像素顏色,將顏色為填充色的像素行列號對應(yīng)的模型頂點(diǎn)標(biāo)志數(shù)組值設(shè)為True,否則設(shè)為False ;上述技術(shù)方案的步驟4中,還可以通過在步驟202所得位圖的基礎(chǔ)上進(jìn)行多個緩沖頂點(diǎn)的外圍邊界提取,要得到η個頂點(diǎn)緩沖寬度的外圍邊界具體的操作步驟如下,其中η>=1 ;步驟401:對步驟202得到了位圖,以2η+1個像素寬畫筆進(jìn)行轉(zhuǎn)換后的多邊形繪制,著一種邊界色;步驟402:再以2η_1個像素寬畫筆進(jìn)行轉(zhuǎn)換后的多邊形繪制,以填充色進(jìn)行繪制;步驟403:逐一檢索位圖的像素顏色,將顏色為邊界色的像素行列號對應(yīng)的頂點(diǎn)加入到外圍邊界頂點(diǎn)數(shù)組中。上述技術(shù)方案的步驟I中,通過判斷每個地形塊的四個頂點(diǎn)和一個中點(diǎn)是否與重構(gòu)多邊形區(qū)域存在交集,來判斷地形塊與重構(gòu)多邊形區(qū)域是否存在交集。上述技術(shù)方案的步驟2中,還可以通過幾何判中方法判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi)。上述技術(shù)方案的步驟I中,對全球地形的挖孔處理都僅限于地形塊內(nèi)部實(shí)現(xiàn),所以首先要判斷重整區(qū)域落在哪些地形塊上,直觀的做法就是對當(dāng)前渲染的葉子節(jié)點(diǎn)地形塊或渲染隊(duì)列中的地形塊進(jìn)行逐一判斷,這里可以通過四個邊角頂點(diǎn)加地形塊中心頂點(diǎn)進(jìn)行五點(diǎn)多邊形判中法來確立地形塊是不是與重構(gòu)多邊形區(qū)域有交集,對存在交集的地形塊,無論是處于哪一層的地形塊,均可按照如下一致的處理辦法進(jìn)行處理。
本發(fā)明中重構(gòu)頂點(diǎn)緩沖區(qū)后的地形表達(dá)模型如圖5所示,它就像是將一個皮球的邊界進(jìn)行牽扯而實(shí)現(xiàn)邊界的光滑與無縫表達(dá)。這樣在表現(xiàn)上看起來不像規(guī)則格網(wǎng)的處理方式,其所有環(huán)節(jié)的實(shí)施與組織模式都完全是規(guī)則格網(wǎng)的表達(dá),所有對模型的調(diào)整僅限于刪除一些三角形索引并修改部分頂點(diǎn)的坐標(biāo)位置。因而它最大的優(yōu)點(diǎn)是處理輕量級的調(diào)整,非常適合于海量的大區(qū)域全球地形表達(dá)中;另一個優(yōu)點(diǎn)是所有的處理完全控制在地形塊內(nèi)進(jìn)行,多個地形塊及邊界地形塊在經(jīng)過一致化處理后,無論是不是同一層級,均能形成一個或多個完整的地形孔狀模型,如圖6所示。本說明書未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。
權(quán)利要求
1.一種全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于,該方法包括如下步驟: 步驟1:根據(jù)給定的需要開孔的區(qū)域即重構(gòu)多邊形區(qū)域,判斷所有已加載的地形塊中每個地形塊是否與重構(gòu)多邊形區(qū)域存在交集,若不存在交集則不進(jìn)行處理,若存在交集則進(jìn)入步驟2 ; 步驟2:將步驟I中判斷出來與重構(gòu)多邊形區(qū)域有交集的地形塊的模型頂點(diǎn)再次逐一進(jìn)行判中操作即判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi),對每個地形塊設(shè)置一個標(biāo)志數(shù)組記載該地形塊的模型頂點(diǎn)是不是在重構(gòu)多邊形區(qū)域內(nèi),如果地形塊的某個模型頂點(diǎn)處于重構(gòu)多邊形區(qū)域內(nèi),則將該模型頂點(diǎn)標(biāo)志設(shè)置為True,否則設(shè)置為False ; 步驟3:依據(jù)步驟2得到的模型頂點(diǎn)是不是在重構(gòu)多邊形區(qū)域內(nèi)的標(biāo)志數(shù)組,對地形塊的每一個三角形子地形塊進(jìn)行判斷:只要三角形子地形塊有一個模型頂點(diǎn)的標(biāo)志為True,則從地形塊的索引數(shù)組中刪除對應(yīng)的三角形索引值,也就是相當(dāng)于從地形塊中剔除了該三角形子地形塊; 對所有三角形子地形塊處理后,將得到的地形塊索引數(shù)組重新構(gòu)建三角形索引緩沖區(qū),這樣可以得到一個被粗略屏蔽的帶孔地形塊; 步驟4:為上述粗略屏蔽的帶孔地形塊分配一個頂點(diǎn)數(shù)組用于記載外圍邊界頂點(diǎn)數(shù)據(jù),并提取外圍邊界線頂點(diǎn); 步驟5:對上述步驟中所有提取的外圍邊界頂點(diǎn),逐一將其投射到給定多邊形的對應(yīng)的邊線上,用投射點(diǎn)的位置來置換上述外圍邊界線頂點(diǎn)的位置,這樣相當(dāng)于將這些邊界線上的頂點(diǎn)隱含地挪到 開孔區(qū)域邊線上;此多邊形通常與重構(gòu)多邊形區(qū)域一致,但允許其與重構(gòu)多邊形區(qū)域不一致以得到更豐富的重構(gòu)應(yīng)用需求; 步驟6:將上述所有包括外圍邊界點(diǎn)在內(nèi)的模型頂點(diǎn)的數(shù)據(jù)重新寫回到頂點(diǎn)緩沖區(qū),以便地形模型能夠?qū)⒅貥?gòu)后的模型顯示出來,屏蔽重構(gòu)多邊形區(qū)域內(nèi)的頂點(diǎn)及模型,即完成全球?qū)哟尉W(wǎng)格地形模型開孔的建模操作。
2.根據(jù)權(quán)利要求1所述的全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于:所述步驟4中,所述外圍邊界線頂點(diǎn)的提取步驟需要對每一個刪除的三角形子地形塊的三個頂點(diǎn)分別進(jìn)行判斷; 如果三角形子地形塊的三個頂點(diǎn)中有一個頂點(diǎn)在重構(gòu)多邊形區(qū)域內(nèi),對另外兩個頂點(diǎn)加入到邊界頂點(diǎn)數(shù)組中; 如果三角形子地形塊的三個頂點(diǎn)中有兩個頂點(diǎn)在重構(gòu)多邊形區(qū)域內(nèi),對另外一個頂點(diǎn)加入到邊界頂點(diǎn)數(shù)組中; 如果三角形子地形塊的三個頂點(diǎn)均在重構(gòu)多邊形區(qū)域內(nèi),則不加入邊界頂點(diǎn)數(shù)組,已經(jīng)加入到邊界數(shù)組的頂點(diǎn)不再重復(fù)加入。
3.根據(jù)權(quán)利要求1所述的全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于:所述步驟2中,當(dāng)需要重構(gòu)的區(qū)域有多個時,通過“或”邏輯運(yùn)算對同一頂點(diǎn)的多次判中操作進(jìn)行綜合后繼續(xù)第3步的步驟。
4.根據(jù)權(quán)利要求1所述的全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于:所述步驟6中,保留重構(gòu)多邊形區(qū)域內(nèi)的頂點(diǎn),不將其刪除,以免由于破壞掉三角形索引數(shù)據(jù)的組織,而導(dǎo)致的需要對整個地形進(jìn)行重新的復(fù)雜建模。
5.根據(jù)權(quán)利要求1所述的全球?qū)哟尉W(wǎng)格地形模型開孔建模方法,其特征在于:所述步驟2中,判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi),并以此設(shè)置標(biāo)志數(shù)組的具體的方法為:將重構(gòu)多邊形區(qū)域以填充方式繪制到位圖上,根據(jù)像素填充色設(shè)置相應(yīng)模型頂點(diǎn)的是不是在重構(gòu)多邊形區(qū)域內(nèi)的True值或False值,具體步驟如下: 步驟201:根據(jù)與重構(gòu)多邊形區(qū)域有交集的地形塊的模型頂點(diǎn)行列數(shù)量創(chuàng)建一幅等幅大小的位圖,以保障每一個像素與一個模型頂點(diǎn)對應(yīng); 步驟202:對重構(gòu)多邊形區(qū)域向統(tǒng)一的像素坐標(biāo)空間轉(zhuǎn)換,并以地形塊確立的像素偏移量繪制到位圖上,并以一種填充色填充重構(gòu)多邊形區(qū)域; 步驟203:逐一檢索位圖的像素顏色,將顏色為填充色的像素行列號對應(yīng)的模型頂點(diǎn)標(biāo)志數(shù)組值設(shè)為True,否則設(shè)為False。
6.根據(jù)權(quán)利要求1或5所述的全球?qū)哟尉W(wǎng)格地形模型開孔建模方法,其特征在于:所述步驟4中,通過在步驟202所得位圖的基礎(chǔ)上進(jìn)行多個緩沖頂點(diǎn)的外圍邊界提取,要得到η個頂點(diǎn)緩沖寬度的外圍邊界具體的操作步驟如下,其中η>=1 ; 步驟401:對步驟202得到了位圖,以2η+1個像素寬畫筆進(jìn)行轉(zhuǎn)換后的多邊形繪制,著一種邊界色; 步驟402:再以2η-1個像素寬畫筆進(jìn)行轉(zhuǎn)換后的多邊形繪制,以填充色進(jìn)行繪制; 步驟403:逐一檢索位圖的像素顏色,將顏色為邊界色的像素行列號對應(yīng)的頂點(diǎn)加入到外圍邊界頂點(diǎn)數(shù)組中。
7.根據(jù)權(quán)利要求1所述的全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于:所述步驟I中,通過判斷每個地形塊的四個頂 點(diǎn)和一個中點(diǎn)是否與重構(gòu)多邊形區(qū)域存在交集,來判斷地形塊與重構(gòu)多邊形區(qū)域是否存在交集。
8.根據(jù)權(quán)利要求1所述的全球?qū)哟蔚匦文P烷_孔建模方法,其特征在于:所述步驟2中,通過幾何判中方法判斷上述模型頂點(diǎn)是否在重構(gòu)多邊形區(qū)域內(nèi)。
全文摘要
本發(fā)明所設(shè)計(jì)的一種全球?qū)哟蔚匦文P烷_孔建模方法,該方法包括如下步驟重構(gòu)地形邊界生成與地形塊頂點(diǎn)交集判斷;逐一判斷覆蓋地形塊的覆蓋頂點(diǎn),并提取外圍邊界點(diǎn);刪去孔內(nèi)三角形索引并提取區(qū)域邊界;邊界點(diǎn)進(jìn)行投射修正;更新頂點(diǎn)緩沖區(qū)實(shí)現(xiàn)非規(guī)則地形塊的表達(dá)。本發(fā)明在不改變地形模型結(jié)構(gòu)性質(zhì)與不影響場景調(diào)度模型邏輯組織的情況下,實(shí)現(xiàn)區(qū)域開孔不規(guī)則地形塊的一致高效表達(dá),提供了一種高效可行的大區(qū)域或全球地形的多層次多分辨率三維地形表達(dá)中提供開孔重構(gòu)的方法。
文檔編號G06T17/05GK103093500SQ20131006530
公開日2013年5月8日 申請日期2013年2月28日 優(yōu)先權(quán)日2013年2月28日
發(fā)明者韓元利, 鄧振林, 喻文球, 黃仁波, 朱江 申請人:中鐵第四勘察設(shè)計(jì)院集團(tuán)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
衡山县| 五华县| 白朗县| 江油市| 沅江市| 峡江县| 浪卡子县| 惠水县| 宜昌市| 德江县| 思茅市| 屏东县| 醴陵市| 新密市| 沙洋县| 安庆市| 庆城县| 得荣县| 资中县| 微博| 长岭县| 高阳县| 威远县| 延边| 兴业县| 睢宁县| 峡江县| 丹阳市| 遵义市| 寻甸| 麻阳| 广元市| 友谊县| 临江市| 滕州市| 兴仁县| 玉树县| 林口县| 新乡市| 鄂伦春自治旗| 大荔县|