唐小麗,呂順杰,郭紅操,許文強(qiáng)
(1.成都市規(guī)劃信息技術(shù)中心,四川 成都 610041; 2.四川天地圖勞務(wù)有限公司,四川 成都 610041)
地下管線是城市基礎(chǔ)設(shè)施的重要組成部分,擔(dān)負(fù)著輸送能量、傳輸物質(zhì)和傳遞信息的重要任務(wù),是城市賴以生存和發(fā)展的物質(zhì)基礎(chǔ),被稱為城市的“生命線”。掌握和摸清城市地下管線的現(xiàn)狀是城市規(guī)劃、建設(shè)和管理的需要,也是抗震、防災(zāi)和防止城市建設(shè)發(fā)生管線事故的需要[1]。
隨著經(jīng)濟(jì)社會(huì)的不斷發(fā)展,城鎮(zhèn)化進(jìn)程的不斷深入,傳統(tǒng)的城市地下管線二維管理模式,已根本無(wú)法滿足當(dāng)今人們對(duì)地下管網(wǎng)、管線大數(shù)據(jù)信息分析、表達(dá)、應(yīng)用的實(shí)際需要。利用計(jì)算機(jī)、圖形學(xué)等信息技術(shù)實(shí)現(xiàn)地下管線三維可視化,能夠有效地為各類地下管線信息的規(guī)劃,設(shè)計(jì)和管理提供信息參考[2]。地下管線三維具有直觀、清晰、形象的特點(diǎn),使本來(lái)在平面顯示下錯(cuò)綜復(fù)雜的管線變得更加清晰明了。但是由于缺乏地下管線自動(dòng)化三維處理的方法和工具軟件,管線數(shù)據(jù)無(wú)法動(dòng)態(tài)生成直觀的地下三維模型,更無(wú)法與地上三維實(shí)景模型進(jìn)行統(tǒng)一的存儲(chǔ)管理與更新。
文本在分析現(xiàn)有三維建模平臺(tái)的基礎(chǔ)上,結(jié)合SuperMap平臺(tái)的GIS數(shù)據(jù)組織、模型展示方法,設(shè)計(jì)科學(xué)的三維管線部件(管段、管點(diǎn))的數(shù)據(jù)組織結(jié)構(gòu)、字段屬性要求,并對(duì)已有管線數(shù)據(jù)進(jìn)行預(yù)處理(包括圖層、屬性字段的拆解,管線空間方位屬性、連接關(guān)系的計(jì)算,邏輯錯(cuò)誤數(shù)據(jù)糾正等),構(gòu)建管線部件模型庫(kù)和拓?fù)湟?guī)則庫(kù)。同時(shí)設(shè)計(jì)并研發(fā)地下管線三維自動(dòng)化建模處理軟件,通過(guò)自動(dòng)化計(jì)算得到管線三維結(jié)構(gòu)重建的關(guān)鍵參數(shù),形成管線三維成果數(shù)據(jù),最后利用SuperMap平臺(tái)進(jìn)行成果展示及應(yīng)用。
現(xiàn)行開(kāi)源三維建模平臺(tái)較多,如OpenSCAD、Art of Illusion、Wings3D等,各有特點(diǎn)。OpenSCAD基于命令行實(shí)現(xiàn),Art of Illusion在于細(xì)分曲面模型,Wings3D易于學(xué)習(xí)。而OpenSceneGraph作為跨平臺(tái)的開(kāi)源三維引擎,基于工業(yè)標(biāo)準(zhǔn)OpenGL軟件接口,實(shí)現(xiàn)了對(duì)OpenGL的完全類封裝,建立了面向?qū)ο蟮目蚣?,程序員可以快速便捷地創(chuàng)建高性能、跨平臺(tái)三維交互圖形程序[3],受到國(guó)內(nèi)外仿真用戶的重視,平臺(tái)采用實(shí)時(shí)建模方式,具有精細(xì)化編輯、效率低、加載慢、穩(wěn)定性低的特點(diǎn)。
包括美國(guó)推出的Google Earth、Skyline、World Wind、ArcGIS pro等以及國(guó)內(nèi)偉景行的CityMaker、武大吉奧的GeoGlobe等[6],主要通過(guò)在三維軟件中制定基礎(chǔ)模型,采用基礎(chǔ)模型關(guān)聯(lián)構(gòu)建的方式進(jìn)行模型展示、瀏覽、編輯等,具有效率高、加載快、編輯麻煩的特點(diǎn)。
綜上所述,兩者各有利弊,本文根據(jù)地下管線的特點(diǎn),充分利用兩種模式的優(yōu)點(diǎn)進(jìn)行三維自動(dòng)化建模,其中管線采用SuperMap自有底層API,以實(shí)時(shí)建模的方式完成,管點(diǎn)采用基礎(chǔ)模型關(guān)聯(lián)的方式構(gòu)建。
管點(diǎn)模型使用Autodesk公司的3dsMax處理,最終生成滿足SuperMap iDesktop展示需求的.sym符號(hào)庫(kù)。模型構(gòu)建包含類別的劃分、尺寸的確定以及紋理的補(bǔ)充三個(gè)方面[4,5]。
按照管點(diǎn)類型劃分為井室、井蓋、附屬物三大類,利用3ds Max進(jìn)行模型建立,對(duì)每一個(gè)模型賦予唯一編碼,為自動(dòng)化建模提供基礎(chǔ)。
尺寸的確定是關(guān)鍵,直接影響展示、分析的效果。模型的尺寸基于關(guān)鍵參數(shù)的設(shè)立,建模之前必須獲取關(guān)鍵參數(shù)。以井室為例,須包含井蓋直徑、井深、井室類型。首先建立關(guān)鍵參數(shù)與管線成果表中字段的對(duì)應(yīng)關(guān)系,形成對(duì)照表,然后通過(guò)映射算法使場(chǎng)景中模型的縮放比例符合實(shí)際。其中有縮放比例需求的附屬物包括人孔井、手孔井等,無(wú)縮放比例需求的附屬物包括監(jiān)控器、發(fā)射塔、電話廳等。最終完成井室模型8個(gè)、井蓋模型14個(gè)、附屬物模型27個(gè)、連接輔助模型3個(gè),合計(jì)52個(gè),構(gòu)建完成管線部件模型庫(kù)。
貼圖的紋理與實(shí)際材質(zhì)類型相對(duì)應(yīng),紋理的像素長(zhǎng)寬尺寸滿足2的N次方要求,并且完全覆蓋模型的所有面片?;A(chǔ)模型編碼和模型庫(kù)構(gòu)建分別如圖1、圖2所示。

圖1 基礎(chǔ)模型編碼 圖2 模型庫(kù)構(gòu)建
自動(dòng)化建模軟件的研發(fā)選擇Windows平臺(tái),采用.Net Framework4.5版本框架,使用微軟公司的Visual Studio集成開(kāi)發(fā)環(huán)境,以C#語(yǔ)言進(jìn)行功能開(kāi)發(fā),開(kāi)發(fā)接口遵照.NET Framework和DBA接口規(guī)范;數(shù)據(jù)的存儲(chǔ)方式為微軟Access關(guān)系型數(shù)據(jù)庫(kù)。
4.1.1 完整性
軟件應(yīng)考慮數(shù)據(jù)處理工作的需要,處理后數(shù)據(jù)應(yīng)能滿足超圖平臺(tái)所需的三維管線數(shù)據(jù)信息。
4.1.2 安全性
地下管線數(shù)據(jù)是國(guó)家和地方基礎(chǔ)性、戰(zhàn)略性的信息資源,軟件提供嚴(yán)格的操作控制和存取控制,保持?jǐn)?shù)據(jù)的安全完整。
4.1.3 擴(kuò)展性
軟件充分考慮未來(lái)變化,設(shè)計(jì)采用組件化GIS平臺(tái)構(gòu)建,滿足未來(lái)擴(kuò)展需要。
4.2.1 數(shù)據(jù)處理與檢查
(1)數(shù)據(jù)處理
按照《城鎮(zhèn)地下管線普查技術(shù)規(guī)程(DB51/T 2276-2016)》《城鎮(zhèn)地下管線普查數(shù)據(jù)規(guī)定(DB51/T 2277-2016)》,對(duì)已有二維地下管線的管線類別進(jìn)行更正、屬性字段進(jìn)行對(duì)照轉(zhuǎn)換為標(biāo)準(zhǔn)字段,數(shù)據(jù)結(jié)構(gòu)如圖3所示。

圖3 數(shù)據(jù)結(jié)構(gòu)
(2)數(shù)據(jù)檢查
實(shí)現(xiàn)對(duì)多種管線拓?fù)湟?guī)則的正確性檢查輸出與處理,保證后續(xù)建模數(shù)據(jù)的正確性。
①數(shù)據(jù)預(yù)檢查
按照《城鎮(zhèn)地下管線普查技術(shù)規(guī)程(DB51/T 2276-2016)》、《城鎮(zhèn)地下管線普查數(shù)據(jù)規(guī)定(DB51/T 2277-2016)》對(duì)數(shù)據(jù)表名及字段名(包含類型、精度等)進(jìn)行檢查。
②數(shù)據(jù)主檢查
檢查項(xiàng)包含邏輯檢查、位置精度檢查、屬性精度檢查、圖庫(kù)聯(lián)動(dòng)檢查,其中邏輯檢查包含要素編碼檢查、管線壓力值、管線材質(zhì)、敷設(shè)方式與線型、敷設(shè)方式與管徑、井室信息等約束性檢查;位置精度檢查包含管點(diǎn)、管線重復(fù)性等拓?fù)漕悪z查、排水管線檢查等;屬性精度檢查包括管點(diǎn)、管線、附屬物與特征等屬性字段的完整性與正確性檢查;圖庫(kù)聯(lián)動(dòng)檢查包含圖庫(kù)統(tǒng)一性檢查、成圖點(diǎn)屬性非空檢查等。
根據(jù)所選檢查項(xiàng),對(duì)數(shù)據(jù)進(jìn)行屬性與拓?fù)潢P(guān)系等檢查,并可將檢查結(jié)果導(dǎo)出,支持檢查日志、檢查報(bào)表以及相關(guān)報(bào)表的生成和導(dǎo)出,如圖4所示。

圖4 數(shù)據(jù)檢查
4.2.2 三維自動(dòng)化建模
(1)假三維數(shù)據(jù)建模
通過(guò)對(duì)管線數(shù)據(jù)的計(jì)算,添加X(jué)、Y、Z三個(gè)維度上的旋轉(zhuǎn)角、縮放比例、模型編碼、顏色編碼等字段信息,使生成的三維管線數(shù)據(jù)符合SuperMap平臺(tái)建模需求。同時(shí)可添加多種自定義勾選選項(xiàng)如井蓋井室的單位是否為米、是否從管點(diǎn)表中獲取管線高程等信息。
(2)真三維數(shù)據(jù)建模
在假三維模型的基礎(chǔ)上,添加實(shí)際的井室模型規(guī)格數(shù)據(jù)字段,可得到與實(shí)際一致的模型,如圖5所示。

圖5 數(shù)據(jù)建模
使用SuperMapiObjects 9D、SuperMapiDesktop 9D、SuperMapiServer 9D產(chǎn)品,其中iObjects作為開(kāi)發(fā)組件,iDesktop作為數(shù)據(jù)加載到三維場(chǎng)景中的桌面平臺(tái),iServer適配WebGL繪圖協(xié)議提供硬件3D加速渲染,支持三維場(chǎng)景的在線發(fā)布;地下管線三維自動(dòng)化建模后,可直觀清晰地掌握管線分布狀況、查看管線位置、查詢管線信息(圖6),計(jì)算管線間距,進(jìn)行管線剖面分析(圖7)、填挖方計(jì)算等,為城市規(guī)劃、管理、智慧城市建設(shè)提供有效解決方案。

圖6 管線信息查詢

圖7 剖面分析
5.2.1 自動(dòng)建模技術(shù)
管線具有幾何不規(guī)則性以及規(guī)格多樣性的特點(diǎn),無(wú)法建立標(biāo)準(zhǔn)的靜態(tài)模型庫(kù)來(lái)進(jìn)行匹配,為了保證管網(wǎng)模擬的準(zhǔn)確性、逼真性和可用性,采用分類設(shè)計(jì)方式,不同類型的模型采用不同的技術(shù)方法建立:
檢索點(diǎn)數(shù)據(jù)表中的關(guān)鍵字確定井室、井蓋、附屬物、連接部件等幾大類管點(diǎn)模型的圖層內(nèi)容。
抽象化的不規(guī)則形體的管點(diǎn)實(shí)體模型:如各種種類的閥門(mén)、水表、消防栓、配電箱、交接箱等。這類模型具有幾何形態(tài)的不變性和表面材質(zhì)紋理的相似性,具有重要的形狀和位置特征,建立一個(gè)三維模型便可以重復(fù)使用。這類實(shí)體模型可以利用對(duì)象的平面底圖數(shù)據(jù)、航空影像或地面攝影影像,在3ds Max等建模軟件中手工建立。
尺寸結(jié)構(gòu)屬性驅(qū)動(dòng)的管點(diǎn)實(shí)體模型:如各種不同型號(hào)的地下井室、蓄水池等。這類模型帶有明顯的底面邊界尺寸信息,是帶有一定厚度、固定方位的規(guī)則體元,如立方體、柱體等。這類實(shí)體模型采用構(gòu)造實(shí)體幾何法來(lái)表達(dá),只需輸入底面尺寸、高度、位置等少量參數(shù)信息即可確定,非常簡(jiǎn)單便捷。
5.2.2 管網(wǎng)自動(dòng)耦合造型法
采用管網(wǎng)自動(dòng)耦合造型法來(lái)實(shí)現(xiàn)管線和管網(wǎng)的設(shè)備(例如閥門(mén),井等)的自動(dòng)耦合??蓪⒐茳c(diǎn)與管線之間按任意角度、連接數(shù)量、管徑大小進(jìn)行無(wú)縫拼接,且算法具有良好的造型能力可擴(kuò)展性,計(jì)算量小,運(yùn)算速度快,結(jié)果精度高,大大縮短了城市管網(wǎng)的建模時(shí)間,提高了系統(tǒng)的性能,同時(shí)保證了管件規(guī)格多樣性的特點(diǎn)。自動(dòng)耦合并不是將管線和管網(wǎng)設(shè)備完全融合為一體,在系統(tǒng)展示時(shí),管線和管網(wǎng)設(shè)備無(wú)縫拼接,以獲得最佳的視覺(jué)效果;在查詢分析時(shí),二者分離,可以獲得更準(zhǔn)確可靠的分析計(jì)算結(jié)果。主要步驟包括節(jié)點(diǎn)埋深處理、坐標(biāo)計(jì)算、模型編譯。
(1)節(jié)點(diǎn)埋深處理
將所有點(diǎn)的埋深平移到管底→確定管點(diǎn)埋深,井深,井脖深,井半徑→若管點(diǎn)為獨(dú)立點(diǎn),尋找該點(diǎn)是不是其他管點(diǎn)的偏心井點(diǎn),如果存在這個(gè)點(diǎn),則埋深值根據(jù)兩點(diǎn)之間的距離和偏心井點(diǎn)相關(guān)的管線來(lái)確定→壓力管道管線的起點(diǎn)和終點(diǎn)埋深做特殊處理。
(2)坐標(biāo)計(jì)算
由點(diǎn)線關(guān)系確定線的方向,起點(diǎn)終點(diǎn)坐標(biāo)等:所有管線的起點(diǎn)和終點(diǎn)坐標(biāo)偏移到管子的中心點(diǎn)→管溝的起點(diǎn)和終點(diǎn)坐標(biāo)設(shè)置在管底→計(jì)算坐標(biāo)的笛卡爾坐標(biāo)值;根據(jù)節(jié)點(diǎn)附屬設(shè)施和特征信息創(chuàng)建管點(diǎn)所需數(shù)據(jù)結(jié)構(gòu);計(jì)算附屬設(shè)施和管點(diǎn)高程的關(guān)系。
(3)模型編譯
管線:生成二維平面坐標(biāo)→二維變換到三維;管點(diǎn)(joint):生成joint參數(shù)→生成mesh;生成箍和法蘭;生成井:生成圓井、酒瓶井、方井等;生成附屬設(shè)施;生成井室:判斷井室上有哪些井→根據(jù)井的屬性信息確定井室的埋深和井室高度→mesh生成;生成矩形管溝。
本文以SuperMap平臺(tái)為基礎(chǔ),定制開(kāi)發(fā)數(shù)據(jù)處理及自動(dòng)化建模軟件,實(shí)現(xiàn)二維基礎(chǔ)管線數(shù)據(jù)一次批量轉(zhuǎn)化為三維管線數(shù)據(jù),并建立系統(tǒng)配置表,對(duì)于管線數(shù)據(jù)字段類型和字段內(nèi)容等數(shù)據(jù)變動(dòng)可通過(guò)配置進(jìn)行彈性適配,建立地下管線三維可視化系統(tǒng),查看區(qū)域內(nèi)管線信息,為道路設(shè)計(jì)、管線施工、管線竣工、專題圖制作等提供數(shù)據(jù)支撐。后續(xù)將根據(jù)實(shí)際情況進(jìn)行添加和修正模型庫(kù),同時(shí)不斷更新數(shù)據(jù)成果,輔助審查管線方案,為審批工作提供決策支撐。