使用arcgis addin开发的arcgis图层一键符号化工具

一 背景需求

传统的Arcgis符号化方式是利用arcgis打开图层,右键属性-符号系统-类别-与样式中的符号系统匹配,进行符号化,缺点显而易见,就是要一个图层一个图层的符号化,对于大量数据集产生的大量的图层,其工作所需时间长、效率低、人员多(不过对计算产值可能有好处微笑)、易出错。笔者开发的这个小工具,运行在arcgis desktop上,将所需符号化的图层数据全部加载进来,配置相关参数后,就可一键完成符号化,省时省力省人,不过从某个角度看,未必是好事。。。制造武器挺难,有点技术含量,但是武器本身没有好坏,怎么用、往哪打才是关键。

二  方案设计

1因为觉得在符号化这项实际工作中,将代码嵌入arcgis中可能更实用一些,所以开发平台选择的是arcgis addin,语言是C#,具体介绍另见笔者另一博客http://blog.csdn.net/u010723516/article/details/52838564。至于为啥不用python for arcgis,我一摊手,无言以对委屈

2 其实就是个小工具,功能方面谈不上设计。主要核心函数有两个,一个是从本地的符号库获取相关符号的函数,另一个是对每个图层进行符号化渲染的函数。

主要接口IStyleGallery,IUniqueValueRender,这里插一句,gis应用的代码,函数设计都不是难点,如何将它们有机的结合成完善好用的工程才是最重要的。

三 效果图


四 使用说明

1 选择符号文件,类似于arcgis自带的‘选择与样式中的符号匹配’,选的是用户要匹配的符号库。

2 选择符号编码字段 类似于arcgis自带的‘字段值’,选的是用于关联匹配符号库的字段

3 旋转角度  类似于arcgis自带的‘高级-旋转’,选择的是用于旋转的字段

4 点击一键符号化,等待进度条执行完毕即可。

五 总结

这个工具是我去年11月开始写了第一版。结果在测试过程中发现了些问题。执行速度慢,耗内存,解决了这个问题,就是第二版,保证了能投入使用。后面就是优化的,在工作间隙,将界面设计的更人性化,将选择符号文件、选择符号编码字段、旋转角度等参数可自定制。(之前的版本没有这些可以用,因为这个工具最早只是服务于一个特定的急活,我把参数都写死,也不影响使用),就是第三版。结尾 泄漏点隐私 偷笑



六 说明

我写的博客一般分两种,一种是细节技术的,一种是宏观工具类的,后者比较多。我觉得我这学渣,能实现的代码,大多数人也都能实现,因为毕竟GIS应用相关的代码没有那么难,资源较多。我写的博客主要是宏观总结一下自己的工作,毕竟我自我定位不是程序员,同时给需要的需要的人提供一个较为宏观的解决问题的思路,所以细节技术层面(代码)介绍的没那么详细,如果有朋友代码实现起来真有困难,或者有更好的意见,可以加我qq 1148460370进行交流。PS 还是那句话,武器大多数人谁都能做,只汲汲于武器的制造意义不大,怎么用、往哪打才是更关键的,更关键的是如何能不战而屈人之兵。而目前为止,做好眼前的事,尽可能提升自己,才是根本。


猜你喜欢

转载自blog.csdn.net/u010723516/article/details/73526596
今日推荐