本發(fā)明涉及三維模型構(gòu)建技術(shù)領(lǐng)域,特別涉及一種可以有效的解決基于地理信息中的地下管網(wǎng)數(shù)據(jù)的二、三維一體化管理,空間數(shù)據(jù)組織調(diào)度、三維管網(wǎng)自動(dòng)構(gòu)建與渲染等技術(shù)問(wèn)題。通過(guò)利用二維管線數(shù)據(jù)自動(dòng)創(chuàng)建三維模型,提升了二、三維一體化的管理水平,大大減少了三維管線數(shù)據(jù)維護(hù)的工作量,提高了管線數(shù)據(jù)的顯示效果。通過(guò)對(duì)地下管網(wǎng)中的管點(diǎn)和管線采用動(dòng)態(tài)調(diào)度方式,有效利用設(shè)備內(nèi)存,支持海量管線數(shù)據(jù)的加載,提高數(shù)據(jù)加載速度;采用分頁(yè)索引機(jī)制,快速進(jìn)行管線數(shù)據(jù)的調(diào)度與顯示,提高了對(duì)三維場(chǎng)景中的管網(wǎng)信息的訪問(wèn)效率,提升了海量地下綜合管網(wǎng)的統(tǒng)一展示、管理和分析水平的一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法。
背景技術(shù):
城市地下空間是一個(gè)巨大而豐富的空間資源,城市地下空間可開發(fā)的資源量為可供開發(fā)的面積、合理開發(fā)深度與適當(dāng)?shù)目衫孟禂?shù)之積?!吨袊?guó)地下空間行業(yè)發(fā)展前景與投資戰(zhàn)略規(guī)劃分析前瞻》顯示,2012年我國(guó)城市建設(shè)用地總面積為32.28萬(wàn)公頃,按照40%的可開發(fā)系數(shù)和30米的開發(fā)深度計(jì)算,可供合理開發(fā)的地下空間資源量就達(dá)到3873.60億立方米。這是一筆很可觀而又豐富的資源,若得到合理開發(fā),那么將對(duì)擴(kuò)大城市空間、實(shí)現(xiàn)城市集約化發(fā)展具有重要的意義。
隨著我國(guó)一線城市地下空間的開發(fā)利用,地下淺層部分將會(huì)利用完畢,隨著深層開挖技術(shù)和裝備的逐步完善,為了綜合利用地下空間資源,地下空間開發(fā)將逐步向深層發(fā)展。在地下空間深層化的同時(shí),各空間層面分化趨勢(shì)越來(lái)越強(qiáng)。這種分層面的地下空間,以人及為其服務(wù)的功能區(qū)為中心,人、車分流,市政管線、污水和垃圾的處理分置于不同的層次,各種地下交通也分層設(shè)置,以減少相互干擾,保證了地下空間利用的充分性和完整性。
開發(fā)地下空間是21世紀(jì)結(jié)構(gòu)工程的重要發(fā)展趨勢(shì)。就目前而言,開發(fā)城市地下空間可應(yīng)用于:
1、交通設(shè)施:城市地下通道、城市地鐵、隧道;
2、商業(yè)設(shè)施:地下商城、水下游樂(lè)館;
3、市政公益管線設(shè)施:提高城市道路利用、保護(hù)地下設(shè)施穩(wěn)定運(yùn)轉(zhuǎn)、為以后添加設(shè)施提供預(yù)留空間;
4、城市綜合防災(zāi)建設(shè):人民防空、抵御自然災(zāi)害等。
由此可見(jiàn)地下空間的利用對(duì)改善地面環(huán)境起著重要作用。在發(fā)展地下交通、降低城市大氣污染的同時(shí),還應(yīng)提倡建設(shè)城市地下市政管線公用隧道,將自來(lái)水、排污管、供熱管、電纜和通信線路納入其中,可縮短路線長(zhǎng)度達(dá)30%,還易于檢查和修理,不影響地面土地的使用。有條件的城市還可發(fā)展地下垃圾處理系統(tǒng),消除垃圾“圍城”現(xiàn)象。
隨著社會(huì)的發(fā)展和當(dāng)前城市化水平的不斷提高,基礎(chǔ)建設(shè)發(fā)展迅猛,地下管網(wǎng)體系越來(lái)越大,管理的復(fù)雜程度也在逐年增加。地下管網(wǎng)也在原有基礎(chǔ)上發(fā)生著變化:除原來(lái)的給排水網(wǎng)、電網(wǎng)、熱力網(wǎng)、通訊線路外,增加了天然氣管網(wǎng)、互聯(lián)網(wǎng)等,地下管網(wǎng)變得越來(lái)越復(fù)雜;舊管網(wǎng)的更新,新管網(wǎng)的設(shè)計(jì)規(guī)劃,這些都需要完善、詳細(xì)的地下管網(wǎng)的各種信息;已形成的大量管網(wǎng)資料需要及時(shí)處理;而傳統(tǒng)的手工制圖,靠人工記憶的管理和人工統(tǒng)計(jì)、分析的手工管理方式效率低下,則很難適應(yīng)這種快速發(fā)展的海量數(shù)據(jù)的要求,造成大量浪費(fèi)并阻礙了維護(hù)效率和服務(wù)水平的進(jìn)一步提高。而且由于基礎(chǔ)建設(shè)的猛增,缺乏對(duì)地下管網(wǎng)的有效管理,形成了“城市管網(wǎng)的拉鏈”,造成了重復(fù)建設(shè)和資源浪費(fèi)。在施工中,由于不了解地下管網(wǎng)的情況,盲目開工,造成燃?xì)庑孤?、挖斷水管、通訊中斷等破壞地下管網(wǎng)的事件時(shí)有發(fā)生,使經(jīng)濟(jì)建設(shè)和居民生活受到嚴(yán)重影響,并埋下不安全的隱患,因此加強(qiáng)對(duì)地下管網(wǎng)中的綜合管線數(shù)據(jù)二、三維一體化組織與構(gòu)建技術(shù)十分重要。
但是,現(xiàn)有的管網(wǎng)采用二維形式進(jìn)行顯示時(shí),只有懂得相關(guān)技術(shù)的專業(yè)人員才能流利審閱,給普通大眾帶來(lái)審批的麻煩。而采用三維形式進(jìn)行顯示時(shí)主要通過(guò)對(duì)管網(wǎng)和管網(wǎng)附屬設(shè)施進(jìn)行三維符號(hào)化,使之更加直觀地顯示管網(wǎng)的連接和交叉情況。通過(guò)三維建模軟件進(jìn)行管網(wǎng)的三維建模,這種建模方法首先需要計(jì)算機(jī)輔助設(shè)計(jì)軟件中導(dǎo)入管網(wǎng)實(shí)體的中心軸線,然后運(yùn)用人機(jī)交互技術(shù)在三維軟件中的點(diǎn)和線的三維渲染方法對(duì)管線生成三維模型,并對(duì)管線接口處做相應(yīng)的處理,這種方式的不足之處在于管線要素的精確定位不強(qiáng),需要花費(fèi)大量的人工干預(yù),建模速度較慢。不能方便查詢管線要素的空間信息和屬性信息。
同時(shí),由于管網(wǎng)數(shù)據(jù)的來(lái)源不同、采集的方式不同、不同尺度、不同語(yǔ)義、不同數(shù)據(jù)質(zhì)量、不同格式、不同坐標(biāo)帶來(lái)的影響,現(xiàn)有研究往往注重于數(shù)據(jù)格式的轉(zhuǎn)換。因此,缺乏對(duì)地下管網(wǎng)統(tǒng)一的數(shù)據(jù)組織與管理,統(tǒng)一的表示模型,難以通過(guò)數(shù)據(jù)轉(zhuǎn)換得到完整的信息。在對(duì)數(shù)據(jù)進(jìn)行預(yù)處理的基礎(chǔ)上,采用數(shù)據(jù)挖掘方法,通過(guò)在句法、語(yǔ)義以及模型層面上的對(duì)二、三維管網(wǎng)數(shù)據(jù)管理形成無(wú)縫集成,實(shí)時(shí)更新實(shí)現(xiàn)多源數(shù)據(jù)有效整合及各種規(guī)模的地下空間的三維管網(wǎng)場(chǎng)景的高效創(chuàng)建仍然是當(dāng)前國(guó)際本領(lǐng)域的前沿課題和研究的重點(diǎn)。
目前,還沒(méi)有一個(gè)完善的方法可以有效的解決基于地理信息中的地下管網(wǎng)數(shù)據(jù)的二、三維一體化管理,空間數(shù)據(jù)組織、地下三維管網(wǎng)的自動(dòng)構(gòu)建等技術(shù)問(wèn)題。通過(guò)利用二維管線數(shù)據(jù)自動(dòng)創(chuàng)建三維模型,提升了二、三維一體化的管理水平,大大減少了三維管線數(shù)據(jù)維護(hù)的工作量,提高了管線數(shù)據(jù)的顯示效果。通過(guò)對(duì)對(duì)地下管網(wǎng)中的管點(diǎn)和管線進(jìn)行組織化處理方便管線要素的查詢與渲染,采用動(dòng)態(tài)調(diào)度方式,有效利用設(shè)備內(nèi)存,支持海量管線數(shù)據(jù)的加載,提高數(shù)據(jù)加載速度及顯示效果;采用分頁(yè)索引機(jī)制,快速進(jìn)行管線數(shù)據(jù)的調(diào)度與顯示;提高了對(duì)三維場(chǎng)景中的管網(wǎng)信息的訪問(wèn)效率,提升了地下多條不同屬性的管網(wǎng)體系統(tǒng)一展示、管理和分析水平。二維管線自動(dòng)渲染成三維模型,既保留傳統(tǒng)二維屬性信息,又直觀顯示三維效果。管件豐富,既可以自動(dòng)從模型庫(kù)中讀取模型,又可以自動(dòng)建立直通、彎頭、變深彎頭、三通、四通、井脖主體、方井等井室。為城市建設(shè)尤其是對(duì)未來(lái)智慧城市搭建中的地下管網(wǎng)空間信息的獲取和構(gòu)建方案上起到了重要的依據(jù)和在城市建設(shè)的快速發(fā)展帶動(dòng)了城市地下空間資源的大規(guī)模開發(fā)利用。推進(jìn)了城市定向、有序的發(fā)展,并推進(jìn)了城市空間的立體開發(fā);充分開發(fā)利用地下空間資源的防護(hù)潛能,提高了城市綜合防災(zāi)抗毀能力起到了一定輔助作用。可以為諸多領(lǐng)域的應(yīng)用提供安全、可靠、準(zhǔn)確、高效的數(shù)據(jù)服務(wù)。
技術(shù)實(shí)現(xiàn)要素:
為了解決現(xiàn)有技術(shù)中存在的技術(shù)難題,高效流暢地展示海量三維數(shù)據(jù)并在諸多領(lǐng)域中進(jìn)行具有實(shí)際意義的二三維數(shù)據(jù)一體化,三維管網(wǎng)模型的自動(dòng)構(gòu)建海量數(shù)據(jù)發(fā)布、共享與應(yīng)用。
本發(fā)明實(shí)施例提供一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,包括如下步驟:
讀取數(shù)據(jù):對(duì)管網(wǎng)數(shù)據(jù)文件進(jìn)行讀取,打開管網(wǎng)數(shù)據(jù)源獲取管網(wǎng)數(shù)據(jù)集、進(jìn)而獲取管網(wǎng)要素類集合;
創(chuàng)建圖層:根據(jù)管網(wǎng)要素類集合創(chuàng)建管網(wǎng)圖層集合;
裁剪調(diào)度:對(duì)場(chǎng)景中的管網(wǎng)數(shù)據(jù)進(jìn)行遍歷裁剪與數(shù)據(jù)調(diào)度;
管線自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管線的二維基本屬性信息、渲染風(fēng)格信息自動(dòng)創(chuàng)建出三維管線模型;
管點(diǎn)自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管點(diǎn)的二維基本屬性信息、渲染風(fēng)格信息和相鄰管線、管點(diǎn)信息自動(dòng)創(chuàng)建出三維管點(diǎn)模型;
管網(wǎng)的自動(dòng)構(gòu)建:根據(jù)構(gòu)建完成的各管線圖層的管線與管點(diǎn)的模型,在場(chǎng)景中進(jìn)行自動(dòng)構(gòu)成管網(wǎng)模型。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中, 所述創(chuàng)建圖層:根據(jù)管網(wǎng)要素類集合創(chuàng)建管網(wǎng)圖層集合;
其中,創(chuàng)建圖層的具體步驟為:
數(shù)據(jù)預(yù)處理:讀取管網(wǎng)數(shù)據(jù)塊分頁(yè)索引信息,計(jì)算管網(wǎng)數(shù)據(jù)塊分頁(yè)索引半徑,將管網(wǎng)分頁(yè)索引數(shù)據(jù)塊中心坐標(biāo)由源坐標(biāo)系轉(zhuǎn)換為項(xiàng)目坐標(biāo)系;
創(chuàng)建管網(wǎng)要素分頁(yè)索引:根據(jù)預(yù)處理后的管網(wǎng)數(shù)據(jù)塊分頁(yè)索引信息創(chuàng)建管網(wǎng)要素分頁(yè)索引對(duì)象并將管網(wǎng)要素分頁(yè)索引添加到管網(wǎng)要素圖層根節(jié)點(diǎn)。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述裁剪調(diào)度:對(duì)場(chǎng)景中的管網(wǎng)數(shù)據(jù)進(jìn)行遍歷裁剪與數(shù)據(jù)調(diào)度;
所述裁剪調(diào)度的具體步驟為:
裁剪遍歷場(chǎng)景節(jié)點(diǎn)數(shù)據(jù):遍歷各個(gè)管網(wǎng)要素圖層節(jié)點(diǎn),判斷當(dāng)前管網(wǎng)要素圖層節(jié)點(diǎn)是否被裁剪,若被裁剪則繼續(xù)遍歷下一個(gè)管網(wǎng)要素圖層節(jié)點(diǎn),若不被裁剪獲得管網(wǎng)要素分頁(yè)索引集合;
調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù):裁剪遍歷管網(wǎng)要素分頁(yè)索引集合,請(qǐng)求管網(wǎng)要素分頁(yè)數(shù)據(jù);
裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合:遍歷過(guò)程中判斷管網(wǎng)節(jié)點(diǎn)是否為管點(diǎn)渲染節(jié)點(diǎn),若為管點(diǎn)渲染節(jié)點(diǎn)則繼續(xù)遍歷,若非管點(diǎn)渲染節(jié)點(diǎn)則遍歷管點(diǎn)模型,繼續(xù)遍歷并裁剪,裁剪遍歷管點(diǎn)模型過(guò)程中創(chuàng)建含有繪制單元的管網(wǎng)模型,最終獲得由管網(wǎng)模型構(gòu)成的管網(wǎng)渲染節(jié)點(diǎn)集合;
裁剪遍歷管網(wǎng)渲染節(jié)點(diǎn)集合:在遍歷過(guò)程中判斷管網(wǎng)渲染節(jié)點(diǎn)是否具有管網(wǎng)模型,若有管網(wǎng)模型則繼續(xù)遍歷模型節(jié)點(diǎn),反之,則繼續(xù)遍歷管網(wǎng)渲染節(jié)點(diǎn),最終得到管網(wǎng)的模型節(jié)點(diǎn)集合;
裁剪遍歷模型節(jié)點(diǎn)集合:在遍歷過(guò)程中獲取管網(wǎng)模型的繪制單元集合,將模型繪制單元添加到渲染列表進(jìn)行繪制。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù):裁剪遍歷管網(wǎng)要素分頁(yè)索引集合,請(qǐng)求管網(wǎng)要素分頁(yè)數(shù)據(jù);
所述調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù)的具體步驟為:
獲取分頁(yè)數(shù)據(jù):從管網(wǎng)數(shù)據(jù)庫(kù)中獲取管網(wǎng)分頁(yè)數(shù)據(jù);
創(chuàng)建要素?cái)?shù)據(jù)集:根據(jù)管網(wǎng)分頁(yè)數(shù)據(jù)創(chuàng)建要素?cái)?shù)據(jù)集;
初始化要素?cái)?shù)據(jù)集:對(duì)管網(wǎng)要素的基本屬性信息和渲染風(fēng)格信息進(jìn)行初始化,遍歷獲取到的管網(wǎng)幾何信息集合,根據(jù)管網(wǎng)幾何信息創(chuàng)建管網(wǎng)渲染節(jié)點(diǎn),獲得管網(wǎng)節(jié)點(diǎn)集合。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中:所述裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合:遍歷過(guò)程中判斷管網(wǎng)節(jié)點(diǎn)是否為管點(diǎn)渲染節(jié)點(diǎn),若為管點(diǎn)渲染節(jié)點(diǎn)則繼續(xù)遍歷,若非管點(diǎn)渲染節(jié)點(diǎn)則遍歷管點(diǎn)模型,繼續(xù)遍歷并裁剪,裁剪遍歷管點(diǎn)模型過(guò)程中創(chuàng)建含有繪制單元的管網(wǎng)模型,最終獲得由管網(wǎng)模型構(gòu)成的管網(wǎng)渲染節(jié)點(diǎn)集合;
所述裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合的具體步驟為:
創(chuàng)建模型對(duì)象:在對(duì)管網(wǎng)節(jié)點(diǎn)集合裁剪過(guò)程中,判斷管網(wǎng)節(jié)點(diǎn)中是否含有模型對(duì)象,若判定為含有模型對(duì)象,則對(duì)模型對(duì)象進(jìn)行有效性的檢查,若判定為沒(méi)有模型對(duì)象,則先創(chuàng)建模型對(duì)象,再對(duì)模型對(duì)象進(jìn)行有效性的檢查;
檢查模型對(duì)象的有效性:對(duì)模型對(duì)象進(jìn)行有效性的判斷,若判定為有效模型,則賦予管網(wǎng)渲染節(jié)點(diǎn)模型,若判定為無(wú)效模型,則判定裁剪失敗,結(jié)束裁剪。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述管線自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管線的二維基本屬性信息、渲染風(fēng)格信息自動(dòng)創(chuàng)建出三維管線模型;
所述管線自動(dòng)建模的具體步驟為:
預(yù)處理管線基本信息:為使管線與管點(diǎn)無(wú)縫貼合,根據(jù)管線原始基本屬性信息沿管徑方向?qū)芫€長(zhǎng)度進(jìn)行縮放,獲取更新后的管線基本屬性信息;
計(jì)算起始點(diǎn)坐標(biāo):根據(jù)管線基本屬性信息及坐標(biāo)系轉(zhuǎn)換信息,計(jì)算管線起始點(diǎn)源坐標(biāo)下的坐標(biāo)轉(zhuǎn)換到項(xiàng)目坐標(biāo)下的坐標(biāo);
創(chuàng)建管線并劃分?jǐn)嗝妫撼跏蓟瘎?chuàng)建管線對(duì)象,根據(jù)管線類型將管線對(duì)象劃分為若干斷面組成的管段;
計(jì)算斷面坐標(biāo):根據(jù)斷面的尺寸,計(jì)算各斷面頂點(diǎn)的局部坐標(biāo)系坐標(biāo);
計(jì)算管線長(zhǎng)度:根據(jù)各個(gè)管段的基本信息,提取所需的長(zhǎng)度信息計(jì)算各斷面管段的管段長(zhǎng)度;
計(jì)算斷面頂點(diǎn)局部坐標(biāo)系坐標(biāo):遍歷各管段的斷面頂點(diǎn),首先將管段頂點(diǎn)坐標(biāo)轉(zhuǎn)換到項(xiàng)目坐標(biāo)系下,然后以某一頂點(diǎn)為局部坐標(biāo)系原點(diǎn),將所有頂點(diǎn)坐標(biāo)轉(zhuǎn)換到該坐標(biāo)系下;
計(jì)算頂點(diǎn)的基本繪制信息:遍歷斷面各個(gè)頂點(diǎn),計(jì)算頂點(diǎn)坐標(biāo)、法向、紋理坐標(biāo)、頂點(diǎn)索引繪制信息;
構(gòu)建管線模型:根據(jù)斷面的各個(gè)基本繪制信息,通過(guò)斷面的頂點(diǎn)索引繪制信息,將各斷面構(gòu)建成管線模型。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中:所述管點(diǎn)自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管點(diǎn)的二維基本屬性信息、渲染風(fēng)格信息和相鄰管線、管點(diǎn)信息自動(dòng)創(chuàng)建出三維管點(diǎn)模型;
所述管點(diǎn)自動(dòng)建模的具體步驟為:
附屬物管點(diǎn)渲染:對(duì)含有附屬物的管點(diǎn),已知其管點(diǎn)內(nèi)附屬物路徑信息,自動(dòng)從數(shù)據(jù)庫(kù)中讀取附屬物模型進(jìn)行渲染;
非附屬物管點(diǎn)渲染:對(duì)不含有附屬物的管點(diǎn),獲取其相鄰管點(diǎn)信息,判斷當(dāng)前管點(diǎn)的類型進(jìn)行管點(diǎn)的自動(dòng)渲染。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中:所述非附屬物管點(diǎn)渲染包括:融合管線的管點(diǎn)渲染和普通管點(diǎn)渲染。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述非附屬物管點(diǎn)渲染:對(duì)不含有附屬物的管點(diǎn),獲取其相鄰管點(diǎn)信息,判斷當(dāng)前管點(diǎn)的類型進(jìn)行管點(diǎn)的自動(dòng)渲染;
所述非附屬物管點(diǎn)渲染的具體步驟為:
融合管線的管點(diǎn)渲染:對(duì)含有融合管線屬性的管點(diǎn)則需要單獨(dú)創(chuàng)建一條管線與附屬物連接渲染;
普通管點(diǎn)渲染:對(duì)不含有融合管線屬性的管點(diǎn),則根據(jù)該管點(diǎn)的相鄰點(diǎn)信息渲染出不同的管點(diǎn)模型。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述普通管點(diǎn)渲染:對(duì)不含有融合管線屬性的管點(diǎn),則根據(jù)該管點(diǎn)的相鄰點(diǎn)信息渲染出不同的管點(diǎn)模型;
所述普通管點(diǎn)渲染的具體步驟為:
調(diào)整管點(diǎn)坐標(biāo)Z:為達(dá)到渲染時(shí)可以無(wú)縫貼地,需要根據(jù)管點(diǎn)的高程屬性信息調(diào)整管點(diǎn)Z坐標(biāo);
創(chuàng)建管段并劃分?jǐn)嗝妫撼跏蓟瘎?chuàng)建管點(diǎn)的管段對(duì)象,根據(jù)管點(diǎn)類型將管段對(duì)象劃分為若干斷面;
計(jì)算斷面坐標(biāo):根據(jù)斷面的尺寸,計(jì)算各斷面頂點(diǎn)的局部坐標(biāo)系坐標(biāo);
計(jì)算管段長(zhǎng)度:根據(jù)各個(gè)管段的基本信息,提取所需的長(zhǎng)度信息計(jì)算各斷面管段的管段長(zhǎng)度;
計(jì)算斷面頂點(diǎn)局部坐標(biāo)系坐標(biāo):遍歷各管段的斷面頂點(diǎn),首先將管段頂點(diǎn)坐標(biāo)轉(zhuǎn)換到項(xiàng)目坐標(biāo)系下,然后以某一頂點(diǎn)為局部坐標(biāo)系原點(diǎn),將所有頂點(diǎn)坐標(biāo)轉(zhuǎn)換到該坐標(biāo)系下;
計(jì)算頂點(diǎn)的基本繪制信息:遍歷斷面各個(gè)頂點(diǎn),計(jì)算頂點(diǎn)坐標(biāo)、法向、紋理坐標(biāo)、頂點(diǎn)索引繪制信息;
構(gòu)建管點(diǎn)模型:根據(jù)斷面的各個(gè)基本繪制信息,通過(guò)斷面的頂點(diǎn)索引繪制信息,將各斷面構(gòu)建成管點(diǎn)模型。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述管線的屬性信息包括:起始點(diǎn)物探點(diǎn)號(hào)、高程、管徑。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述渲染風(fēng)格信息包括:管線內(nèi)壁、外壁顏色/紋理,管壁厚度,渲染類型。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述管線類型包括:圓管、方管。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述管點(diǎn)的屬性信息包括:物探點(diǎn)號(hào),地面高程,碰撞高程,附屬物名稱。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述管點(diǎn)的渲染風(fēng)格信息包括:管點(diǎn)類別編碼,附屬物名稱、附屬物對(duì)應(yīng)的模型名稱,控制管點(diǎn)姿態(tài)的屬性。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述控制管點(diǎn)姿態(tài)的屬性包括:是否跟隨管徑、是否貼地,是否跟隨管線方向、是否沿z軸縮放、是否自動(dòng)融合到管線、是否繞z軸旋轉(zhuǎn)。
一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,其中,所述普通管點(diǎn)類型包括:端點(diǎn)、直通點(diǎn)、彎頭、三通、四通、多通、變深井、圓柱體井、方井。
由此可見(jiàn):
本發(fā)明實(shí)施例中的方法可以有效的解決基于地理信息中的地下管網(wǎng)數(shù)據(jù)的二、三維一體化管理,空間數(shù)據(jù)組織、地下三維管網(wǎng)的自動(dòng)構(gòu)建等技術(shù)問(wèn)題。過(guò)利用二維管線數(shù)據(jù)自動(dòng)創(chuàng)建三維模型,提升了二、三維一體化的管理水平,大大減少了三維管線數(shù)據(jù)維護(hù)的工作量,提高了管線數(shù)據(jù)的顯示效果。通過(guò)對(duì)對(duì)地下管網(wǎng)中的管點(diǎn)和管線進(jìn)行組織化處理方便管線要素的查詢與渲染,采用動(dòng)態(tài)調(diào)度方式,有效利用設(shè)備內(nèi)存,支持海量管線數(shù)據(jù)的加載,提高數(shù)據(jù)加載速度及顯示效果;采用分頁(yè)索引機(jī)制,快速進(jìn)行管線數(shù)據(jù)的調(diào)度與顯示;提高了對(duì)三維場(chǎng)景中的管網(wǎng)信息的訪問(wèn)效率,提升了地下多條不同屬性的管網(wǎng)體系統(tǒng)一展示、管理和分析水平。二維管線自動(dòng)渲染成三維模型,既保留傳統(tǒng)二維屬性信息,又直觀顯示三維效果。管件豐富,既可以自動(dòng)從模型庫(kù)中讀取模型,又可以自動(dòng)建立直通、彎頭、變深彎頭、三通、四通、井脖主體、方井等井室。為城市建設(shè)尤其是對(duì)未來(lái)智慧城市搭建中的地下管網(wǎng)空間信息的獲取和構(gòu)建方案上起到了重要的依據(jù)和在城市建設(shè)的快速發(fā)展帶動(dòng)了城市地下空間資源的大規(guī)模開發(fā)利用。推進(jìn)了城市定向、有序的發(fā)展,并推進(jìn)了城市空間的立體開發(fā);充分開發(fā)利用地下空間資源的防護(hù)潛能,提高了城市綜合防災(zāi)抗毀能力起到了一定輔助作用??梢詾橹T多領(lǐng)域的應(yīng)用提供安全、可靠、準(zhǔn)確、高效的數(shù)據(jù)服務(wù)。
附圖說(shuō)明
圖1為本發(fā)明的實(shí)施例1提供的一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法的流程示意圖;
圖2為本發(fā)明的實(shí)施例提供的創(chuàng)建圖層步驟的流程示意圖;
圖3為本發(fā)明的實(shí)施例提供的裁剪調(diào)度步驟的流程示意圖;
圖4為本發(fā)明的實(shí)施例提供的調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù)步驟流程示意圖;
圖5為本發(fā)明的實(shí)施例提供的裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合步驟的流程示意圖;
圖6為本發(fā)明的實(shí)施例提供的管線自動(dòng)建模步驟的流程示意圖;
圖7為本發(fā)明的實(shí)施例提供的管點(diǎn)自動(dòng)建模步驟的流程示意圖;
圖8為本發(fā)明的實(shí)施例提供的非附屬物管點(diǎn)渲染步驟的流程示意圖;
圖9為本發(fā)明的實(shí)施例提供的普通管點(diǎn)渲染步驟的流程示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合附圖以及具體實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明,在此本發(fā)明的示意性實(shí)施例以及說(shuō)明用來(lái)解釋本發(fā)明,但并不作為對(duì)本發(fā)明的限定。
實(shí)施例1:
圖1為本實(shí)施例提供的一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法的流程示意圖。如圖1所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,包括如下步驟:
讀取數(shù)據(jù):對(duì)管網(wǎng)數(shù)據(jù)文件進(jìn)行讀取,打開管網(wǎng)數(shù)據(jù)源獲取管網(wǎng)數(shù)據(jù)集、進(jìn)而獲取管網(wǎng)要素類集合;
創(chuàng)建圖層:根據(jù)管網(wǎng)要素類集合創(chuàng)建管網(wǎng)圖層集合;
裁剪調(diào)度:對(duì)場(chǎng)景中的管網(wǎng)數(shù)據(jù)進(jìn)行遍歷裁剪與數(shù)據(jù)調(diào)度;
管線自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管線的二維基本屬性信息、渲染風(fēng)格信息自動(dòng)創(chuàng)建出三維管線模型;
管點(diǎn)自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管點(diǎn)的二維基本屬性信息、渲染風(fēng)格信息和相鄰管線、管點(diǎn)信息自動(dòng)創(chuàng)建出三維管點(diǎn)模型;
管網(wǎng)的自動(dòng)構(gòu)建:根據(jù)構(gòu)建完成的各管線圖層的管線與管點(diǎn)的模型,在場(chǎng)景中進(jìn)行自動(dòng)構(gòu)成管網(wǎng)模型。
如圖2所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法, 所述創(chuàng)建圖層:根據(jù)管網(wǎng)要素類集合創(chuàng)建管網(wǎng)圖層集合;
其中,創(chuàng)建圖層的具體步驟為:
數(shù)據(jù)預(yù)處理:讀取管網(wǎng)數(shù)據(jù)塊分頁(yè)索引信息,計(jì)算管網(wǎng)數(shù)據(jù)塊分頁(yè)索引半徑,將管網(wǎng)分頁(yè)索引數(shù)據(jù)塊中心坐標(biāo)由源坐標(biāo)系轉(zhuǎn)換為項(xiàng)目坐標(biāo)系;
創(chuàng)建管網(wǎng)要素分頁(yè)索引:根據(jù)預(yù)處理后的管網(wǎng)數(shù)據(jù)塊分頁(yè)索引信息創(chuàng)建管網(wǎng)要素分頁(yè)索引對(duì)象并將管網(wǎng)要素分頁(yè)索引添加到管網(wǎng)要素圖層根節(jié)點(diǎn)。
如圖3所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述裁剪調(diào)度:對(duì)場(chǎng)景中的管網(wǎng)數(shù)據(jù)進(jìn)行遍歷裁剪與數(shù)據(jù)調(diào)度;
所述裁剪調(diào)度的具體步驟為:
裁剪遍歷場(chǎng)景節(jié)點(diǎn)數(shù)據(jù):遍歷各個(gè)管網(wǎng)要素圖層節(jié)點(diǎn),判斷當(dāng)前管網(wǎng)要素圖層節(jié)點(diǎn)是否被裁剪,若被裁剪則繼續(xù)遍歷下一個(gè)管網(wǎng)要素圖層節(jié)點(diǎn),若不被裁剪獲得管網(wǎng)要素分頁(yè)索引集合;
調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù):裁剪遍歷管網(wǎng)要素分頁(yè)索引集合,請(qǐng)求管網(wǎng)要素分頁(yè)數(shù)據(jù);
裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合:遍歷過(guò)程中判斷管網(wǎng)節(jié)點(diǎn)是否為管點(diǎn)渲染節(jié)點(diǎn),若為管點(diǎn)渲染節(jié)點(diǎn)則繼續(xù)遍歷,若非管點(diǎn)渲染節(jié)點(diǎn)則遍歷管點(diǎn)模型,繼續(xù)遍歷并裁剪,裁剪遍歷管點(diǎn)模型過(guò)程中創(chuàng)建含有繪制單元的管網(wǎng)模型,最終獲得由管網(wǎng)模型構(gòu)成的管網(wǎng)渲染節(jié)點(diǎn)集合;
裁剪遍歷管網(wǎng)渲染節(jié)點(diǎn)集合:在遍歷過(guò)程中判斷管網(wǎng)渲染節(jié)點(diǎn)是否具有管網(wǎng)模型,若有管網(wǎng)模型則繼續(xù)遍歷模型節(jié)點(diǎn),反之,則繼續(xù)遍歷管網(wǎng)渲染節(jié)點(diǎn),最終得到管網(wǎng)的模型節(jié)點(diǎn)集合;
裁剪遍歷模型節(jié)點(diǎn)集合:在遍歷過(guò)程中獲取管網(wǎng)模型的繪制單元集合,將模型繪制單元添加到渲染列表進(jìn)行繪制。
如圖4所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù):裁剪遍歷管網(wǎng)要素分頁(yè)索引集合,請(qǐng)求管網(wǎng)要素分頁(yè)數(shù)據(jù);
所述調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù)的具體步驟為:
獲取分頁(yè)數(shù)據(jù):從管網(wǎng)數(shù)據(jù)庫(kù)中獲取管網(wǎng)分頁(yè)數(shù)據(jù);
創(chuàng)建要素?cái)?shù)據(jù)集:根據(jù)管網(wǎng)分頁(yè)數(shù)據(jù)創(chuàng)建要素?cái)?shù)據(jù)集;
初始化要素?cái)?shù)據(jù)集:對(duì)管網(wǎng)要素的基本屬性信息和渲染風(fēng)格信息進(jìn)行初始化,遍歷獲取到的管網(wǎng)幾何信息集合,根據(jù)管網(wǎng)幾何信息創(chuàng)建管網(wǎng)渲染節(jié)點(diǎn),獲得管網(wǎng)節(jié)點(diǎn)集合。
如圖5所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合:遍歷過(guò)程中判斷管網(wǎng)節(jié)點(diǎn)是否為管點(diǎn)渲染節(jié)點(diǎn),若為管點(diǎn)渲染節(jié)點(diǎn)則繼續(xù)遍歷,若非管點(diǎn)渲染節(jié)點(diǎn)則遍歷管點(diǎn)模型,繼續(xù)遍歷并裁剪,裁剪遍歷管點(diǎn)模型過(guò)程中創(chuàng)建含有繪制單元的管網(wǎng)模型,最終獲得由管網(wǎng)模型構(gòu)成的管網(wǎng)渲染節(jié)點(diǎn)集合;
所述裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合的具體步驟為:
創(chuàng)建模型對(duì)象:在對(duì)管網(wǎng)節(jié)點(diǎn)集合裁剪過(guò)程中,判斷管網(wǎng)節(jié)點(diǎn)中是否含有模型對(duì)象,若判定為含有模型對(duì)象,則對(duì)模型對(duì)象進(jìn)行有效性的檢查,若判定為沒(méi)有模型對(duì)象,則先創(chuàng)建模型對(duì)象,再對(duì)模型對(duì)象進(jìn)行有效性的檢查;
檢查模型對(duì)象的有效性:對(duì)模型對(duì)象進(jìn)行有效性的判斷,若判定為有效模型,則賦予管網(wǎng)渲染節(jié)點(diǎn)模型,若判定為無(wú)效模型,則判定裁剪失敗,結(jié)束裁剪。
如圖6所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述管線自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管線的二維基本屬性信息、渲染風(fēng)格信息自動(dòng)創(chuàng)建出三維管線模型;
所述管線自動(dòng)建模的具體步驟為:
預(yù)處理管線基本信息:為使管線與管點(diǎn)無(wú)縫貼合,根據(jù)管線原始基本屬性信息沿管徑方向?qū)芫€長(zhǎng)度進(jìn)行縮放,獲取更新后的管線基本屬性信息;
計(jì)算起始點(diǎn)坐標(biāo):根據(jù)管線基本屬性信息及坐標(biāo)系轉(zhuǎn)換信息,計(jì)算管線起始點(diǎn)源坐標(biāo)下的坐標(biāo)轉(zhuǎn)換到項(xiàng)目坐標(biāo)下的坐標(biāo);
創(chuàng)建管線并劃分?jǐn)嗝妫撼跏蓟瘎?chuàng)建管線對(duì)象,根據(jù)管線類型將管線對(duì)象劃分為若干斷面組成的管段;
計(jì)算斷面坐標(biāo):根據(jù)斷面的尺寸,計(jì)算各斷面頂點(diǎn)的局部坐標(biāo)系坐標(biāo);
計(jì)算管線長(zhǎng)度:根據(jù)各個(gè)管段的基本信息,提取所需的長(zhǎng)度信息計(jì)算各斷面管段的管段長(zhǎng)度;
計(jì)算斷面頂點(diǎn)局部坐標(biāo)系坐標(biāo):遍歷各管段的斷面頂點(diǎn),首先將管段頂點(diǎn)坐標(biāo)轉(zhuǎn)換到項(xiàng)目坐標(biāo)系下,然后以某一頂點(diǎn)為局部坐標(biāo)系原點(diǎn),將所有頂點(diǎn)坐標(biāo)轉(zhuǎn)換到該坐標(biāo)系下;
計(jì)算頂點(diǎn)的基本繪制信息:遍歷斷面各個(gè)頂點(diǎn),計(jì)算頂點(diǎn)坐標(biāo)、法向、紋理坐標(biāo)、頂點(diǎn)索引繪制信息;
構(gòu)建管線模型:根據(jù)斷面的各個(gè)基本繪制信息,通過(guò)斷面的頂點(diǎn)索引繪制信息,將各斷面構(gòu)建成管線模型。
如圖7所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述所述管點(diǎn)自動(dòng)建模:在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)管點(diǎn)的二維基本屬性信息、渲染風(fēng)格信息和相鄰管線、管點(diǎn)信息自動(dòng)創(chuàng)建出三維管點(diǎn)模型;
所述管點(diǎn)自動(dòng)建模的具體步驟為:
附屬物管點(diǎn)渲染:對(duì)含有附屬物的管點(diǎn),已知其管點(diǎn)內(nèi)附屬物路徑信息,自動(dòng)從數(shù)據(jù)庫(kù)中讀取附屬物模型進(jìn)行渲染;
非附屬物管點(diǎn)渲染:對(duì)不含有附屬物的管點(diǎn),獲取其相鄰管點(diǎn)信息,判斷當(dāng)前管點(diǎn)的類型進(jìn)行管點(diǎn)的自動(dòng)渲染。
具體實(shí)施例中,所述非附屬物管點(diǎn)渲染包括:融合管線的管點(diǎn)渲染和普通管點(diǎn)渲染。
如圖8所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述非附屬物管點(diǎn)渲染:對(duì)不含有附屬物的管點(diǎn),獲取其相鄰管點(diǎn)信息,判斷當(dāng)前管點(diǎn)的類型進(jìn)行管點(diǎn)的自動(dòng)渲染;
所述非附屬物管點(diǎn)渲染的具體步驟為:
融合管線的管點(diǎn)渲染:對(duì)含有融合管線屬性的管點(diǎn)則需要單獨(dú)創(chuàng)建一條管線與附屬物連接渲染;
普通管點(diǎn)渲染:對(duì)不含有融合管線屬性的管點(diǎn),則根據(jù)該管點(diǎn)的相鄰點(diǎn)信息渲染出不同的管點(diǎn)模型。
如圖9所示,一種綜合管網(wǎng)的三維自動(dòng)建模及調(diào)度渲染的方法,所述普通管點(diǎn)渲染:對(duì)不含有融合管線屬性的管點(diǎn),則根據(jù)該管點(diǎn)的相鄰點(diǎn)信息渲染出不同的管點(diǎn)模型;
所述普通管點(diǎn)渲染的具體步驟為:
調(diào)整管點(diǎn)坐標(biāo)Z:為達(dá)到渲染時(shí)可以無(wú)縫貼地,需要根據(jù)管點(diǎn)的高程屬性信息調(diào)整管點(diǎn)Z坐標(biāo);
創(chuàng)建管段并劃分?jǐn)嗝妫撼跏蓟瘎?chuàng)建管點(diǎn)的管段對(duì)象,根據(jù)管點(diǎn)類型將管段對(duì)象劃分為若干斷面;
計(jì)算斷面坐標(biāo):根據(jù)斷面的尺寸,計(jì)算各斷面頂點(diǎn)的局部坐標(biāo)系坐標(biāo);
計(jì)算管段長(zhǎng)度:根據(jù)各個(gè)管段的基本信息,提取所需的長(zhǎng)度信息計(jì)算各斷面管段的管段長(zhǎng)度;
計(jì)算斷面頂點(diǎn)局部坐標(biāo)系坐標(biāo):遍歷各管段的斷面頂點(diǎn),首先將管段頂點(diǎn)坐標(biāo)轉(zhuǎn)換到項(xiàng)目坐標(biāo)系下,然后以某一頂點(diǎn)為局部坐標(biāo)系原點(diǎn),將所有頂點(diǎn)坐標(biāo)轉(zhuǎn)換到該坐標(biāo)系下;
計(jì)算頂點(diǎn)的基本繪制信息:遍歷斷面各個(gè)頂點(diǎn),計(jì)算頂點(diǎn)坐標(biāo)、法向、紋理坐標(biāo)、頂點(diǎn)索引繪制信息;
構(gòu)建管點(diǎn)模型:根據(jù)斷面的各個(gè)基本繪制信息,通過(guò)斷面的頂點(diǎn)索引繪制信息,將各斷面構(gòu)建成管點(diǎn)模型。
具體實(shí)施例中,所述管線的屬性信息包括:起始點(diǎn)物探點(diǎn)號(hào)、高程、管徑。
具體實(shí)施例中,所述渲染風(fēng)格信息包括:管線內(nèi)壁、外壁顏色/紋理,管壁厚度,渲染類型。
具體實(shí)施例中,所述管線類型包括:圓管、方管。
具體實(shí)施例中,所述管點(diǎn)的屬性信息包括:物探點(diǎn)號(hào),地面高程,碰撞高程,附屬物名稱。
具體實(shí)施例中,所述管點(diǎn)的渲染風(fēng)格信息包括:管點(diǎn)類別編碼,附屬物名稱、附屬物對(duì)應(yīng)的模型名稱,控制管點(diǎn)姿態(tài)的屬性。
具體實(shí)施例中,所述控制管點(diǎn)姿態(tài)的屬性包括:是否跟隨管徑、是否貼地,是否跟隨管線方向、是否沿z軸縮放、是否自動(dòng)融合到管線、是否繞z軸旋轉(zhuǎn)。
具體實(shí)施例中,所述普通管點(diǎn)類型包括:端點(diǎn)、直通點(diǎn)、彎頭、三通、四通、多通、變深井、圓柱體井、方井。
下面以一個(gè)更具體的一個(gè)細(xì)節(jié)方面的例子來(lái)對(duì)本技術(shù)進(jìn)行詳細(xì)描述。
采用本綜合管網(wǎng)的調(diào)度與自動(dòng)渲染方法可以對(duì)二維通訊管網(wǎng)數(shù)據(jù)、電力管網(wǎng)數(shù)據(jù)、給水管網(wǎng)數(shù)據(jù)、排水管網(wǎng)數(shù)據(jù)、燃?xì)夤芫W(wǎng)數(shù)據(jù)、熱力管網(wǎng)數(shù)據(jù)、工業(yè)管網(wǎng)數(shù)據(jù)進(jìn)行與三維自動(dòng)建模和調(diào)度渲染。
首先,讀取數(shù)據(jù)。讀取某地區(qū)的二維通訊管網(wǎng)數(shù)據(jù)、電力管網(wǎng)數(shù)據(jù)、給水管網(wǎng)數(shù)據(jù)、排水管網(wǎng)數(shù)據(jù)、燃?xì)夤芫W(wǎng)數(shù)據(jù)、熱力管網(wǎng)數(shù)據(jù)、工業(yè)管網(wǎng)數(shù)據(jù)入庫(kù)后的管網(wǎng)數(shù)據(jù)文件,打開管網(wǎng)數(shù)據(jù)源獲取管網(wǎng)數(shù)據(jù)集、進(jìn)而獲取通訊管網(wǎng)、電力管網(wǎng)、給水管網(wǎng)、排水管網(wǎng)、燃?xì)夤芫W(wǎng)、熱力管網(wǎng)、工業(yè)管網(wǎng)要素類集合。
其次,創(chuàng)建圖層。根據(jù)通訊管網(wǎng)、電力管網(wǎng)、給水管網(wǎng)、排水管網(wǎng)、燃?xì)夤芫W(wǎng)、熱力管網(wǎng)、工業(yè)管網(wǎng)要素類集合創(chuàng)建通訊管網(wǎng)、電力管網(wǎng)、給水管網(wǎng)、排水管網(wǎng)、燃?xì)夤芫W(wǎng)、熱力管網(wǎng)、工業(yè)管網(wǎng)圖層集合。
再次,裁剪調(diào)度。在三維場(chǎng)景裁剪調(diào)度過(guò)程中,對(duì)通訊管網(wǎng)、電力管網(wǎng)、給水管網(wǎng)、排水管網(wǎng)、燃?xì)夤芫W(wǎng)、熱力管網(wǎng)、工業(yè)管網(wǎng)圖層數(shù)據(jù)分別進(jìn)行遍歷裁剪與數(shù)據(jù)調(diào)度。
具體實(shí)施例中,以電力管網(wǎng)為例。
進(jìn)而,進(jìn)行管線自動(dòng)建模。在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)電力管線的二維基本屬性信息、渲染風(fēng)格信息自動(dòng)創(chuàng)建出電力三維管線模型。
同時(shí),進(jìn)行管點(diǎn)自動(dòng)建模。在三維場(chǎng)景渲染調(diào)度過(guò)程中根據(jù)電力管點(diǎn)的二維基本屬性信息、渲染風(fēng)格信息和相鄰管線、管點(diǎn)信息自動(dòng)創(chuàng)建出電力三維管點(diǎn)模型。
最后,自動(dòng)構(gòu)建管網(wǎng)。根據(jù)構(gòu)建完成的通訊管網(wǎng)、電力管網(wǎng)、給水管網(wǎng)、排水管網(wǎng)、燃?xì)夤芫W(wǎng)、熱力管網(wǎng)、工業(yè)管網(wǎng)圖層的管線與管點(diǎn)的模型,在場(chǎng)景中進(jìn)行自動(dòng)構(gòu)成管網(wǎng)模型。
在具體實(shí)施例中所述創(chuàng)建圖層的步驟具體可為:
首先,對(duì)管網(wǎng)數(shù)據(jù)進(jìn)行預(yù)處理。讀取電力管網(wǎng)數(shù)據(jù)塊渲染索引信息,包括渲染索引包圍盒坐標(biāo)信息;根據(jù)渲染索引包圍盒坐標(biāo)計(jì)算得到渲染索引半徑及中心坐標(biāo);將管網(wǎng)渲染索引數(shù)據(jù)塊中心坐標(biāo)由TJ90源坐標(biāo)系轉(zhuǎn)換到WGS84項(xiàng)目坐標(biāo)系下;
然后,創(chuàng)建管網(wǎng)要素分頁(yè)索引。根據(jù)預(yù)處理后的電力管網(wǎng)數(shù)據(jù)塊渲染索引信息創(chuàng)建電力管網(wǎng)要素分頁(yè)索引對(duì)象并將電力管網(wǎng)要素分頁(yè)索引添加到電力管網(wǎng)要素圖層根節(jié)點(diǎn)。
在具體實(shí)施例中所述裁剪調(diào)度的步驟具體可為:
1)裁剪遍歷場(chǎng)景節(jié)點(diǎn)數(shù)據(jù):遍歷電力管網(wǎng)要素圖層節(jié)點(diǎn),判斷電力管網(wǎng)要素圖層節(jié)點(diǎn)是否被裁剪,若被裁剪則繼續(xù)遍歷其他管網(wǎng)要素圖層節(jié)點(diǎn),若不被裁剪獲得電力管網(wǎng)要素分頁(yè)索引集合;
2)調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù):裁剪遍歷電力管網(wǎng)要素分頁(yè)索引集合,請(qǐng)求電力管網(wǎng)要素塊數(shù)據(jù);
3)裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合:遍歷過(guò)程中判斷電力管網(wǎng)節(jié)點(diǎn)是否為電力管點(diǎn)渲染節(jié)點(diǎn),若為電力管點(diǎn)渲染節(jié)點(diǎn)則繼續(xù)遍歷,若非電力管點(diǎn)渲染節(jié)點(diǎn)則遍歷電力管點(diǎn)模型,繼續(xù)遍歷并裁剪,裁剪遍歷電力管點(diǎn)模型過(guò)程中創(chuàng)建含有繪制單元的電力管網(wǎng)模型,最終獲得由管電力網(wǎng)模型構(gòu)成的電力管網(wǎng)渲染節(jié)點(diǎn)集合;
4)裁剪遍歷電力管網(wǎng)渲染節(jié)點(diǎn)集合:在遍歷過(guò)程中判斷管電力網(wǎng)渲染節(jié)點(diǎn)是否具有電力管網(wǎng)模型,若有電力管網(wǎng)模型則繼續(xù)遍歷模型節(jié)點(diǎn),反之,則繼續(xù)遍歷電力管網(wǎng)渲染節(jié)點(diǎn),最終得到電力管網(wǎng)的模型節(jié)點(diǎn)集合;
5)裁剪遍歷模型節(jié)點(diǎn)集合:在遍歷過(guò)程中獲取電力管網(wǎng)模型的繪制單元集合,將模型繪制單元添加到渲染場(chǎng)景樹進(jìn)行繪制。
所述調(diào)度請(qǐng)求管網(wǎng)數(shù)據(jù)的具體步驟為:從管網(wǎng)數(shù)據(jù)庫(kù)中獲取電力管網(wǎng)塊數(shù)據(jù),然后根據(jù)電力管網(wǎng)塊數(shù)據(jù)創(chuàng)建電力要素塊,對(duì)電力管網(wǎng)要素的基本屬性信息和渲染風(fēng)格信息進(jìn)行初始化,遍歷獲取到的電力管網(wǎng)幾何信息集合,根據(jù)電力管網(wǎng)幾何信息創(chuàng)建電力管網(wǎng)渲染節(jié)點(diǎn),獲得電力管網(wǎng)節(jié)點(diǎn)集合。
其中,管網(wǎng)要素的基本屬性信息包括起始點(diǎn)物探點(diǎn)號(hào)、高程、管徑;管網(wǎng)要素的渲染風(fēng)格信息包括管線內(nèi)壁、外壁顏色/紋理,管壁厚度,渲染類型。
所述裁剪遍歷管網(wǎng)節(jié)點(diǎn)集合的具體步驟為:
首先,在對(duì)電力管網(wǎng)節(jié)點(diǎn)集合裁剪過(guò)程中,判斷電力管網(wǎng)節(jié)點(diǎn)中是否含有模型對(duì)象,若判定為含有模型對(duì)象,則對(duì)模型對(duì)象進(jìn)行有效性的檢查,若判定為沒(méi)有模型對(duì)象,則先創(chuàng)建模型對(duì)象,再對(duì)模型對(duì)象進(jìn)行有效性的檢查;
然后,檢查模型對(duì)象的有效性,對(duì)模型對(duì)象進(jìn)行有效性的判斷,若判定為有效模型,則賦予管網(wǎng)渲染節(jié)點(diǎn)模型,若判定為無(wú)效模型,則判定裁剪失敗,結(jié)束裁剪。
在具體實(shí)施例中所述創(chuàng)建電力管線模型的步驟具體可為:
1)預(yù)處理電力管線基本信息:為使電力管線與管點(diǎn)無(wú)縫貼合,根據(jù)電力管線原始基本屬性信息沿管徑方向?qū)﹄娏芫€長(zhǎng)度進(jìn)行縮放,獲取更新后的電力管線基本屬性信息;
其中,基本屬性信息包括起始點(diǎn)物探點(diǎn)號(hào)、高程、管徑。
2)起始點(diǎn)坐標(biāo)轉(zhuǎn)換:根據(jù)電力管線基本屬性信息及坐標(biāo)系轉(zhuǎn)換信息,將電力管線起始點(diǎn)TJ90源坐標(biāo)下的坐標(biāo)轉(zhuǎn)換到WGS84項(xiàng)目坐標(biāo)下;
3)創(chuàng)建三維管線并劃分?jǐn)嗝妫撼跏蓟瘎?chuàng)建三維管線對(duì)象,根據(jù)電力管線類型,如方形或圓形,將電力三維管線對(duì)象劃分為若干斷面組成的管段;
4)計(jì)算斷面坐標(biāo):根據(jù)斷面的寬、高、半徑尺寸信息,計(jì)算各斷面頂點(diǎn)以斷面中心為坐標(biāo)原點(diǎn)的局部坐標(biāo)系下坐標(biāo);
5)計(jì)算管線長(zhǎng)度:根據(jù)各個(gè)管段的起始點(diǎn)信息,提取所需的長(zhǎng)度信息計(jì)算各斷面管段的管段長(zhǎng)度;
6)計(jì)算斷面頂點(diǎn)局部坐標(biāo)系坐標(biāo):遍歷各管段的斷面頂點(diǎn),首先將管段頂點(diǎn)坐標(biāo)轉(zhuǎn)換到WGS84項(xiàng)目坐標(biāo)系下,然后以某一頂點(diǎn)為局部坐標(biāo)系原點(diǎn),將所有頂點(diǎn)坐標(biāo)轉(zhuǎn)換到該坐標(biāo)系下;
7)計(jì)算頂點(diǎn)的基本繪制信息:遍歷斷面各個(gè)頂點(diǎn),計(jì)算頂點(diǎn)坐標(biāo)位置、頂點(diǎn)法向向量、頂點(diǎn)紋理坐標(biāo)、頂點(diǎn)索引繪制信息;
8)構(gòu)建管線模型:根據(jù)斷面頂點(diǎn)的坐標(biāo)、法向、紋理基本繪制信息,通過(guò)斷面頂點(diǎn)索引繪制信息,將各斷面構(gòu)建成管線模型。
在具體實(shí)施例中所述創(chuàng)建電力管點(diǎn)模型的步驟具體可為:
首先,判斷電力管點(diǎn)是否具有附屬物屬性,對(duì)含有附屬物的管點(diǎn),已知其管點(diǎn)內(nèi)附屬物路徑信息,自動(dòng)從管網(wǎng)數(shù)據(jù)庫(kù)文件中讀取電力附屬物模型進(jìn)行渲染;
然后,對(duì)不含有附屬物的電力管點(diǎn),首先判斷是否具有融合管線的屬性,對(duì)含有融合管線屬性的管點(diǎn)則需要單獨(dú)創(chuàng)建一條管線與附屬物連接渲染;
再次,對(duì)不含有融合管線屬性的電力管點(diǎn),則根據(jù)該管點(diǎn)的相鄰點(diǎn)信息渲染出不同的管點(diǎn)模型,例如相鄰點(diǎn)有且只有一個(gè),則渲染出端點(diǎn)模型;相鄰點(diǎn)有且只有兩個(gè),則渲染出直通點(diǎn)或彎頭模型;相鄰點(diǎn)有且只有三個(gè),則渲染出三通模型;相鄰點(diǎn)有且只有四個(gè),則渲染出四通模型;相鄰點(diǎn)有四個(gè)以上,則渲染出多通模型。
其中,創(chuàng)建普通電力管點(diǎn)模型的步驟具體可為:
1)調(diào)整普通電力管點(diǎn)Z坐標(biāo):為達(dá)到普通電力管點(diǎn)模型渲染時(shí)可以無(wú)縫貼地,需要根據(jù)普通電力管點(diǎn)的高程屬性信息調(diào)整電力管點(diǎn)Z坐標(biāo);
2)創(chuàng)建管段并劃分?jǐn)嗝妫撼跏蓟瘎?chuàng)建普通電力管點(diǎn)的三維管段對(duì)象,根據(jù)普通電力管點(diǎn)類型,例如方形管或圓形管,將管段對(duì)象劃分為若干斷面;
3)計(jì)算斷面坐標(biāo):根據(jù)斷面的寬、高、半徑尺寸信息,計(jì)算各斷面頂點(diǎn)以斷面中心為坐標(biāo)原點(diǎn)的局部坐標(biāo)系下坐標(biāo);
4)計(jì)算管段長(zhǎng)度:根據(jù)各個(gè)管段的起始點(diǎn)信息,提取所需的長(zhǎng)度信息計(jì)算各斷面管段的管段長(zhǎng)度;
5)計(jì)算斷面頂點(diǎn)局部坐標(biāo)系坐標(biāo):遍歷各管段的斷面頂點(diǎn),首先將管段頂點(diǎn)坐標(biāo)轉(zhuǎn)換到WGS84項(xiàng)目坐標(biāo)系下,然后以某一頂點(diǎn)為局部坐標(biāo)系原點(diǎn),將所有頂點(diǎn)坐標(biāo)轉(zhuǎn)換到該坐標(biāo)系下;
6)計(jì)算頂點(diǎn)的基本繪制信息:遍歷斷面各個(gè)頂點(diǎn),計(jì)算頂點(diǎn)坐標(biāo)位置、頂點(diǎn)法向向量、頂點(diǎn)紋理坐標(biāo)、頂點(diǎn)索引繪制信息;
7)構(gòu)建管點(diǎn)模型:根據(jù)斷面頂點(diǎn)的坐標(biāo)、法向、紋理基本繪制信息,通過(guò)斷面頂點(diǎn)索引繪制信息,將各斷面構(gòu)建成管點(diǎn)模型。
前述的方法描述和示意圖僅被提供作為示例性的示例且其不意在需要或隱含必須以所給出的順序執(zhí)行上述操作或各個(gè)方面的步驟。如本領(lǐng)域的技術(shù)人員將明白的,可以以任何順序來(lái)執(zhí)行在前述方面中的框的順序。諸如“其后”、“然后”、“接下來(lái)”等之類的詞并不意在限制操作或步驟的順序;這些詞僅用于引導(dǎo)讀者遍歷對(duì)方法的描述。此外,任何對(duì)權(quán)利要求元素的單數(shù)引用,例如,使用冠詞“一”、“一個(gè)”或“該”不被解釋為將該元素限制為單數(shù)。
結(jié)合本文中公開的方面描述的各種說(shuō)明性的邏輯框、模塊、電路和算法步驟均可以實(shí)現(xiàn)成電子硬件、計(jì)算機(jī)軟件或其組合。為了清楚地表示硬件和軟件之間的可交換性,上文對(duì)各種說(shuō)明性的組件、框、模塊、電路和步驟均圍繞其功能進(jìn)行了總體描述。至于這種功能是實(shí)現(xiàn)成硬件還是實(shí)現(xiàn)成軟件,取決于特定的應(yīng)用和對(duì)整個(gè)方法所施加的設(shè)計(jì)約束。熟練的技術(shù)人員可以針對(duì)每個(gè)特定的應(yīng)用,以變通的方式來(lái)實(shí)現(xiàn)所描述的功能,但是,這種實(shí)現(xiàn)決策不應(yīng)被解釋為引起脫離本發(fā)明的保護(hù)范圍。
由此可見(jiàn):
本發(fā)明實(shí)施例中的方法可以有效的解決基于地理信息中的地下管網(wǎng)數(shù)據(jù)的二、三維一體化管理,空間數(shù)據(jù)組織、地下三維管網(wǎng)的自動(dòng)構(gòu)建等技術(shù)問(wèn)題。過(guò)利用二維管線數(shù)據(jù)自動(dòng)創(chuàng)建三維模型,提升了二、三維一體化的管理水平,大大減少了三維管線數(shù)據(jù)維護(hù)的工作量,提高了管線數(shù)據(jù)的顯示效果。通過(guò)對(duì)對(duì)地下管網(wǎng)中的管點(diǎn)和管線進(jìn)行組織化處理方便管線要素的查詢與渲染,采用動(dòng)態(tài)調(diào)度方式,有效利用設(shè)備內(nèi)存,支持海量管線數(shù)據(jù)的加載,提高數(shù)據(jù)加載速度及顯示效果;采用分頁(yè)索引機(jī)制,快速進(jìn)行管線數(shù)據(jù)的調(diào)度與顯示;提高了對(duì)三維場(chǎng)景中的管網(wǎng)信息的訪問(wèn)效率,提升了地下多條不同屬性的管網(wǎng)體系統(tǒng)一展示、管理和分析水平。二維管線自動(dòng)渲染成三維模型,既保留傳統(tǒng)二維屬性信息,又直觀顯示三維效果。管件豐富,既可以自動(dòng)從模型庫(kù)中讀取模型,又可以自動(dòng)建立直通、彎頭、變深彎頭、三通、四通、井脖主體、方井等井室。為城市建設(shè)尤其是對(duì)未來(lái)智慧城市搭建中的地下管網(wǎng)空間信息的獲取和構(gòu)建方案上起到了重要的依據(jù)和在城市建設(shè)的快速發(fā)展帶動(dòng)了城市地下空間資源的大規(guī)模開發(fā)利用。推進(jìn)了城市定向、有序的發(fā)展,并推進(jìn)了城市空間的立體開發(fā);充分開發(fā)利用地下空間資源的防護(hù)潛能,提高了城市綜合防災(zāi)抗毀能力起到了一定輔助作用??梢詾橹T多領(lǐng)域的應(yīng)用提供安全、可靠、準(zhǔn)確、高效的數(shù)據(jù)服務(wù)。
提供所公開的方面的前述描述,以使本領(lǐng)域的任何技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),對(duì)這些方面的各種修改將是顯而易見(jiàn)的,并且本文定義的總體原理也可以在不脫離本發(fā)明的精神和保護(hù)范圍的情況下應(yīng)用于其它實(shí)施例。因此,本發(fā)明不旨在受限于本文給出的方面,而是與符合與本文公開的原理和新穎特征相一致的最寬的范圍。