張恒,劉群
(四川建筑職業(yè)技術(shù)學(xué)院交通與市政工程系,四川德陽 618000)
基于SuperMap Objects的專題圖模塊開發(fā)研究
張恒?,劉群
(四川建筑職業(yè)技術(shù)學(xué)院交通與市政工程系,四川德陽 618000)
介紹了SuperMap Objects地圖控件的對象結(jié)構(gòu),專題圖接口類型及特點,闡述了使用VB6.0和SuperMap Objects組件開發(fā)專題圖模塊的思路,給出了單值專題圖和標(biāo)簽專題圖的開發(fā)實例。
專題圖;SuperMap Objects;COMGIS;開發(fā)
專題圖制作是GIS軟件的常見功能,專題圖以各種圖形樣式(如符號、線型、顏色、填充模式等)圖形化地顯示地圖信息,能形象直觀的表達(dá)數(shù)據(jù),有助于發(fā)現(xiàn)隱藏在數(shù)據(jù)中的某種對象的發(fā)展趨勢和規(guī)律。SuperMap Objects作為常用的COMGIS開發(fā)工具,提供了多種創(chuàng)建專題圖的接口方法,本文就SuperMap Objects地圖控件的結(jié)構(gòu)及開發(fā)專題圖模塊的思路進(jìn)行分析,并給出了VB6.0平臺下利用SuperMap Objects開發(fā)專題圖的開發(fā)實例。
理類型相同的空間數(shù)據(jù),如點、線、面、文本等數(shù)據(jù)集。數(shù)據(jù)集被賦予特定的顯示風(fēng)格,并以圖層(Layer)的方式顯示在地圖窗口中,一個圖層對應(yīng)著一個數(shù)據(jù)集。圖層的顯示風(fēng)格可根據(jù)應(yīng)用需要進(jìn)行修改,可通過修改圖層風(fēng)格或制作專題圖的方法實現(xiàn)。例如,SuperMap提供了單值圖、點密度圖、分段圖、標(biāo)簽圖、統(tǒng)計圖、等級符號圖等多種制作專題圖的方法,針對Grid數(shù)據(jù),還可制作單值或范圍分段專題圖。
SuperMap Objects地圖控件的對象結(jié)構(gòu)如圖1所示。
SuperMap以數(shù)據(jù)集(DataSet)的方式來組織和管
圖1 SuperMap Objects地圖控件的對象結(jié)構(gòu)[1]
專題圖類別及特點[1,2]表1
統(tǒng)計圖專題圖把制圖區(qū)域分成幾個區(qū)劃單位(通常是以行政區(qū)為區(qū)劃單位),按其相應(yīng)的統(tǒng)計數(shù)據(jù),描繪不同形式的統(tǒng)計圖表,以表示并比較各個區(qū)劃單位內(nèi)現(xiàn)象的總和及其動態(tài),統(tǒng)計圖通常繪制在地圖上各相應(yīng)的分區(qū)內(nèi)。統(tǒng)計圖的類型包括面積圖、階梯圖、折線圖、點狀圖、柱狀圖、餅圖、玫瑰圖等類型。等級符號專題圖采用不同形狀、顏色和大小的符號,表示各自獨立的、以整體概念顯示的各個物體的數(shù)量與質(zhì)量特征。Grid單值專題圖根據(jù)柵格數(shù)據(jù)集的特征信息值,并用相應(yīng)的色階來反映不同的特征信息值,以此來反映特征信息在空間上的差異。Grid分段專題圖根據(jù)柵格數(shù)據(jù)集的特征信息值,將特征信息值進(jìn)行分級,并用相應(yīng)的色階,反映特征信息的集中程度或發(fā)展水平的空間分布差異。
制作專題圖的關(guān)鍵是根據(jù)某個特定圖層對地圖進(jìn)行符號化。在設(shè)計專題圖模塊時,應(yīng)深入分析應(yīng)用型GIS系統(tǒng)的共性、設(shè)計并開發(fā)可復(fù)用的專題圖模塊,這些模塊以函數(shù)的形式進(jìn)行封裝,在使用時僅需指定具體的參數(shù)調(diào)用即可。使用SuperMap Objects進(jìn)行專題圖開發(fā)的思路如下:
①添加用于制作專題圖的符號庫、線型庫和填充模式庫,即SuperWorkspace.Resources.SymbolLib.ImportEx(符號庫文件,是否覆蓋已有的符號文件)、Super-Workspace.Resources.LineStyleLib.Import(線型庫文件的全路徑,是否覆蓋已有的線型庫)和SuperWorkspace.Resources.FillStyleLib.Import(導(dǎo)入的填充模式庫文件名,是否覆蓋當(dāng)前的填充模式庫);
②采用Set objlayer=SuperMap.Layers.AddDataset (加載的數(shù)據(jù)集,是否放置到最頂層)方法加載數(shù)據(jù)集,獲取當(dāng)前圖層;
③創(chuàng)建soStyle對象,設(shè)置幾何對象的填充顏色(BrushColor)、填充模式(BrushStyle)、漸變填充類型(BrushGradientMode)、線型(PenStyle)、點對象符號風(fēng)格(SymbolStyle)等參數(shù)創(chuàng)建圖層顯示風(fēng)格;
④通過設(shè)置soLayer對象的Style屬性獲取圖層的顯示風(fēng)格,即Set objlayer.Style=objstyle;
⑤對單值專題圖、點密度專題圖、等級符號等專題圖風(fēng)格,應(yīng)使用soLayer對象的ThemeUnique、Theme-DotDensity、ThemeGraduatedSymbol等屬性設(shè)置,如Set objThemeunique=objlayer.ThemeUnique,Set objTheme-DotDensity=objlayer.ThemeDotDensity等。同時應(yīng)創(chuàng)建soThemeUnique對象、soThemeDotDensity對象及soThemeGraduatedSymbol等對象的實例,并通過其Style屬性設(shè)置相應(yīng)的顯示風(fēng)格;
⑥在退出函數(shù)時,應(yīng)將創(chuàng)建的圖層、單值專題圖等對象釋放;
⑦建立圖例控件與地圖對象之間的連接,地圖窗口中的圖層、該圖層的各類專題圖及其具體值將以樹狀節(jié)點的形式顯示在地圖窗口中;設(shè)置圖例窗口的編輯、折疊、拖動調(diào)整、右鍵快捷菜單等屬性,刷新圖例控件和地圖控件。
3.1 制作單值專題圖
在創(chuàng)建單值專題圖時,可設(shè)計數(shù)據(jù)集名稱、制作專題圖的字段名稱及專題圖顯示的地圖控件等函數(shù)參數(shù)。調(diào)用函數(shù)時,即加載指定的空間數(shù)據(jù)集,并按字段的取值設(shè)置各要素的顯示風(fēng)格。該函數(shù)的參考代碼如下。
3.2 制作標(biāo)簽專題圖
標(biāo)簽專題圖常用于在圖層上顯示特定字段的內(nèi)容,從而增強(qiáng)地圖的可讀性,如在道路圖層中顯示各級道路的名稱,在單位圖層中顯示單位的名稱等。制作標(biāo)簽專題圖的函數(shù)代碼如下。
圖2 單值專題圖和標(biāo)簽專題圖界面
本文介紹了采用SuperMap Objects組件工具制作專題圖的思路和開發(fā)實例。開發(fā)實踐表明,專題圖可以滿足用戶對數(shù)據(jù)可視化提出的要求,能生動形象地說明各種數(shù)據(jù)之間的關(guān)系,GIS開發(fā)人員應(yīng)設(shè)計并開發(fā)具有通用性和可復(fù)用性的專題圖模塊,從而顯著提高開發(fā)效率。
[1] 北京超圖地理信息技術(shù)有限公司.SuperMap Objects 5.0開發(fā)教程.北京,2004
[2] 吳信才,鄭貴洲,謝忠等.地理信息系統(tǒng)的設(shè)計與實現(xiàn)[M].北京:電子工業(yè)出版社.2002
[3] 張恒.基于COMGIS的工程圖文信息管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:西南交通大學(xué)碩士學(xué)位論文.2007
[4] 聶小波,吳北平,何保國.基于ArcGIS Engine的專題圖模塊的設(shè)計與實現(xiàn)[J].地理空間信息.2006(2)
[5] 馬金鋒,潘瑜春,郭占軍等.應(yīng)用ArcIMS Java connector制作動態(tài)專題圖[J].計算機(jī)應(yīng)用研究.2008(5)
[6] 張恒,劉群.應(yīng)用型GIS系統(tǒng)開發(fā)的集成框架及關(guān)鍵技術(shù)[J].城市勘測.2009(6)
Development Research of Thematic Maps Model Based on SuperMap Objects
Zhang Heng,Liu Qun
(Sichuan College of Architectural Technology,Traffic and Municipal engineering department,Deyang 618000,China)
This paper introduced the structure of SuperMap Objects map components,interface types and characteristics of the thematic maps,elaborated the development methods based on VB6.0 and SuperMap Objects components,provided the unique theme and label theme develop examples.
Thematic Maps;SuperMap Objects;COMGIS;Development
1672-8262(2010)06-54-03
P208
B
2010—03—27
張恒(1980—),男,碩士,講師,研究方向:地理信息系統(tǒng)開發(fā)及應(yīng)用。
多源遙感數(shù)據(jù)協(xié)同的汶川大地震次生山地地質(zhì)災(zāi)害評估研究(20090415CL)。