by 李远祥
在GIS数据中,植被一般都是面装要素的形式存在。很多人在使用植被渲染的时候,一般会采用填充符号去渲染。而在ArcGIS中,填充符号要么就是纯颜色,要么就是规则的渲染如行列距离多少、网状、斜纹等,具体的效果没有什么冲击力,往往达不到“望文生义”的制图效果。例如下图的植被,虽然使用了较为柔和的绿色去表达,图面没明显的违和感,但看起来未免有些单调。
制图是一个需要想象力的工作,我们只要在这个框架之下,发挥一下想象力,尽可能与实际情况还原或者相近,那就可以将绿地表现得淋漓尽致了。例如,我们在城市里面见到最多的成片的绿地,一般是公园里的绿地,这些绿地都是有一定的规律的,就是不是纯粹的草地,一般是草地上种上一些低矮的小灌丛,或是一两棵树。我们最希望出现的可能是下面的这种效果
有了这个想象力之后,那我们就可以做“无米之炊”。首先我们需要有这些灌丛或者树木的数据,这是个最基本的核心问题。那这些数据怎么来?难道要到现场去采集吗?制图工作的一个非常大的原则就是尽可能不增加数据的采集成本。其实没有人关心这些小灌丛和小树木是否落在真实的位置,也没有人真的关心它们的数量是否正确,只要这些小树在草地上一站,我们就能直观的认出这些绿地的类型了。这些小灌丛和小树木就是我们所说的制图上的“点睛之笔”。
现在的目标已经非常明确了,我们还需要一步就能突破这一张平凡的地图,就是从绿地中生成出这些无序的大小不一的植被点。这个工作需要相当丰富的制图经验的技术人员才可以顺利的参悟。首先看几个规则:
植被点不能超出植被面的范围。
植被点是位置随机的
植被点是大小随机的
植被点的符号是随机参杂的
这些所谓的规则,其实就是我们对这个制图效果的分解。在制作之前,心里面必须先有这么一张制作好的地图。然后才是每一个规则分别用技术来实现。
针对第一条规则,植被点不能超出植被范围,这个是一个常识性的隐藏条件。但由于GIS制作的地图符号和数据是分开的,那么,我们必须考虑这些植被点被赋予符号后是否会超出其边界。我们的做法非常简单粗暴,直接估算一下符号最大值时在当前比例下大约占多少地理距离。例如当前比例下,符号使用30大小,占用的大约为50米,那么,可以使用缓冲区工具来做一个往内收缩的缓冲区,呼喊冲的距离应该大于符号的二分之一,在这个场景中换算一下,就是不能小于25米。由于做的是内缓冲,因此,需要使用一个负数来作为参数。
将生成缓冲后的植被加入到地图中看看效果,边界上明显做了收缩,这就是我们需要的效果。
接下来就是针对第二条规则,植被点是随机放置在植被面内的。那么,我们就需要针对这个缓冲区生成一些随机位置的点数据。好在,这些数据不需要我们手动去编辑,ArcGIS在工具象里面有生成随机点的工具。如果不清楚工具在哪里,可以在菜单上【窗口】--【搜索】,然后检索关键字【随机点】,如图
点击搜索结果,弹出对应的工具。输入名称,约所范围必须指定为做过内缓冲的植被面,为了有更好的效果,我们可以根据经验去设置一个最小的距离,这样不至于植被点过密。
将生成的点加载到地图,目前看到的只是非常丑陋的数据,我们还需要给这个数据穿上漂亮的外衣。那就需要继续分解规则。
第三条规则就是植被点是大小随机的。那么这个大小随机的设置就涉及到符号的大小了。ArcMap在符号设置有有比较深层次的渲染隐藏,一般要转得比较深才能发现。我们先给这个点图层应用一个比较漂亮的符号,默认的单一符号都是同等大小的,如下图
那接下来需要进行深层次的改造。在【图层】--【属性】--【符号系统】--【单一符号】--【高级】选项下面,选择大小
然后设置随机大小的两个值,一个是最小值一个是最大值。这里的最大值就跟第一步里面的缓冲范围有关了。我们之所以要做内缓冲,就是担心这些点在半个符号大小的时候刚好越界,所以做内缓冲设计好了适当的距离。
点击确定之后,整体的效果就基本上出来了。这时其实就可以将内缓冲这个图层移除掉了,因为它只是做约束性的生成数据,不参与地图的显示,如下图所示
现在还需要更进一步的就是,现实环境绝对不可能是单一的植被,那么植被的多样性怎么处理。其实答案早已经在大家心中了。这就是第四条规则分解,植被点的符号是随机参杂的。那么我们只需要重复一下第二和第三步,然后在第三步中选择不同的符号即可完成。这里就不再多论述了。
为了减少所有的这些工作量,作者根据这些GIS制图的特性专门制作了一个快速制图插件,其中一个功能便是生成植被填充。通过简单的一步设置就可以实现该功能。
具体的介绍可以参考博文 http://blog.csdn.net/liyuanxiang1984/article/details/52774293 工具也提供下载,可以到 http://blog.csdn.net/liyuanxiang1984/article/details/52774297