ArcGIS制图表达Representation-规则和几何效果

by 李远祥

对制图表达运用是否纯熟,主要是看对制图表达规则的理解和巧妙运用。前面章节已经粗略介绍过制图表达的运用,通过一些简单的规则可以实现比较理想的出图效果。但是,对于一些复杂的现实效果和制图规范来说,简单的规则的使用是远远不够的,还需要对制图规范和制图符号进行分解,然后使用各种制图表达规则进行重建。

要熟悉制图表达规则,首先要清楚制图表的图层。下图是一个面要素类的制图表达

在设置面板的下部,可以看到点、线、面 图层的添加按钮,全部都是可以点击。在制图表达里面,这三个按钮都是常亮模式。意味着无论是点线面的要素类,它们的制图表达可以用的规则图层都是没有限制的。这跟标准符号的模式完全不一样,可以看出制图表达的制图规则自由度非常的高。

中间部分就是规则图层,可以通过点击下部的符号图层进行增加。一个制图表达里面可以增加非常多的规则图层,如下图,多个点线面的符号图层都在同一个符号图层中表示出来。

规则图层都有默认的全局设置。例如点规则图层,默认是标记符号的大小、角度、放置等的设置。线规则符号的全局设置线宽、端头、连接和颜色。面规则符号的全局设置就是单色模式下的颜色设置。

如果我们希望使用制图表达去实现之前的植被填充的工作,那可以通过在面要素的制图表达里面增加点规则图层,做一个位置随机和大小随机的填充。

首选增加一个点的符号规则,选择好适当的符号,然后在设置里面【面中心】的小三角符号点击一下,弹出【标记放置】规则,选择【在面内随机放置】。

选择好放置规则之后,可以看到整个设置界面都发生了变化,针对随机放置,可以设置xy的步长值,如果不希望在边界处出现半个符号的现象,可以设置【不显示解除边界的标记】,这一点就是之前我们做植被显示的时候为什么先做内缓冲生成的原理一样,不过制图表达要简单得多。

接下来我们可以看看实际的效果,只是出现了一些位置的随机,符号的大小设定为原来的10pt,感觉还远远没有实现我们想要的效果。

别看这个小小的规则好像不成什么气候,不能实现具体的效果,但作为制图人,应该有这天生的制图直觉。我们可以想象一下以前在标准符号系统里面是怎么实现符号规则的,其根本原理跟制图表达的规则是一样的,归根到底就是【层】这个概念的理解。无论是地图、符号、图层组全部都是层的概念,所以,制图表达里面,我们可以使用多个制图表达的符号层来叠加,实现复杂的表达。例如,我们可以再增加一层点的规则,调整符号的大小、随机位置和随机种子等,从而实现符号大小随机。

再看其显示效果,通过两层符号规则的叠加,看起来实现了大小和位置的随机。

如果再加一层不同的树种,模仿一下植被的多样性,那就再加一层符号,修改一下符号就行。如下图所示

上述例子看到看到制图标的规则都是最为原始的加减乘除算法一样,只要合理的组合起来,就可以完成非常复杂的制图效果了。但正是由于规则的粒度非常细,控制非常灵活,所以,对于没有制图经验的技术人员来说,要从一个符号规范直接分解为制图表达规则,还需要长时间的锻炼和强化。这也就是为什么制图表达比较难推广的原因。

前面看到的设置都是制图表达的全局规则。除了全局规则之外,制图表达还有【几何效果】。全局规则都是非常粗略的规则设置,拿标准符号的线符号进行类比,全局规则就有点像【简单线符号】,而几何效果就像是【制图线符号】里面的模版一样。

那么都有哪些几何效果?要了解并不难,只要在不同的点线面规则,点开其加号按钮,就会看到所有的几何效果。

几何效果的作用更加类似与toolbox里面的一些处理工具,toolboxl里面的工具几乎全部都是直接作用在数据之上,会产生新的数据,对于制图来说,还需要增加图层和符号来约束其效果。制图表达的这些几何效果就不一样了,它是动态计算的,不会生成新的数据,而是在规则的rule_ID里面保存这些规则配置。

虽然几何效果不多,但几何效果有一个特点,就像PS里面的滤镜一样,可以进行相互叠加,这是一种排列组合的机制,看似不多的几何效果,其实组合起来是非常多。例如我们可以对面做一些效果,多个效果进行叠加,例如先做平滑,然后简化。如下图

又或者是先简化后平滑,虽然两者的参数是一样,但几何效果的顺序不一样,可以看到规则的示意图也是不一样的,如下图所示

所以,从这些简单的规则和几何效果的使用来看,制图表达在这方面虽然很简单,但实际很强大。这里面非常需要有丰富竟然的制图人员进行规则的分解和重构。只要制图人员有足够的想象力和分解能力,可以根据制图表达实现几乎所有的地图效果。

ArcGIS制图表达Representation-规则和几何效果的更多相关文章

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

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

  2. ArcGIS制图表达Representation实战篇3-控制点

    ArcGIS制图表达Representation实战篇3-控制点 by 李远祥 这一章讲述的是一个非常专业的名词,叫控制点.此控制点非测绘行业术语的控制点,而是制图表达里面的控制点,所以不能混为一谈. ...

  3. ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转

    ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转 by 李远祥 上一章节主要是从实战中使用规则和几何效果,如何分解制图规则.本章主要还是通过一些特殊要求如河流线宽渐变和符号 ...

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

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

  5. ArcGIS制图表达Representation-符号制作

    ArcGIS制图表达Representation-符号制作 by 李远祥 在ArcGIS的符号里面,存在着两种符号体系,一种是传统的标准符号体系,一种是制图表达符号体系.标准符号几乎被绝大部分ArcG ...

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

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

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

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

  8. ArcGIS制图表达Representation-制图表达使用须知

    ArcGIS制图表达Representation-制图表达使用须知 by 李远祥 前面章节也介绍了一些制图表达的适用范围和场景,如果有觉得需要使用制图表达去完成其工作的话,还需要注意制图表达的一些技术 ...

  9. (转)ArcGIS制图技巧

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

随机推荐

  1. HDU 5621 KK's Point

    N个点中任意选取四个点,就能产生一个圆内的交点,所以圆内总共有C(N,4)个交点,圆上有N个,相加就可以了. 注意:组合数运算的时候会爆longlong,中间先除一下就可以了. #include &l ...

  2. window环境变量

    首先Window中有很多乱七八糟的路径变量之类的,归类下来有几类,主要是为了我们分清楚概念,以免搞的糊涂了. 1. Window系统的环境变量:顾名思义,就是系统级别的变量,或者利用我们编程的角度来讲 ...

  3. Android面试题随笔1

    1.如何让一个应用在手机上产生两个或多个图标? 在清单文件中的activity节点下配置如下:[5,7行代码] <activity android:name=".MainActivit ...

  4. Codeforces#348DIV2/VK CUP 2016

    昨天第一次开大小号打cf,发现原来小号提交之后大号在此提交同样的代码会被skipped掉,然后之后提交的代码都不记分,昨天a,b,c都是水题 A 题意:问一个物品最多能被分成多少份,分成的连续两份不能 ...

  5. C++中string中的erase函数怎么使用

    erase函数的原型如下:(1)string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator p ...

  6. eclipse 完全智能提示

     1.添加智能提示 eclipse的代码提示是按”.”这个字符提示的,而如果想在其他的条件下触发,则需要按Alt + / 或者是 Ctrl + Space手动调用 (Ctrl + Space原先是Ec ...

  7. java学习(三) java 中 mongodb的各种操作

    一. 常用查询: 1. 查询一条数据:(多用于保存时判断db中是否已有当前数据,这里 is  精确匹配,模糊匹配 使用 regex...) public PageUrl getByUrl(String ...

  8. 使用PHP开发一个简单的后台接口(响应移动端的get请求和post请求)

    写一个简单的后台,在接到app请求数据的时候,返回对应的内容: index.php文件如下: <?php $id = $_POST['id']; if($id==001){ echo json_ ...

  9. make执行过程

    转载自 陈皓<跟我一起写 Makefile> 一般来说,最简单的就是直接在命令行下输入make命令,make命令会找当前目录的makefile来执行,一切都是自动的.但也有时你也许只想让m ...

  10. 升级R版本后,更新Package

    升级R版本后,若重新安装所有的package将非常麻烦,可以尝试运行一下程序: 1)在旧版本中的R中运行 #--run in the old version of R setwd("C:/T ...