丁鴿,劉開,徐彥中,彭健
(1.濟南市勘察測繪研究院,山東濟南 250013; 2.山東省城市空間信息工程技術研究中心,山東濟南 250013)
基于ArcGIS構建圖庫一體化海圖系統(tǒng)的研究
丁鴿1,2*,劉開1,2,徐彥中1,2,彭健1,2
(1.濟南市勘察測繪研究院,山東濟南 250013; 2.山東省城市空間信息工程技術研究中心,山東濟南 250013)
針對現階段我國海圖制圖與數據建庫相分離的“圖庫兩體化”現狀存在的缺陷,提出了基于ArcGIS搭建圖庫一體化海圖生產體系的技術方案。本文以中國北部海區(qū)的海事測繪數據為基礎,以ArcGIS為平臺,進行了一體化海圖生產體系的構建研究:進行了海事數據庫層次結構、屬性字段和屬性域規(guī)則的設計;定制了ArcGIS海圖符號庫、實現海圖智能標注和創(chuàng)建Representation制圖表達等關鍵制圖技術;并基于ArcGIS Engine開發(fā)了一體化平臺,實現了對ArcCatalog和ArcMap應用程序的直接調用,實現了海圖建庫與制圖輸出的一體化。
圖庫一體化;ArcGIS;海事符號庫;制圖表達
現階段,我國海圖生產體系采用“圖庫兩體化”生產模式:在海圖數據庫端,基于Arc/Info系統(tǒng)創(chuàng)建、生產和維護Coverage模型的海圖數據;在海圖制圖端,基于CARIS HPD平臺,結合 AutoCAD、MapGIS、Photoshop、Illustrator等軟件制作海圖矢量文件,然后轉換輸出為EPS或PDF格式,經制版印刷,實現紙質海圖的生產[1]。
這種基于Arc/Info、CARIS和繪圖軟件等協同作業(yè)的跨平臺海圖生產體系存在諸多缺陷:①海圖制圖與數據庫管理各成體系,信息反饋渠道不暢。②制圖工作流不連續(xù),缺乏一致的用戶界面,無法實現數據無縫拼接。③不能很好地實現海圖注記的加注,過程繁瑣。④以圖幅為單元的數據存儲模式,導致數據庫存在大量冗余數據。⑤在進行海圖數據維護時,須同時維護S-57電子海圖數據庫、數字海圖數據庫和紙質海圖數據庫等多個數據庫。為此,搭建一套平臺一體化、編繪智能化、圖庫一體化的海圖生產體系勢在必行。
ArcGIS是Esri公司研發(fā)的構建于工業(yè)標準之上的無縫擴展的GIS家族產品[2],具有強大的數據庫管理功能和繪圖分析功能,為用戶提供了完整的企業(yè)級地圖制圖與數據建庫一體化的GIS解決方案。本文從目前我國海圖制圖技術的現狀和實際需求出發(fā),對海圖數據庫的數據模型、制圖關鍵技術和圖庫一體化工藝流程進行了系統(tǒng)研究,提出了基于ArcGIS構建圖庫一體化海圖生產體系的技術方案[3],并對系統(tǒng)的技術流程進行了設計和實現。
2.1技術難點
運用相應的制圖規(guī)則,基于數據庫屬性數據進行自動化制圖功能的實現,是圖庫一體化海圖系統(tǒng)實現的關鍵。因此,如果可以利用海圖數據庫進行制圖符號的可視化表達,必將大大縮短制圖時間,提高工作效率。但實現由庫到圖的自動化轉換必須解決以下技術難題:
(1)制定合理的技術流程。合理的技術流程,是簡化工作步驟、降低工作強度的技術支撐,必須在充分研究和分析海事建庫和制圖特點的基礎上才能實現。
(2)海圖數據庫的設計。為實現基于數據庫屬性數據的自動化制圖,必須對數據庫的模型結構、屬性字段和屬性域規(guī)則進行合理設計[4]。既注重對地理實體的空間坐標和屬性信息的反映,又可以在對建庫數據進行初步符號化后,在符號屬性、制圖規(guī)則、自由表達3個層面上進行制圖編輯,從而達到制圖規(guī)范和美觀要求。
(3)海圖制圖關鍵技術的實現。海圖是各種海圖符號、文字注記、圖幅整飾要素等的結合體,是科學性與藝術性的完美結合。精美的符號集合、智能的標注顯示、完善的配色方案和渲染規(guī)則是創(chuàng)建精確、美觀的海圖的重要保證,是實現海圖制圖和可視化的關鍵技術。
(4)制圖表達規(guī)則的處理機制。要實現高質量海圖產品的生產,必須創(chuàng)建完善的覆蓋規(guī)則與自由表達機制,實現在不改變庫數據空間屬性的前提下,對每個要素符號的單獨編輯和動態(tài)創(chuàng)建。
(5)ArcGIS Engine搭建一體化平臺。為有效集成ArcCatalog數據建庫模塊與ArcMap制圖功能模塊,應充分利用ArcGIS Engine完善的類庫和強大的嵌入式GIS組件庫,搭建一個統(tǒng)一的平臺,實現建庫與制圖的一體化。
2.2技術流程
本文基于ArcGIS平臺,在系統(tǒng)研究數據建庫與制圖生產一體化理論與關鍵技術的基礎上,就海圖數據庫的設計、海圖制圖關鍵技術和一體化體系的構建開展研究,以兼顧海圖制圖與數據建庫的統(tǒng)一生產和管理為目的,考慮建庫數據與制圖符號之間的同步與統(tǒng)一關系,對圖庫一體化海圖系統(tǒng)的技術流程進行了設計。
圖1 圖庫一體化海圖系統(tǒng)的技術流程
如圖1所示,本技術流程改變我國現有海圖生產體系的制作工序,在海圖生產體系的前端建立源數據海圖庫,加強對數據質量的管理與控制,并隨時利用新資料和改正數據對源數據庫進行更新,始終保持數據庫的最佳現勢性狀態(tài),實現無縫的、現勢性強的海圖數據的存儲[5]。在保證數據組織與屬性結構合理的基礎上,在海圖生產體系的末端,對源數據根據海圖用途和制圖要求,裁切出特定范圍的海圖數據進行符號化和可視化展示。并基于ArcGIS Engine將兩者集成統(tǒng)一,進行建庫與制圖的統(tǒng)一,完成海圖的生產輸出工作。
3.1Geodatabase數據模型
海圖數據具有數據量大、水深關系復雜、數據更新速度快等特點,對數據的有效組織是保證海圖內在質量、導航定位精度和空間分析準確性的數學基礎。因此,合理的數據模型與組織結構是圖庫一體化海圖系統(tǒng)性能的重要保證。
Geodatabase數據模型與傳統(tǒng)數據模型相比具有無與倫比的優(yōu)勢,它采用全關系數據庫技術,將矢量、柵格、地址、網絡和空間參考等數據一體化存儲和管理,它可以自定義自己的對象與關系類型,并通過對象間的拓撲關系、約束規(guī)則和相互作用關系,更清晰、準確地反映實體對象的空間幾何信息、屬性信息、三維信息和多媒體信息等,有利于真正意義上實現建庫與制圖的一體化,因此本文選用Geodatabase模型進行數據庫數據的組織與設計。
3.2海圖數據庫設計
本文以中國北部海區(qū)的海事測繪數據為基礎,基于Geodatabase層次模型進行數據的組織與設計。參照《數字海圖要素屬性編碼規(guī)則》,將海事數據劃分為29個層,每層數據按空間類型分為點、線、面,每一類型關聯一個或多個屬性表[6]。對海圖要素的標識采用6位數字編碼方式,前三位為“類碼”,后三位為“識別碼”,第四位標識要素的幾何類型,0為點,1為線,2為面,編碼定義到具體要素。
屬性字段設計。為實現屬性數據驅動的一體化海圖制圖,結合相關海圖規(guī)范,本文設計屬性表字段除包含要素名稱、代碼、幾何類型、坐標參考、坐標精度等字段外,還增加了海圖符號、制圖表達、規(guī)則ID和覆蓋等字段,用于存儲要素的符號信息和制圖表達規(guī)則。
屬性域規(guī)則設計。屬性域規(guī)則是一種通過限定要素類或空間屬性列表中特定字段的允許值來保證數據有效性和完整性的強制性機制。本文針對海事測繪數據獨特的屬性特征和行為規(guī)則[7],采用“編碼的值”類型的屬性域規(guī)則,進行了要素類屬性域類型、有效值集合、分隔策略和合并策略等限定規(guī)則的添加。
4.1定制ArcGIS海圖符號庫
海圖符號被稱為海圖語言,是實現海事數據可視化的工具和橋梁。定制ArcGIS海圖符號庫是實現應用ArcGIS進行海圖制圖的基礎性工作。
鑒于現行海圖制圖系統(tǒng)CARIS HPD可以提供比較完善的、滿足GB12319-1998《中國海圖圖式》[8]的矢量符號庫,和ArcGIS符號管理器(Style Manager)強大的圖元組合機制和支持對TrueType字符的任意調用,本文選用TrueType字體編輯器Font Creator進行海圖符號庫中單個圖元的制作和海圖字體庫的創(chuàng)建。首先,將CARIS符號庫的基礎圖元和標準海圖符號[9],轉存輸出為位圖,并導入Font Creator進行矢量化;然后,通過縮放、平移、旋轉等簡單編輯操作,制作滿足海圖圖式要求的矢量點狀符號文件,并保存安裝在Windows系統(tǒng)自帶的符號庫中;最后,應用ArcGIS Style Manager的符號定制功能和圖元組合機制,建立Arc-GIS平臺下的專用海圖符號庫,保存在ArcGIS安裝路徑的style目錄下,并添加到ArcGIS的style列表中,即可在ArcMap進行海圖繪制時調用和共享符號庫中的符號,通過選擇合適的符號樣式,制作出精準、漂亮、美觀的海圖文檔。
4.2添加水深智能標注
水深注記在海圖負載量中占相當大的比重,是海圖中最主要的注記之一,有直體、斜體、拖尾、加繪危險圈等多種類型,實現較為復雜[10]?,F行體系是在海圖圖面繪制完成后,借助MapGIS手工進行注記的添加,大大降低了成圖效率[11]。為克服手工添加水深注記的不足,本文利用ArcGIS的標記轉注記功能,先對水深數據添加標注,創(chuàng)建標注要素類,然后將標注轉換為注記,存入Geodatabase數據庫中,獲取不同比例尺下符合要求的水深點注記,完成注記的添加工作。
實測水深注記是最主要、最常見的一類水深注記,《中國海圖圖式》中明確規(guī)定實測水深注記采用右斜等線體表示,且注記的整數和小數部分采用不同的字號大小表示。以實測水深注記為例,我們借助標注管理器和Maplex高級智能標注工具,通過VBScript編碼進行實現:在ArcGIS中打開水深數據(“Sounding”)層的屬性對話框,設置Labels標簽頁下的Method值為“Define classes of features and label each class differently.”,并在Class選項中添加不同的注記類,在Label Expression中編寫VBScript代碼,如圖2所示,實現右斜等線體水深標注。經編輯整理后,設定特定的海圖顯示比例尺,將標注轉換為注記存儲在數據庫中。
圖2 VBScript編碼實現右斜等線體水深標注
4.3創(chuàng)建Representation海圖制圖表達
制圖表達在利用基于規(guī)則的組織結構對數據進行符號化的同時,可以靈活地定制單個要素的個性化表達,在不改變數據庫原始數據的基礎上,靈活地更新圖形的顯示外觀,改善圖面的表達效果,滿足高質量地圖輸出的要求。
在進行海圖繪制時,本文根據海圖數據庫中要素類所包含的不同要素類型,對要素類建立符號化方案和制圖規(guī)則,來創(chuàng)建所需的制圖表達,添加相應的制圖表達規(guī)則,并設置新規(guī)則的符號屬性、幾何效果和顯示等級,創(chuàng)建完整的Representation符號化方案。然后,在進行海圖編輯時,為各要素類指定相應的制圖表達規(guī)則進行要素的符號化顯示。
在完成海事數據庫設計,并解決了海圖制圖中的關鍵技術后,本文利用ArcGIS Engine進行一體化海圖系統(tǒng)的搭建,將ArcCatalog數據建庫模塊與ArcMap制圖功能模塊集成到一個統(tǒng)一的平臺上,實現屬性匹配制圖樣式驅動制圖,實現海圖的一體化生產。
5.1系統(tǒng)框架設計
圖庫一體化海圖系統(tǒng)以海圖地理信息數據庫為基礎,通過一系列功能模塊的集成應用,實現海圖建庫與制圖的一體化。根據實際需求,設計一體化海圖系統(tǒng)框架結構如圖3所示。
圖3 圖庫一體化系統(tǒng)的框架結構
5.2功能實現
ArcGIS Engine與ArcGIS Desktop共享相同的底層組件,大量的開發(fā)工作可通過在ArcGIS產品間移植后,再做部分更正與改進來實現。在進行一體化系統(tǒng)搭建時,本文通過定制命令實現在一體化平臺中對ArcCatalog和ArcMap的直接調用,不再從零開始編程建立地理數據庫及其制圖符號體系。在進行功能實現時,基于Engine提供的制圖控件和框架控件中的MapControl(地圖控件)、PageLayoutControl(頁面布局控件)、TOCControl(目錄樹控件)、ToolbarControl(工具欄控件)進行系統(tǒng)界面的定制;基于Engine提供的一系列命令、工具、菜單和選項集,通過調用System、Display、Output、Carto、Geodatabase、Data-SourceGDB和Controls等Engine類庫,構建和擴展現有的ArcGIS應用程序功能;通過 Geometry類庫的IpointCollection、ISegmentCollection和IGeometryCollection等API接口,實現對點、線、面、注記等要素的編輯功能。如圖4所示,為圖庫一體化海圖系統(tǒng)的制圖效果。
圖4 圖庫一體化系統(tǒng)的制圖效果
5.3圖幅整飾輸出
完成一體化平臺的搭建之后,即可在一體化平臺上進行海事數據的入庫和符號化繪制。并根據GB12319-1998《中國海圖圖式》中對海圖圖廓整飾元素和圖面配置內容的詳細說明,添加圖面配置要素(海圖的圖號、標題和圖廓注記等),完成海圖的制作。然后根據實際需要將海圖文檔轉存或進行打印輸出,提交最終的海圖產品。
ArcGIS是一個架構完整、功能強大、擴展方便、部署靈活的地理信息平臺,為新的海圖生產體系的搭建提供了理想的開發(fā)環(huán)境。本文深入論證了基于Arc-GIS實現圖庫一體化海圖系統(tǒng)的技術流程和關鍵技術,有利于提高海圖制圖效率,完善海圖數據管理工作,希望對今后海圖生產體系的深層次發(fā)展和技術體系的進一步完善提供有力參考。
[1]陳惠榮.海圖設計自動化關鍵技術研究[D].大連:大連海事大學,2011.
[2]牟乃夏,劉文寶,王海銀等.ArcGIS10地理信息系統(tǒng)教程:從初學到精通[M].北京:測繪出版社,2012.
[3]Julien Barbeau,Andrew W.Hoggarth.Marine Spatial Data Infrastructure:Hydrographic Workflows and Related Stadards.Proceedings of the Canadian Hydrographic Conference ad National Surveyors Conference,Canada,2008:1~10.
[4]Wells D,Kleusberg A,Vanicek P.A seamless Vertical Reference Surface for Acquisition,Management and Display(ECDIS)of Hydrographic Data.A report prepared for the Canadian Hydrographic Serviceunder Conract Number IIHS4-122,2004.
[5]朱曉華.利用CARIS HPD進行紙海圖生產[C].第二十一屆海洋測繪綜合性學術研討會,成都,2009:437~440.
[6]黃忠剛,魏金桃,紀宏宇等.地形圖與海圖數據結構對照研究[J].海洋測繪,2009,29(3):58~60.
[7]Julia Powell,Chistie Ence,Tara Wallace,etc.Using ArcGIS Nautical Solution to Produce Nvigational Products.Proceedings of the United States Hydrographic Conference,2009.
[8]GB12319-1998.中國海圖圖式[S].
[9]CARIS HPD Paper chart editor 2.6 Reference Guide.Universal System Ltd,2008.
[10]劉穎,翟京生,陸毅等.數字海圖水深注記的自動綜合研究[J].測繪學報,2005,34(2):179~184.
[11]Zhai Jingsheng,Lu Yi.Recognition and measurement of marine topography for sounding generalization in digital nautical chart.Marine Geodesy,2005,28:167~174.
Research on Construction of the Database Unified Cartography Chart System Based on ArcGIS
Ding Ge1,2,Liu Kai1,2,Xu Yanzhong1,2,Peng Jian1,2
(1.Jinan Geotechnical Investigation and Surveying Institute,Jinan 250013,China;2.Shandong Engineering Technology Research Center of Urban Spatial Information,Jinan 250013,China)
For defects of the existing separation of the chart database construction system and the chart cartography system,a technical scheme to construct a geodatabase and cartography integrated chart system based on ArcGIS has been proposed.On the basis of the northern China marine surveying data and the ArcGIS platform,this paper conducts research on the construction of the chart integration system.It designs the data hierarchy structure,the attribute fields and the domain rules of the marine geodatabase.Also it solves the technologies in the chart cartographic module,such as the customization of the ArcGIS chart symbol libraries,the affixion of chart intellectual labels and the creation of chart cartographic representation.Then it sets up an integrated platform based on ArcGIS Engine,which can directly invoke the Arc-Catalog and ArcMap procedure,makes the chart database construction and cartographic output work can be done integratively.
database integrated chart system;ArcGIS;chart symbol library;representation
1672-8262(2016)04-45-05
P208.2
A
2016—03—19
丁鴿(1989—),男,助理工程師,主要從事竣工測量、精密工程測量、三維點云數據處理等方面研究。
國家自然科學基金資助項目(41174010;41374011)