ArcGIS的服務配圖工做十分勞累若是可以機械化,那想必是極好的。因此我針對ArcGIS配圖的特色製做了一個ArcGIS自動配圖工具,用於進行配圖的機械化,下面是總體思路。 微信
配圖,這裏首先要配置符號由於ArcGIS中的符號管理器十分難找,若是要配置不少的符號那麼將會消耗很大的工做量,因此應該簡化服務的符號配置。首先創建一套符號體系,這個符號體系有國標代碼的支持。經過國標代碼與符號進行對應,以後只要經過AE將對應的符號代碼給相應的圖層數據便可。 工具
配置符號首先就要有符號庫,符號庫分爲兩種一種是給桌面版用的Style文件另一種是給AE使用的ServerStyle文件。ServerStyle文件能夠經過Style文件進行轉換,轉換工具是位於C:\Program Files (x86)\ArcGIS\Desktop10.2\bin下的MakeServerStyleSet.exe。點擊將Style文件的目錄選中,他就會進行轉換,轉換的結果位於同一目錄下。 ui
符號的渲染包括如下幾種方式。本處主要用到惟一值符號化。cdn
單一符號化:SimpleRenderer 惟一值符號化:UniqueValueRenderer 分級符號符號化:ClassBreaksRenderer 分級色彩符號化:ClassBreaksRenderer 比例符號化:ProportionalSymbolRenderer 點值符號化:DotDensityRenderer對象
統計圖形符號化:ChartRendererblog
製圖表現符號化: RepresentationRenderer接口
整個渲染的思路其實,就是根據圖層找出符號,以後進行符號化便可,中間還能夠根據不一樣的圖層進行圖層的級別配置。 圖片
使用IMap接口進行全部接口的獲取,其中的uid須要根據須要查詢文檔。
文檔
查詢這個字段的數據值,使用HashSet進行存儲返回一個不重複的集合。
it
根據字段,系統須要找出對應的符號進行渲染,思路爲使用ServerStyleGalleryClass生成對象讀取文件,以後轉換爲IStyleGalleryStorage類型。以後對IUniqueValueRenderer類型對象進行配置。以後使用IEnumStyleGalleryItem進行遍歷而後將對應的符號查詢出來填入IUniqueValueRenderer中最後返回一個IUniqueValueRenderer對象用於填充便可。主要代碼以下:
將全部的程序串聯起來以後整個功能就完成了。