張偉偉,高峰,祝方雄,樂恒
(寧波市規(guī)劃與地理信息中心,浙江寧波 315042)
海量城市三維模型數(shù)據(jù)管理研究與系統(tǒng)實(shí)現(xiàn)
張偉偉*,高峰,祝方雄,樂恒
(寧波市規(guī)劃與地理信息中心,浙江寧波 315042)
三維數(shù)字城市建設(shè)持續(xù)推進(jìn),城市三維模型數(shù)據(jù)規(guī)模日趨龐大,如何高效管理海量三維模型數(shù)據(jù)是當(dāng)前亟須解決的問題。本文闡述了三維模型數(shù)據(jù)管理的研究現(xiàn)狀,并結(jié)合寧波市實(shí)際,設(shè)計(jì)并實(shí)現(xiàn)了3ds Max模型數(shù)據(jù)管理系統(tǒng)。實(shí)踐證明,系統(tǒng)能夠大幅提高3ds Max模型數(shù)據(jù)管理效率。
城市三維模型;3ds Max模型;數(shù)據(jù)管理系統(tǒng);數(shù)據(jù)組織與管理
隨著“智慧城市”建設(shè)不斷推進(jìn),基于地圖的智慧應(yīng)用層出不窮,傳統(tǒng)的二維數(shù)字地圖已經(jīng)不能滿足城市三維空間管理的需要,建立三維“數(shù)字城市”成為科學(xué)界、企業(yè)界和城市政府管理部門共同追求的目標(biāo)[1]。三維地理信息技術(shù)已廣泛應(yīng)用于國土、規(guī)劃、應(yīng)急等領(lǐng)域,各相關(guān)部門根據(jù)自身應(yīng)用需求開展了三維地理信息系統(tǒng)建設(shè)。三維地理信息模型是三維地理信息系統(tǒng)的核心,三維地理信息系統(tǒng)建設(shè)如火如荼,但三維地理信息模型的可持續(xù)管理與更新一直被忽略。據(jù)筆者了解,當(dāng)前國內(nèi)大規(guī)模三維地理信息模型生產(chǎn)以3ds Max軟件占據(jù)主導(dǎo)地位,隨著信息化建設(shè)的不斷擴(kuò)展與深入,各部門已經(jīng)積累了海量3ds Max數(shù)據(jù),數(shù)據(jù)規(guī)模達(dá)到了幾百GB級甚至TB級,如何高效的管理海量3ds Max模型是當(dāng)前三維數(shù)字城市建設(shè)亟須解決的問題。
從上個(gè)世紀(jì)90年代以來,國內(nèi)眾多學(xué)者圍繞著三維地理信息模型數(shù)據(jù)標(biāo)準(zhǔn)、數(shù)據(jù)建模方法、數(shù)據(jù)應(yīng)用等方面開展了相關(guān)研究,研究成果頗為豐富。孫敏等[2]從三維模型理論角度進(jìn)行較詳細(xì)的評述,指出其目前存在的問題。高山等[3]系統(tǒng)總結(jié)了三維模型數(shù)據(jù)的建模方法及現(xiàn)行主要標(biāo)準(zhǔn)。三維模型顯示速度研究主要集中在數(shù)據(jù)組織及設(shè)計(jì)優(yōu)化[4,5],空間索引優(yōu)化方法[6]。馮琰等[7]以上海市三維地理信息系統(tǒng)為例,介紹了三維模型數(shù)據(jù)庫管理方法以及數(shù)據(jù)庫管理系統(tǒng)的功能模塊。綜上所述,近年來眾多學(xué)者在面向特定應(yīng)用平臺的三維地理信息模型管理與應(yīng)用方面進(jìn)行了較為深入的研究,并提供了較為有效的解決方案,但鮮有文獻(xiàn)涉及海量3ds Max模型數(shù)據(jù)管理。
筆者充分吸收已有研究成果,并借鑒成熟的二維空間數(shù)據(jù)管理解決方案,結(jié)合寧波市三維地理信息共享服務(wù)平臺建設(shè)實(shí)際,探討了寧波市3ds Max模型數(shù)據(jù)組織與管理方法,并在此基礎(chǔ)上設(shè)計(jì)研發(fā)了3ds Max模型數(shù)據(jù)管理系統(tǒng)。
由于三維地理信息模型數(shù)據(jù)結(jié)構(gòu)較為復(fù)雜、數(shù)據(jù)量較大,而3ds Max建模軟件承載數(shù)據(jù)量有限,寧波市3ds Max模型按照行政區(qū)劃-社區(qū)-區(qū)塊多級層級方式進(jìn)行組織,每個(gè)行政區(qū)劃、社區(qū)、區(qū)塊都有其唯一對應(yīng)的空間范圍,如圖1所示。
圖1 空間索引表
3ds Max模型數(shù)據(jù)管理主要有兩類需求:①數(shù)據(jù)更新:數(shù)據(jù)發(fā)生變更時(shí)以區(qū)塊為基本單元進(jìn)行數(shù)據(jù)更新,同時(shí)保留歷史數(shù)據(jù),建立版本管理。②數(shù)據(jù)導(dǎo)出:能夠按照不同區(qū)域?qū)С?ds Max模型數(shù)據(jù)的現(xiàn)狀與歷史版本。
傳統(tǒng)的3ds Max數(shù)據(jù)更新與數(shù)據(jù)導(dǎo)出是通過手動(dòng)方式實(shí)現(xiàn),先使用系統(tǒng)自帶的檢索功能定位到對應(yīng)的區(qū)塊數(shù)據(jù),數(shù)據(jù)更新時(shí)將歷史文件改名保留其版本,現(xiàn)狀區(qū)塊移動(dòng)至區(qū)塊所在文件目錄下,數(shù)據(jù)導(dǎo)出時(shí)將區(qū)塊對應(yīng)的現(xiàn)狀與歷史版本一并拷貝至目標(biāo)文件夾,這種數(shù)據(jù)更新與管理方法在處理單個(gè)區(qū)塊的數(shù)據(jù)更新與導(dǎo)出時(shí)效率尚可,但實(shí)際更新與管理中是往往是多個(gè)區(qū)塊(數(shù)據(jù)范圍大時(shí)可達(dá)上百個(gè)區(qū)塊)的更新與導(dǎo)出,采用手動(dòng)更新方式效率低下。因此,筆者借鑒二維矢量數(shù)據(jù)管理思路,建立模型索引圖與區(qū)塊模型文件的關(guān)聯(lián)關(guān)系,即將模型文件所在的物理位置作為模型索引圖的屬性,建立兩者之間的一一對應(yīng)關(guān)系,以模型索引圖作為數(shù)據(jù)更新與導(dǎo)出的統(tǒng)一出入口,創(chuàng)建可視化、互操作更新與管理,能夠?qū)崿F(xiàn)3ds Max模型數(shù)據(jù)的批量更新與導(dǎo)出。
3.1總體框架
系統(tǒng)采用c/s架構(gòu),運(yùn)行在政務(wù)內(nèi)網(wǎng),邏輯上分為四層:數(shù)據(jù)層、組件層、功能層、應(yīng)用層,數(shù)據(jù)層調(diào)用3ds Max文件庫與業(yè)務(wù)數(shù)據(jù)庫并實(shí)現(xiàn)兩者之間的關(guān)聯(lián),組件層使用ArcEngine與3ds Max組件技術(shù),功能層針對數(shù)據(jù)更新與管理人員的需求提供了質(zhì)量檢查、數(shù)據(jù)更新、數(shù)據(jù)檢索、數(shù)據(jù)下載、版本管理等功能,使數(shù)據(jù)更新與管理人員在統(tǒng)一的模型空間索引表上實(shí)現(xiàn)數(shù)據(jù)高效更新與管理,如圖2所示。
圖2 系統(tǒng)總體架構(gòu)
3.2數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)庫分為兩類:3ds Max文件數(shù)據(jù)庫和業(yè)務(wù)數(shù)據(jù)庫,兩者存儲(chǔ)在同一臺服務(wù)器上。
3ds Max文件數(shù)據(jù)庫:按照行政區(qū)劃-社區(qū)-區(qū)塊四級層次結(jié)構(gòu)進(jìn)行組織,每個(gè)區(qū)塊文件夾由max模型及對應(yīng)的紋理組成。
業(yè)務(wù)數(shù)據(jù)庫:模型空間索引表實(shí)現(xiàn)了區(qū)塊接圖表與文件庫的關(guān)聯(lián),格式為通用的shapefile格式,可根據(jù)模型空間索引圖可以直接定位區(qū)塊物理位置、便于數(shù)據(jù)檢索,除此之外,根據(jù)業(yè)務(wù)需要?jiǎng)?chuàng)建一系列業(yè)務(wù)表,包括Catalog_Tree(目錄樹)、Max_Base_Info(max基本信息表)、Max_Version_Info(max版本信息表)等,數(shù)據(jù)表之間的關(guān)系圖3所示。
圖3 E-R模型圖
3.3功能設(shè)計(jì)
系統(tǒng)主要面向?qū)ο笫菙?shù)據(jù)更新與管理人員,設(shè)計(jì)時(shí)充分考慮了用戶操作的通用性與便捷性,采用圖形化管理方式,主界面如圖4所示。
圖4 系統(tǒng)主界面
(1)質(zhì)量檢查模塊
三維模型質(zhì)量檢查應(yīng)從模型幾何和屬性精度兩個(gè)方面綜合分析[8]。本文按照寧波地方標(biāo)準(zhǔn)從文件組織結(jié)構(gòu)及命名、貼圖尺寸以及空間數(shù)據(jù)一致性等方面,建立了可配置的質(zhì)量檢查規(guī)則,并能夠?qū)z測結(jié)果按照上述選項(xiàng)導(dǎo)出為excel格式,保障3ds Max模型數(shù)據(jù)質(zhì)量,主要包括以下功能模塊:
①文件組織結(jié)構(gòu)及命名檢查:檢查3ds Max模型組織結(jié)構(gòu)是否按照行政區(qū)劃-社區(qū)-區(qū)塊模式進(jìn)行組織;檢查當(dāng)前更新區(qū)塊名稱與模型空間索引表中區(qū)塊名稱是否一致;檢查紋理命名是否符合規(guī)范。
②圖片尺寸檢查:檢查模型紋理尺寸是否為2的N次方。
③數(shù)據(jù)空間一致性檢查:檢查當(dāng)前更新的區(qū)塊模型是否落在對應(yīng)的模型空間索引表范圍內(nèi),如圖5所示。
圖5 質(zhì)量檢查界面
(2)數(shù)據(jù)更新模塊
系統(tǒng)建立了可視化、交互性強(qiáng)的更新界面,通過建立模型索引表與區(qū)塊模型物理文件的關(guān)聯(lián),使3ds Max區(qū)塊更新能自動(dòng)批量完成,具體設(shè)計(jì)思路是:①系統(tǒng)根據(jù)更新的區(qū)塊名稱從模型空間索引表中檢索到該區(qū)塊對應(yīng)的物理文件位置。②找到區(qū)塊對應(yīng)的物理位置后,系統(tǒng)自動(dòng)將歷史區(qū)塊文件改名(改名方法是區(qū)塊文件夾名稱+當(dāng)前更新時(shí)間),更新文件作為當(dāng)前文件。③更新后自動(dòng)觸發(fā)sql server業(yè)務(wù)數(shù)據(jù)庫的max版本信息表更新,更新對應(yīng)區(qū)塊的版本信息,如圖6所示。
圖6 數(shù)據(jù)更新界面
(3)數(shù)據(jù)檢索模塊
系統(tǒng)提供了準(zhǔn)確、高效、便捷的數(shù)據(jù)檢索功能供數(shù)據(jù)管理人員使用,主要有以下3種方式:①目錄定位:系統(tǒng)提供多級目錄樹功能,可以根據(jù)目錄樹按照行政區(qū)劃-社區(qū)-區(qū)塊逐級定位至目標(biāo)區(qū)塊。②按屬性檢索:可以通過sql語句快速查詢選擇模型數(shù)據(jù),檢索字段包括社區(qū)名稱、區(qū)塊名稱、入庫時(shí)間等。③按照按空間范圍檢索:用戶可以加載shp、mdb等數(shù)據(jù)源,或通過系統(tǒng)界面自定義勾繪空間范圍,通過選擇空間范圍與模型空間索引圖的空間關(guān)系,選定特定范圍的區(qū)塊文件。以上3種方式都提供鼠標(biāo)右鍵直接打開對應(yīng)的區(qū)塊3ds Max文件功能。
(4)數(shù)據(jù)下載模塊
數(shù)據(jù)管理人員檢索到對應(yīng)數(shù)據(jù)后需要將數(shù)據(jù)下載到本地,系統(tǒng)提供了數(shù)據(jù)下載功能,主要有以下3種方式:①直接從目錄樹點(diǎn)擊鼠標(biāo)右鍵下載。②通過模型空間索引表右鍵下載一個(gè)或多個(gè)區(qū)塊文件。③通過空間查詢或?qū)傩圆樵儗z索結(jié)果一鍵式下載,并且可選擇入庫時(shí)間、文件格式(max、3ds、osg)、版本進(jìn)行過濾下載,如圖7所示。
圖7 數(shù)據(jù)下載功能界面
(5)版本管理模塊
數(shù)據(jù)管理人員需要對各區(qū)塊的更新狀態(tài)進(jìn)行管理,并可以追溯各區(qū)塊的歷史數(shù)據(jù),系統(tǒng)在后臺業(yè)務(wù)數(shù)據(jù)庫中建立了max版本信息表,在區(qū)塊版本發(fā)生變化時(shí)動(dòng)態(tài)更新此表,同時(shí)數(shù)據(jù)檢索及導(dǎo)出等功能根據(jù)此表可檢索區(qū)塊歷史版本信息。
(6)系統(tǒng)管理模塊
為保障數(shù)據(jù)的安全性,系統(tǒng)建立了健全的用戶權(quán)限管理機(jī)制,主要分為用戶管理、模型文件庫權(quán)限及安全權(quán)限管理,對不同的模型文件庫、不同的用戶設(shè)置不同的管理權(quán)限(建庫、更新、瀏覽、查詢、導(dǎo)出等),以保障模型文件庫的安全性。
為驗(yàn)證系統(tǒng)的計(jì)算效率,筆者選取3組數(shù)據(jù)進(jìn)行分析,主要評估系統(tǒng)的數(shù)據(jù)更新及下載效率,實(shí)驗(yàn)結(jié)果如表1所示:
數(shù)據(jù)更新下載效率比較 表1
實(shí)驗(yàn)結(jié)果表明在區(qū)塊數(shù)量較少的情況下,系統(tǒng)更新下載效率相對于手動(dòng)更新下載方式并沒有表現(xiàn)出明顯的提升,當(dāng)區(qū)塊數(shù)量較多時(shí),系統(tǒng)更新下載效率明顯優(yōu)于手動(dòng)方式。此外,系統(tǒng)提供的圖形化管理功能能夠?qū)崿F(xiàn)一鍵式數(shù)據(jù)更新與下載,不需要人工干預(yù)。
基于本文思路研發(fā)的3ds Max模型數(shù)據(jù)管理系統(tǒng)替代了原有手動(dòng)更新與管理模式,保障了數(shù)據(jù)安全性與準(zhǔn)確性,大幅提高了數(shù)據(jù)更新、查詢、下載效率,同時(shí)建立了有效的歷史數(shù)據(jù)管理模式,整體上提升了3ds Max模型數(shù)據(jù)管理水平。下一步筆者計(jì)劃繼續(xù)完善該系統(tǒng),重點(diǎn)是完善3ds Max數(shù)據(jù)質(zhì)量檢查功能,如增加檢測模型冗余貼圖、模型缺少貼圖等功能。
[1]李宗華,黃新,趙中元等.武漢市三維數(shù)字地圖系統(tǒng)建設(shè)與應(yīng)用示范[J].地理空間信息,2010,8(3):1~4.
[2]孫敏,馬藹乃,陳軍.三維城市模型的研究現(xiàn)狀評述[J].遙感學(xué)報(bào),2002,6(2):155~160.
[3]高山,陳思.城市三維建模技術(shù)與標(biāo)準(zhǔn)研究[J].測繪通報(bào),2013(3):95~97.
[4]朱國敏,馬照亭,孫隆祥等.城市三維地理信息系統(tǒng)中海量數(shù)據(jù)的數(shù)據(jù)庫組織與管理[J].測繪科學(xué),2008,33 (1):238~240.
[5]李道遠(yuǎn),李英成,肖金城.大范圍城市三維模型管理技術(shù)研究[J].測繪科學(xué),2011,36(5):70~72.
[6]梁建國,李峰.城市三維GIS中的海量數(shù)據(jù)組織方法[J].測繪科學(xué),2012,37(6):91~93.
[7]馮琰,郭容寰,汪旻琦等.三維城市模型數(shù)據(jù)組織與管理方法研究[J].測繪科學(xué),2011,36(1):215~217.
[8]姚蘇芩,盧天舒.三維模型數(shù)據(jù)的質(zhì)量分析與控制方法研究[J].測繪標(biāo)準(zhǔn)化,2011(1):24~26.
Research and System Implementation on Management of the Massive Urban Three-dimensional Modeling Data
Zhang Weiwei,Gao Feng,Zhu Fangxiong,Le Heng
(Ningbo Planning&Geography Information Center,Ningbo 315042,China)
Three-dimensional digital city construction continues to advance,the scale of the city's three-dimensional modeling data is increasingly large,how to effectively manage the massive three-dimensional modeling data is an urgent problem to be solved.This paper describes the present situation on the three-dimensional modeling data management,combined with the management practice in Ningbo City,designed and implemented 3ds Max modeling data management system.Practice has proved that the system can greatly improve the efficiency of data management on 3ds Max modeling data.
urban three-dimensional modeling data;3ds Max modeling data;data management system;data organization and management
1672-8262(2016)04-61-04
P208.1
B
2016—04—08
張偉偉(1985—),男,工程師,碩士,現(xiàn)主要從事地理空間數(shù)據(jù)管理、空間數(shù)據(jù)挖掘與應(yīng)用研究工作。