ArcGIS制图技巧系列(3)—让地图更有立体感

by 李远祥

在前面的章节中,我们已经介绍过各种的地图效果,如发光效果,山体阴影效果,植被填充效果等,所有的这些效果不外乎是各种技术的叠加和技巧的使用,充分利用想象力去填充那些苍白无力的地图。本章我们要实现一个非常伟大的目标,就是给非常扁平的地图做一个”丰胸“和”抽脂“的整形手术,让它变得玲珑浮凸。下面我们来看一张扁平的地图。

上图是一张行政区划图,属于非常常见的地图,纵使配了色彩,显示效果还是非常一般。为了让它满足大众的审美要求,笔者决定拿起手术刀给它做一个整形手术。我们最希望看到的是这个样子的地图

下面来看看所做的一些操作。首先对这个数据做一个距离合适的【缓冲区】分析,这个地球人都知道怎么做。但我们做的是一个内缓冲,这种做法几乎是我这个主刀医生的惯用伎俩。选择一个适当的距离,然后做缓冲分析。

内缓冲之后结果如下,可以看到明显的与原来的底图构成了一个空隙,其实我们做内缓冲就是需要这个空隙。

接下来针对这个做了内缓冲的数据做一个【欧氏距离】分析,为了啥?就是为了暴露一个鲜为人知的秘密。这需要在spatial工具里面找到欧氏距离这个工具。别以为这个工具一般用在成本和统计计算,其实它的作用非常巨大。选择内缓冲的图层作为输入参数,并输入其他适当的参数(再次提到适当这个词,何为适当,就是多试几次,试到合适位置,就像挑衣服一样)

点击【确定】,最终生成欧氏距离。生成的结果有点丑,如下图所示。但是,将丑陋的地图变漂亮是笔者一贯的宗旨。

但是,将丑陋的地图变漂亮是笔者一贯的宗旨。接着,使用【数据管理】--【栅格】--【栅格处理】--【裁剪】工具,对这个欧氏距离的结果进行裁剪。裁剪需要注意一定的事项,处理范围选择最原始的行政区划图层,关键部分选中【使用输入要素裁剪几何】,如下图

通过裁剪,完整的勾勒出欧式距离的轮廓。

这个黑不溜秋的结果,就是一个栅格数据。直到之一步为止,我们做出来的一切都是狗屎,根本不知自己在做什么。但是,到了这一步,其实就是完成了所有的关键步骤了。其关键就是中间的这些边界共边处空出一些灰度值较低的空隙来。下一步又是发挥想象力的时候了,还记得【大明湖畔的夏雨荷吗?】,噢不对,是还记得前面的章节ArcGIS制图技巧系列(2)地形渲染 吗?对,就是它。我们可以借鉴前面的经验,通过这个栅格数据做一个山体阴影的效果。不只是地形才可以做哦,所有的栅格数据都是可以的,工具从来不会拒绝符合条件的参数。

如果效果要非常好的话,那么方位角和高度角两个参数都使用适当的数据。这里采用默认的就行。

到了这一步,这个美人胚子就雕琢得差不多了,可以给她穿上衣服了。就是将原来的图层叠加上去,调节行政区划图层的透明度。其他不相干的图层都可以移除掉。

最终掀开其神秘的面纱,可以看到其“玲珑浮凸”的身材。这就是一张漂亮的地图。

要是这个效果还不够,可以继续配置制图表达去完善一下,如下图

总结:

这个立体效果图依然还是借助ArcGIS强大的分析工具,通过非常巧妙的生成一些辅助数据进行辅助制图。其数据原理是跟植被填充效果一样,从无到有;其显示制作灵感则来自于地形渲染。这里所有的一切都是旧瓶装新酒,重新包装一下就可以出一个新的效果图了。因此,还是那一句话,制图技术是有限的,制图技巧是无限的,想象力是没有边界的。

ArcGIS制图技巧系列(3)—让地图更有立体感的更多相关文章

  1. ArcGIS制图技巧系列(2)地形渲染

    ArcGIS制图技巧系列(2)地形渲染 by 李远祥 DEM数据是常见的地形数据,在GIS常规的制图中,DEM一直扮演着增强效果.由于带有高程值,DEM在很多情况下都在三维中显示,但这里主要介绍的是在 ...

  2. ArcGIS制图技巧系列(1)还原真实的植被

    ArcGIS制图技巧系列(1)还原真实的植被 by 李远祥 在GIS数据中,植被一般都是面装要素的形式存在.很多人在使用植被渲染的时候,一般会采用填充符号去渲染.而在ArcGIS中,填充符号要么就是纯 ...

  3. (转)ArcGIS制图技巧

    ArcGIS制图技巧(转载自新浪博客)   1  引言 1.1  制图的目的 随着GIS在各行各业的深入应用,各信息化部门和生产单位都逐渐建立起自己的GIS的应用,同时积累了大量的地理数据.随着应用深 ...

  4. ArcGIS制图表达Representation-制图表达原理

    ArcGIS制图表达技术-制图表达原理 by 李远祥 在讲述原理之前,需要对上一章内容进行一些必要的补充说明.既然制图表达有很多优势,是不是什么情况下都可以使用制图表达技术呢?如果有以下的一些特殊的要 ...

  5. ArcGIS制图表达Representation-制图表达介绍

    ArcGIS制图表达技术-制图表达介绍 by 李远祥 在基于GIS数据的制图中,大部分都是使用的数据+符号应用的这种模式.这种模式已经被应用很多年,而且也是非常成熟.对应在ArcGIS体系里面,就是数 ...

  6. ArcGIS制图表达Representation实战篇4-自由式制图表达

    ArcGIS制图表达Representation实战篇4-自由式制图表达 by 李远祥 上一章节关于制图表达的控制点中已经介绍过制图表达的编辑功能,利用制图表达的编辑功能,可以实现一些规则以外的效果. ...

  7. ArcGIS制图表达Representation实战篇1-边界线和行道树制作

    ArcGIS制图表达Representation实战篇1-边界线和行道树制作 by 李远祥 即便是有了一些制图表达的基础,很多人还是对ArcGIS制图表达理解停留在表面,因为没有实际的强化训练是很难体 ...

  8. iOS开发技巧系列---详解KVC(我告诉你KVC的一切)

    KVC(Key-value coding)键值编码,单看这个名字可能不太好理解.其实翻译一下就很简单了,就是指iOS的开发中,可以允许开发者通过Key名直接访问对象的属性,或者给对象的属性赋值.而不需 ...

  9. Android Studio使用技巧系列教程(二)

    尊重劳动成果,转载请注明出处:http://blog.csdn.net/growth58/article/details/46764575 关注新浪微博:@于卫国 邮箱:yuweiguocn@gmai ...

随机推荐

  1. C# 6.0 11个新特性

    1. 静态using(static using) 静态using声明允许不使用类名直接调用静态方法. The static using declaration allows invoking stat ...

  2. [即时通讯]openfire启动失败解决办法

    当你发现你的电脑上的openfire无论你是重新安装还是重启都无法启动的情况下你可以按照我下面写的那些终端指令来启动你的openfire不用再去重新做你的系统了. 一般你发现你的openfire打开出 ...

  3. MYSQL管理----数据库删除恢复

    (1) 如果备份了,就好解决了.略. (2)如果日志打开,使用mysqlbinlog来恢复. mysqlbinlog工具的使用,大家可以看MySQL的帮助手册.里面有详细的用, 在这个例子中,重点是- ...

  4. JSON的BUG

    问题描述: method_cfg["input_method"][0].asString() 报错误: test1.cpp:40:46: error: ambiguous over ...

  5. AdaBoost的java实现

    目前学了几个ML的分类的经典算法,但是一直想着是否有一种能将这些算法集成起来的,今天看到了AdaBoost,也算是半个集成,感觉这个思路挺好,很像人的训练过程,并且对决策树是一个很好的补充,因为决策树 ...

  6. CodeForces 652C Foe Pairs

    只要计算每个位置最多能到哪个位置,累加即可,DP从后往前预处理一下每个位置到达的最远位置. 有坑点:输入的时候如果同一个点出发的,需要保存最小值. #include<cstdio> #in ...

  7. getElementsByTagName("div")和$("div")区别

    作者:zccst <body> <div class="selected">1</div> <div class="select ...

  8. linux命令学习-1-less

    less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大.less 的用法比起 more 更加的有弹性.在 more 的时候,我们并没有办法向前面翻 ...

  9. iOS开发——pch文件创建

    新换的公司,接手的项目里面连pch文件都没有,每次需要用到屏幕的宽高时,都是现写.今天既然碰到了,就把PCH这个玩意说一下. 1.Command+N,打开新建文件窗口:iOS->Other-&g ...

  10. .NET反射

    反射是一个程序集发现及运行的过程,通过反射可以得到*.exe或*.dll等程序集内部的信息.使用反射可以看到一个程序集内部的接口.类.方法.字段.属性.特性等等信息.在System.Reflectio ...