胡開(kāi)全,張燕
(重慶市勘測(cè)院,重慶 400020)
隨著地理信息技術(shù)和數(shù)字地圖的應(yīng)用越來(lái)越深入、廣泛,迫切需要數(shù)字地圖直接為地理信息系統(tǒng)提供基礎(chǔ)空間數(shù)據(jù),滿足空間數(shù)據(jù)建庫(kù)的要求。而數(shù)字地圖軟件由于側(cè)重點(diǎn)不同,大多不能完全解決生產(chǎn)中制圖效果與GIS數(shù)據(jù)的沖突問(wèn)題。部分軟件滿足了地圖圖式要求,有較好的成圖表達(dá)效果,但是忽略了空間數(shù)據(jù)的生產(chǎn)和利用,沒(méi)有考慮到數(shù)字地圖的進(jìn)一步利用和向GIS數(shù)據(jù)的轉(zhuǎn)換;而一些國(guó)外的軟件如ArcGIS具有強(qiáng)大的地理屬性管理能力,但是其重心不是地圖生產(chǎn),而是空間數(shù)據(jù)的分析應(yīng)用,地圖制圖能力相對(duì)較弱。
系統(tǒng)平臺(tái)基于美國(guó)BENTLEY SYSTEM公司的Microstation V8軟件進(jìn)行開(kāi)發(fā)。該平臺(tái)較多地應(yīng)用在測(cè)繪、建筑、交通、電訊和市政等設(shè)計(jì)領(lǐng)域,是行業(yè)管理解決方案的基礎(chǔ)平臺(tái)。平臺(tái)不僅有強(qiáng)大的繪圖和設(shè)計(jì)功能,靈活的操作界面,同時(shí)還提供了各種界面定制和二次開(kāi)發(fā)手段。而且還一個(gè)平臺(tái)支持多種文件格式,可以直接對(duì)DGN和DWG文件進(jìn)行編輯處理。
Microstation V8二次開(kāi)發(fā),選擇Virsual C++6.0,結(jié)合Microstation MDL,可方便地調(diào)用所有操作系統(tǒng)級(jí)的功能,如COM、ADO、ActiveX等;利用MDL運(yùn)行于Microstation內(nèi)部的特點(diǎn),實(shí)現(xiàn)與Microstation系統(tǒng)進(jìn)行通信相關(guān)的功能,對(duì)于復(fù)雜的計(jì)算量大的程序,在性能上會(huì)有較大的提升;利用Visual Studio提供的直觀而強(qiáng)大的調(diào)試程序功能對(duì)程序進(jìn)行調(diào)試。
Microstation具有強(qiáng)大的符號(hào)制作功能,可以靈活方便地自定義各種單元、線型,支持面域填充,提供了用戶建立符號(hào)庫(kù)的工具,滿足繪制地圖上點(diǎn)狀、線狀、面狀符號(hào)的要求。但由于其更傾向于繪圖功能,并不能完全滿足數(shù)據(jù)建庫(kù)的要求。
利用其符號(hào)化定義功能,可以解決一部分要素既滿足制圖效果又滿足GIS數(shù)據(jù)要求。對(duì)于不能滿足GIS數(shù)據(jù)要求的其他要素,采用“骨架線+構(gòu)造數(shù)據(jù)”的方式,由程序控制兩種數(shù)據(jù)同步繪制和實(shí)現(xiàn)一體化管理。
以繪制依比例公路橋?yàn)槔?
(1)對(duì)于線狀要素的符號(hào)化,通過(guò)V8的線型庫(kù)預(yù)定義來(lái)實(shí)現(xiàn)。線狀符號(hào)可以通過(guò)自定義線型來(lái)設(shè)計(jì)繪制。線型的定義通過(guò)線型編輯器來(lái)完成,它的用戶自定義線型功能很強(qiáng),用戶可以控制線型中點(diǎn)劃線和間隔的長(zhǎng)度、實(shí)現(xiàn)自動(dòng)符號(hào)放置、進(jìn)行線的偏移、線寬度和顏色設(shè)置等。這樣,幾乎可以設(shè)計(jì)出需要的任何線型,使得用一個(gè)單獨(dú)的元素就可以表達(dá)一個(gè)復(fù)雜的地圖線狀符號(hào),有利于線狀符號(hào)的繪制、編輯和提取。自定義的線型存放在線型庫(kù)文件中。在全要素配置庫(kù)里,為線狀要素設(shè)置‘線型名’屬性,在繪制要素的時(shí)候,賦予此屬性即可實(shí)現(xiàn)自動(dòng)符號(hào)化效果。
(2)對(duì)于不依比例的單元符號(hào),通過(guò)V8的單元庫(kù)預(yù)定義來(lái)實(shí)現(xiàn)。Microstation中主要使用的是圖形單元和點(diǎn)單元這兩種類型。圖形單元具有層獨(dú)立性,即放置單元時(shí),單元的組成元素所在的層是由設(shè)計(jì)制作單元時(shí)單元所在的層決定的。放置后單元的組成元素的屬性與產(chǎn)生單元時(shí)元素屬性相同,這種類型的單元在旋轉(zhuǎn)視圖時(shí)會(huì)跟著一起旋轉(zhuǎn)。點(diǎn)單元放置時(shí),單元的屬性采用當(dāng)前激活的屬性(圖層、顏色、線型、線寬),單元不隨視圖一起旋轉(zhuǎn)。在全要素配置庫(kù)里,每種要素都有自己指定的圖層、顏色、線寬等屬性,所以在制作單元庫(kù)時(shí),統(tǒng)一使用點(diǎn)單元的方式。在配置庫(kù)里給要素指定單元名稱的屬性,并在繪制時(shí)調(diào)用,為單元指定該要素對(duì)應(yīng)的層,色等基本屬性。
(3)對(duì)于一點(diǎn)定位一點(diǎn)定向的符號(hào),通過(guò)程序利用骨架線+符號(hào)要素的方式,對(duì)符號(hào)庫(kù)的要素進(jìn)行旋轉(zhuǎn)繪制。在配置庫(kù)里給要素指定單元名稱的屬性,并在繪制時(shí)調(diào)用該單元符號(hào),鎖定原始比例,根據(jù)兩點(diǎn)構(gòu)成的骨架線來(lái)確定該單元符號(hào)的旋轉(zhuǎn)角度。
(4)對(duì)于一點(diǎn)定位一點(diǎn)定尺寸的符號(hào),通過(guò)程序利用骨架線+符號(hào)要素的方式,對(duì)符號(hào)庫(kù)的要素進(jìn)行旋轉(zhuǎn)和縮放繪制。在配置庫(kù)里給要素指定單元名稱的屬性,并在繪制時(shí)調(diào)用該單元符號(hào),根據(jù)兩點(diǎn)構(gòu)成的骨架線來(lái)確定該單元符號(hào)的旋轉(zhuǎn)角度以及符號(hào)放大或縮小的尺寸。比如依比例的液體、氣體儲(chǔ)存設(shè)備的符號(hào),如果符號(hào)定位點(diǎn)在中心的話,那么骨架線的長(zhǎng)度就是繪制成圖后設(shè)備符號(hào)的半徑。
(5)對(duì)于面狀,且有面中心注記的要素,通過(guò)編程,以面為骨架線+注記為構(gòu)造要素的方式繪制。在配置庫(kù)里給要素指定該要素自帶注記的字體、字寬、字高等屬性,采集該類要素時(shí),采集界面會(huì)提示輸入注記內(nèi)容,可以選擇輸入或空內(nèi)容。繪制成的文本注記將和面具有同樣的層、色等屬性,并且依附于面存在。
(6)對(duì)于面狀,且面內(nèi)有單個(gè)符號(hào)的要素,通過(guò)編程,以面為骨架線、符號(hào)為構(gòu)造要素的方式繪制。在配置庫(kù)里給要素指定單元符號(hào)名稱,當(dāng)該類要素的面邊界采集結(jié)束后,會(huì)自動(dòng)將指定的單元符號(hào)放置到面心的位置,該單元依附于面存在,但可以自由拖動(dòng)。
(7)對(duì)于面狀,且面內(nèi)有多個(gè)符號(hào)填充的要素,通過(guò)編程,以面為骨架線、填充符號(hào)為構(gòu)造要素的方式繪制。在配置庫(kù)里給要素指定單元符號(hào)名稱、填充行間距、列間距,當(dāng)該類要素的面邊界采集結(jié)束后,符號(hào)化模塊會(huì)自動(dòng)用指定的單元符號(hào)填充面,填充后的所有單元符號(hào)都依附于面存在,但可以各自自由拖動(dòng)或者刪除。
(8)對(duì)于四點(diǎn)定位或多點(diǎn)定位的面或閉合線要素,如人行橋、地下出入口等,對(duì)要素的符號(hào)化進(jìn)行統(tǒng)一的編碼,通過(guò)程序識(shí)別,進(jìn)行構(gòu)造數(shù)據(jù)的繪制,而以邊界線為骨架數(shù)據(jù)。對(duì)于此類要素,在全要素配置庫(kù)里定義了專門的符號(hào)編碼表,在表中對(duì)自定義符號(hào)化方案利用解析語(yǔ)言進(jìn)行表述。在要素屬性表里有調(diào)用的ID號(hào),由符號(hào)化模塊進(jìn)行分析繪制,實(shí)現(xiàn)拖動(dòng)骨架線,要素自動(dòng)重新繪制。
(9)對(duì)于一些相對(duì)復(fù)雜的特例要素,如依比例斜坡陡崖、臺(tái)階等。也是利用骨架線+構(gòu)造數(shù)據(jù)的方式繪制。在配置庫(kù)里定義了繪制參數(shù),比如斜坡齒線間距,臺(tái)階間距等,在程序中定制繪制功能函數(shù)號(hào)調(diào)用。
根據(jù)壓蓋優(yōu)先級(jí)的配置,自動(dòng)處理對(duì)各類要素的壓蓋與被壓蓋關(guān)系,實(shí)現(xiàn)壓蓋中數(shù)據(jù)無(wú)損裁切;支持要素在圖邊的裁切,既保證制圖效果,又保證數(shù)據(jù)的完整性;以配置數(shù)據(jù)庫(kù)方式實(shí)現(xiàn)要素屬性和擴(kuò)展屬性的管理,修改要素屬性,要素自動(dòng)將改動(dòng)反映到圖形表示上,實(shí)現(xiàn)圖形與屬性一致性。通過(guò)以上多項(xiàng)智能處理輔助技術(shù),以更完美地實(shí)現(xiàn)制圖效果與GIS數(shù)據(jù)要求的統(tǒng)一。
融合GIS數(shù)據(jù)的空間特征與CAD數(shù)據(jù)的形態(tài)特征,要素的圖形表示自動(dòng)跟隨屬性而變化,實(shí)現(xiàn)圖形和屬性一體化,保證了要素的完整性和GIS建庫(kù)要求。解決了需要生產(chǎn)兩套數(shù)據(jù)分別滿足制圖效果和GIS數(shù)據(jù)要求的難題,實(shí)現(xiàn)了“一套數(shù)據(jù)、兩種用途”,為信息化測(cè)繪提供了良好的基礎(chǔ)和支持。
[1]趙偉,張翔宇.MicroStation V8中文版實(shí)用手冊(cè)[M].北京:清華大學(xué)出版社,2002
[2]宋關(guān)福,王爾琪.MicroStation開(kāi)發(fā)語(yǔ)言(MDI)應(yīng)用教程[M].北京:科學(xué)出版社,1996
[3]孫紅春.基礎(chǔ)地理信息系統(tǒng)的空間數(shù)據(jù)規(guī)范與組織結(jié)構(gòu)[J].同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版),2001(8)
[4]王殿坤,王峰.GIS建庫(kù)與地圖制圖一體化解決方案的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪與空間地理信息,2010(2)
[5]李云嶺,靳奉祥,季民.數(shù)字測(cè)圖與GIS建庫(kù)的關(guān)系研究[J].測(cè)繪通報(bào),2004(2)
[6]高俊.地理空間數(shù)據(jù)的可視化[J].測(cè)繪工程,2000(3)
[7]龍毅,沈婕,周衛(wèi).GIS空間數(shù)據(jù)的分析與制圖一體化策略[J].測(cè)繪科學(xué)技術(shù)學(xué)報(bào),2006(4)