牛宵
摘 要:地圖符號(hào)是地圖語(yǔ)言的重要組成部分,是可視化表達(dá)空間地理信息的基礎(chǔ)工具。本文主要研究了山東省1∶50 000 DLG數(shù)據(jù)地圖符號(hào)庫(kù)的設(shè)計(jì)、制作及自動(dòng)符號(hào)化的實(shí)現(xiàn)方法,并以ArcMap為平臺(tái),通過(guò)ArcOjects組件二次開(kāi)發(fā)的方式,建立1∶50 000標(biāo)準(zhǔn)地形圖制圖系統(tǒng)。系統(tǒng)可以實(shí)現(xiàn)快速自動(dòng)制圖及輸出,有效提高了數(shù)據(jù)的規(guī)范化管理和社會(huì)化信息共享服務(wù),具有極其重要的應(yīng)用推廣價(jià)值。
關(guān)鍵詞:1∶50 000數(shù)字線劃圖(DLG)數(shù)據(jù);地圖符號(hào)庫(kù);自動(dòng)符號(hào)化;ArcObjects
中圖分類(lèi)號(hào):P208 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1003-5168(2019)25-0022-03
Realization of the Method of Automated Symbolization
for 1∶50 000 DLG Data
NIU Xiao
(Shandong Provincial Institute of Land Surveying and Mapping,Jinan Shandong 250013)
Abstract: Map symbol is an important part of map language and is also a basic tool for visualization of spatial geographic information. This paper studied the design and implementation method of map symbols database and automated symbolization based on 1∶50 000 DLG data of Shandong Province. And we successfully established a standard topographic mapping system which runs on ArcMap platform through secondary development of the ArcObjects component. This system can realize rapidly and automated mapping and output which can effectively improve the standardized management for data and sharing service for information of socialization, and it has the value of popularization.
Keywords: 1∶50 000 DLG data;map symbols database;automated symbolization;ArcObjects
數(shù)字線劃圖數(shù)據(jù)(Digital Line Graphic,DLG)是基礎(chǔ)測(cè)繪數(shù)據(jù)中一種重要的產(chǎn)品形式,應(yīng)用領(lǐng)域十分廣泛。目前,全國(guó)最新的1∶50 000 DLG數(shù)據(jù)采用建庫(kù)的點(diǎn)、線、面形式進(jìn)行存儲(chǔ),對(duì)于非專(zhuān)業(yè)人士或需要地形圖成果的用戶(hù)則不適用。建立1∶50 000 DLG數(shù)據(jù)自動(dòng)符號(hào)化系統(tǒng),可以極大提高制圖效率,縮短制圖周期,不僅能滿足為社會(huì)各行業(yè)提供新的數(shù)據(jù)表達(dá)形式,而且能快速為應(yīng)急突發(fā)事件提供地圖成果。
隨著計(jì)算機(jī)技術(shù)和全球信息網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,計(jì)算機(jī)制圖技術(shù)日新月異,ArcGIS作為一個(gè)成熟的、功能強(qiáng)大的、穩(wěn)定性高的GIS軟件,對(duì)外開(kāi)放了幾乎全部底層GIS功能的組件集ArcObjects,為GIS開(kāi)發(fā)提供了前所未有的靈活性。目前,采用ArcObjects進(jìn)行二次開(kāi)發(fā)構(gòu)建系統(tǒng)的技術(shù)已經(jīng)十分成熟,同時(shí)對(duì)ArcGIS制圖的研究資料也不計(jì)其數(shù)。例如,顧華奇和江文琴[1]研究了基于ArcSDE建庫(kù)的1∶1萬(wàn)DLG數(shù)據(jù)庫(kù)自動(dòng)符號(hào)化技術(shù);王戰(zhàn)舉和范玉茹[2]闡述了ArcEngine環(huán)境下供水管網(wǎng)地理信息系統(tǒng)地圖符號(hào)庫(kù)設(shè)計(jì)與制作的實(shí)現(xiàn)方法;張鵬程和陳夏宮[3]探索了一條ArcGIS平臺(tái)符號(hào)化DLG數(shù)據(jù)的新途徑。這些研究及應(yīng)用大部分是基于ArcEngine平臺(tái)實(shí)現(xiàn)的,而通過(guò)ArcMap桌面開(kāi)發(fā)實(shí)現(xiàn)系統(tǒng)功能的研究及應(yīng)用較少。依托于ArcMap平臺(tái)建立系統(tǒng)可以節(jié)約構(gòu)建系統(tǒng)功能界面以及開(kāi)發(fā)ArcGIS Desktop已有功能的時(shí)間,特別是對(duì)1∶50 000 DLG數(shù)據(jù)自動(dòng)符號(hào)化后的成果進(jìn)行后期精編時(shí),可以直接使用數(shù)據(jù)處理、制圖表達(dá)等功能,實(shí)現(xiàn)更好的制圖效果。
1 系統(tǒng)設(shè)計(jì)
1.1 軟件環(huán)境
系統(tǒng)軟件包括ARCGIS Desktop 9.3,F(xiàn)ont Creator5.6,Arcobject,VS.net2008。
1.2 實(shí)現(xiàn)流程
系統(tǒng)的功能主要分為四個(gè)方面:①符號(hào)庫(kù)的制作;②1∶50 000 DLG數(shù)據(jù)的自動(dòng)符號(hào)化;③圖外整飾添加;④地圖輸出。實(shí)現(xiàn)流程具體可以細(xì)分為以下幾個(gè)步驟:數(shù)據(jù)預(yù)處理、打開(kāi)制圖工程、添加DLG數(shù)據(jù)并固定顯示比例尺、自動(dòng)符號(hào)化、添加圖外整飾和制圖輸出。
1.3 符號(hào)庫(kù)設(shè)計(jì)
地圖符號(hào)由形狀不同、大小不一、色彩有別的圖形或文字組成,不僅能表示地理事物的空間位置、形狀、質(zhì)量和數(shù)量等特征,而且可以表達(dá)各事物之間的相互聯(lián)系及區(qū)域總體特征[4]。地圖符號(hào)庫(kù)的設(shè)計(jì)及建立在地理制圖及GIS中具有重要地位。
ArcMap擁有完整的符號(hào)管理系統(tǒng),符號(hào)庫(kù)為Style文件,一個(gè)Style文件包括了22個(gè)符號(hào)子庫(kù)。
本系統(tǒng)中Style文件中只需要用到Marker Symbols、Line Symbols、Fill Symbols、Text Symbols四個(gè)符號(hào)子庫(kù)。其中,前三個(gè)字庫(kù)中存放幾何要素對(duì)應(yīng)的圖形表達(dá)符號(hào),Text Symbols中存放注記字體的信息,包括字體的大小、顏色和字形等。
2 系統(tǒng)實(shí)現(xiàn)
2.1 平臺(tái)搭建
ArcGIS提供了強(qiáng)大的開(kāi)發(fā)工具。本系統(tǒng)以ArcMap為平臺(tái),使用C#.net語(yǔ)言通過(guò)ArcOject組件的二次開(kāi)發(fā),生成dll文件,實(shí)現(xiàn)ArcGIS桌面擴(kuò)展。
2.2 符號(hào)庫(kù)制作
ArcGIS中,符號(hào)庫(kù)通過(guò)符號(hào)管理器(Style Manager)來(lái)管理,可以進(jìn)行符號(hào)庫(kù)的添加、刪除、新建等。
Style文件中的各類(lèi)符號(hào)制作可以通過(guò)四種方式:①基于ArcMap中已有符號(hào)制作;②基于TrueType字體制作;③基于圖片制作;④多種方式組合制作。本文中地圖符號(hào)主要通過(guò)前兩種方法以及這兩種方法的組合制作。
TrueType字體制作采用字體符號(hào)編輯工具Font Creator 5.6進(jìn)行繪制,制作完成后保存文件為50000symbols.ttf。將字體庫(kù)文件安裝到Windows系統(tǒng)中的字體文件中(c:\Windows\Fonts),打開(kāi)新建的50000symbols.style樣式庫(kù),將編輯好的字體添加為符號(hào);點(diǎn)、線、面符號(hào)都可以在style中編輯,最終形成1∶50 000標(biāo)準(zhǔn)地形圖符號(hào)庫(kù)文件。
符號(hào)庫(kù)中各符號(hào)的編碼是該符號(hào)的唯一標(biāo)識(shí)碼,采用國(guó)家地形圖圖式標(biāo)準(zhǔn)中的地理要素分類(lèi)及編碼,便于和1∶50 000 DLG數(shù)據(jù)的地物屬性碼進(jìn)行匹配[5]。圖1和圖2分別是制作的1∶50 000標(biāo)準(zhǔn)地形圖符號(hào)字體庫(kù)和符號(hào)庫(kù)。
2.3 數(shù)據(jù)預(yù)處理
2.3.1 數(shù)據(jù)情況。1∶50 000 DLG數(shù)據(jù)采用2000國(guó)家大地經(jīng)緯度坐標(biāo);數(shù)據(jù)要素代碼采用中華人民共和國(guó)國(guó)家標(biāo)準(zhǔn)《國(guó)土基礎(chǔ)信息數(shù)據(jù)分類(lèi)與代碼》(GB/T 13923—1992),并根據(jù)需要進(jìn)行一些擴(kuò)充;數(shù)據(jù)以ArcGIS 9.3的Personal Geodatabase格式存儲(chǔ),也即mdb數(shù)據(jù)格式。
2.3.2 坐標(biāo)轉(zhuǎn)換。由于現(xiàn)有1∶50 000 DLG數(shù)據(jù)坐標(biāo)為2000國(guó)家大地經(jīng)緯度坐標(biāo),必須轉(zhuǎn)換為平面直角坐標(biāo)才能保證地圖顯示出圖的科學(xué)性,所以數(shù)據(jù)預(yù)處理功能主要是對(duì)1∶50 000 DLG數(shù)據(jù)的坐標(biāo)進(jìn)行轉(zhuǎn)換。該功能通過(guò)ArcGIS Desktop 9.3平臺(tái)中ArcToolBox中Project功能的Geoprocessing調(diào)用來(lái)實(shí)現(xiàn)。
2.4 自動(dòng)符號(hào)化
數(shù)據(jù)自動(dòng)符號(hào)化是通過(guò)程序把添加后的圖層要素按照特定的屬性值與符號(hào)庫(kù)中的符號(hào)進(jìn)行自動(dòng)匹配的過(guò)程。系統(tǒng)自動(dòng)符號(hào)化的流程分兩大部分。
2.4.1 讀入并解析style文件。以獲取50000symbols.style中名稱(chēng)為260700(對(duì)應(yīng)具體地物類(lèi)型為泉)的符號(hào)過(guò)程為例:首先構(gòu)建一個(gè)StyleGallery對(duì)象,其次使用IStyleGalleryStorage接口的AddFile方法加載Style文件,遍歷StyleGallery中的Class,如果為Marker Symbols,則使用IStyleGallery的Get_Items方法返回一個(gè)可枚舉的包含一系列StyleGalleryItem的EnumStyleGalleryItem的對(duì)象,最后遍歷EnumStyleGalleryItme枚舉對(duì)象中的StylegalleryItme。如果名稱(chēng)是260700,則獲取符號(hào)庫(kù)中名稱(chēng)為260700的StylegalleryItme,然后通過(guò)IStyleGalleryItem的Item屬性轉(zhuǎn)換為ISymbol。
2.4.2 進(jìn)行唯一值符號(hào)化。讀取圖層中相關(guān)屬性信息,之后讀取符號(hào)庫(kù)中每一個(gè)符號(hào)的名稱(chēng),根據(jù)圖層屬性字段和符號(hào)庫(kù)中符號(hào)名稱(chēng)進(jìn)行一一匹配,將匹配符號(hào)后的圖層列表及地圖進(jìn)行刷新顯示,即完成地圖符號(hào)的自動(dòng)匹配和顯示。唯一值符號(hào)化過(guò)程不僅包括數(shù)據(jù)各要素的符號(hào)匹配,還包括注記信息的顯示。通過(guò)唯一值符號(hào)匹配的方法獲取Text Symbols中的注記符號(hào),然后通過(guò)ArcObject中的IAnnotationLayerPropertiesCollection、ILabelEngineLayerProperties等接口的方法、屬性實(shí)現(xiàn)注記信息的標(biāo)注顯示。
2.5 圖外整飾添加及制圖輸出
圖外整飾信息包括方便使用而附加的說(shuō)明性文字和工具性資料,如外圖廓、圖名、圖號(hào)、鄰接表信息、坡度尺、比例尺和輔助信息等。
制圖輸出后即為可向用戶(hù)提供的1∶50 000標(biāo)準(zhǔn)紙質(zhì)地形圖。
2.6 系統(tǒng)特點(diǎn)
系統(tǒng)依托于ArcMap平臺(tái),通過(guò)dll文件擴(kuò)展桌面功能,可以直接使用ArcMap界面及ArcGIS Desktop中的所有功能,大大節(jié)省了系統(tǒng)建立的時(shí)間。
3 結(jié)語(yǔ)
本文依據(jù)1∶50 000 DLG數(shù)據(jù)的特點(diǎn),按照標(biāo)準(zhǔn)地形圖制圖的標(biāo)準(zhǔn)及規(guī)范,建立集DLG數(shù)據(jù)坐標(biāo)轉(zhuǎn)換和1∶50 000標(biāo)準(zhǔn)地形圖制圖為一體的系統(tǒng),可以為基礎(chǔ)測(cè)繪用戶(hù)提供1∶50 000紙質(zhì)地形圖產(chǎn)品,也可以為應(yīng)急事件提供地圖保障,縮短了1∶50 000地形圖的制作周期,具有良好的應(yīng)用價(jià)值。
由于ArcGIS制圖對(duì)數(shù)據(jù)的依賴(lài)性很強(qiáng),而數(shù)據(jù)采集過(guò)程中不可避免地會(huì)出現(xiàn)數(shù)據(jù)不規(guī)范的情況,這樣依據(jù)數(shù)據(jù)進(jìn)行符號(hào)化顯示則必然會(huì)出現(xiàn)可視表達(dá)不合理、不正確的現(xiàn)象。對(duì)于數(shù)據(jù)存在的一些共性問(wèn)題,可以向數(shù)據(jù)生產(chǎn)單位反饋,便于查找原因,完善數(shù)據(jù)采集標(biāo)準(zhǔn)。而對(duì)于某些不可避免的問(wèn)題,可以通過(guò)在數(shù)據(jù)預(yù)處理時(shí)盡可能對(duì)數(shù)據(jù)進(jìn)行優(yōu)化,以達(dá)到更好的制圖效果,減少后期人為干預(yù)工作,這是下一步需要完善的地方。
參考文獻(xiàn):
[1]顧華奇,江文琴.基于ArcSDE建庫(kù)的1︰1萬(wàn)DLG數(shù)據(jù)庫(kù)自動(dòng)符號(hào)化研究[J].中國(guó)科技博覽,2011(35):601.
[2]王戰(zhàn)舉,范玉茹.基于ArcEngine的供水管網(wǎng)GIS符號(hào)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)[J].地理空間信息,2012(1):112-115.
[3]張鵬程,陳夏宮.ArcGIS平臺(tái)中DLG要素的動(dòng)態(tài)符號(hào)化方法及實(shí)現(xiàn)[J].工程勘察,2010(7):61-64.
[4]邱洪鋼,張青蓮,陸紹強(qiáng).ArcGISEngine開(kāi)發(fā)-從入門(mén)到精通[M].北京:人民郵電出版社,2010.
[5]牛苓濤,盛業(yè)華.基于ArcGIS的地圖符號(hào)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代測(cè)繪,2013(6):114-116.