ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转
ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转
by 李远祥
上一章节主要是从实战中使用规则和几何效果,如何分解制图规则。本章主要还是通过一些特殊要求如河流线宽渐变和符号的角度旋转,介绍制图表达的另外两项技术--规则覆盖和制图表达工具。
在制图表达原理的章节中已经介绍过制图表达的两个字段,rule_ID和override ,之后的章节都是围绕这规则来讲解(也就是rule_ID记录的规则),那么本章节就开始介绍override 字段所显示的内容。原则中,override 记录的是规则覆盖的内容。先来看看河流线渐变和测站符号垂直河流旋转的效果。
河流渐变效果
符号自动旋转效果
河流线渐变
首先来看河流线渐变效果。图上的效果是一种夸大的效果,主要是为了让技术人员能够看清楚其具体效果的变化。一般情况下,河流线的这种从发源处线条比较幼细,然后中游稍微宽大,下游逐渐变大的效果,会出现在小比例尺的大图中,基本上是使用线宽渐变的效果。
在传统的线符号显示中,主要是粗细均匀的显示。如果要实现线条粗细渐变,则需要采用制图表达的几何效果,用【锥状面】来渲染线条。在使用制图表达之前,首选要确保一项非常重要的事情,就是河流的流向必须是正确的。我们可以用gis数据的数字化方向来表达流向。下图是河流的标准符号显示
先给予河流一个特殊符号渲染,用箭头符号渲染它,箭头指向终点(即指流向),如果发现有错误的地方,通过编辑进行线要素的反向操作。
如果发现方向错误,用编辑器双击选中,使用右键进行反向。这一步非常重要,因为如果流向不对,或存在逻辑性错误,会导致后来的效果乱七八糟。
确保所有的流向都没有问题,那就可以切换为原来的河流模样,并转为制图表达
在制图表达规则中,增加一个面符号图层,设置为蓝色,并删除掉原来的线符号图层。
点击加号,增加【锥状面】效果
点击确定之后几乎出现让人崩溃的画面,如下图所示
这个其实不要紧,因为制图表达规则在每一要素之间都应用了规则。由于河流是分段,所以出现这种每一个线要素都是锥形显示。那么接下来就是使用制图表达的编辑工具进行制图表达的修改。在菜单空白的地方,右键调出制图表达工具,如下图
同时使用编辑工具打开编辑,这样,通过使用制图表达的选择箭头(是制图表达工具里面的褐色箭头工具,不是编辑工具里面的选择工具),选中后使用右键属性
在属性中切换到制图表达规则,修改这个规则,如果是中间部分可以改为两端大小一样,如下图,这样就有一个很好的衔接。
这些规则的修改,就是存储在override字段里面。所有的河段都修改之后,就可以出下图的渐变效果了。
如果觉得效果不是很明显,不够圆润,可以使用平滑效果进行处理。制图的工作本来就是挑刺和精益求精,所以,多试试其他的效果不是坏事。
如果仔细思考的话,会发现制图表达也有这个编辑工具,这个工具的作用可大了,后面的章节会有更多的介绍。只要是经这个工具编辑过的制图表达,就会存储在override 字段中。
符号旋转效果
某些时候需要针对点符号进行一定规则的旋转。例如水利专题图上就要求测站(等腰三角形符号)参考河流线垂直旋转。
根据标砖符号的方式,是需要增加一个角度字段,设置好角度值,使用符号的高级渲染进行按角度旋转。虽然这样做也能实现旋转,但毕竟每个角度都要手工输入,并且要细致调整,工作量比较大。当然,在标准符号里面笔者也写了个【快速制图插件】去实现这个功能,但如今告诉大家一个arcgis原生的工具也可以实现,不过就必须在制图表达里面才能实现。
首先需要将地图在标准符号下配置好,然后两个图层都必须转为制图表达。如下图
然后要设置地图的参考比例。参考比例可以理解为我们要制作地图的比例尺。例如要制作1:5w的地图,就先缩放到1:5w,然后数据框中设置为参考比例。如下图
然后可以在工具箱里面找到【制图工具】--【制图优化】--【对齐标记】工具,并且设置点符号图层和参考的线要素图层,给定一个搜索距离(如果点是落在线上,这个距离设置一个很小的值就够了,如果点落在线外,则根据自己的数据适当尝试不同的值)。
设置好后点击【确定】就可以了出结果了。笔者曾经在某某水利单位尝试过500个以上的测站,机会是秒算出结果。
之所以介绍这个工具,是因为其实用性很强。其他的一些制图表达工具可以在【制图优化】【制图表达管理】里面找到。其中制图优化里面还有一个【按角度设置控制点】,可以提前预示一下,这也是一个非常好的工具。后面的章节会有所介绍。
总结
从这两个实例中可以看到,制图表达其特性,既可以自由控制制图表达,同时也可以使用工具整体进行优化处理。
ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转的更多相关文章
- ArcGIS制图表达Representation实战篇4-自由式制图表达
ArcGIS制图表达Representation实战篇4-自由式制图表达 by 李远祥 上一章节关于制图表达的控制点中已经介绍过制图表达的编辑功能,利用制图表达的编辑功能,可以实现一些规则以外的效果. ...
- ArcGIS制图表达Representation实战篇3-控制点
ArcGIS制图表达Representation实战篇3-控制点 by 李远祥 这一章讲述的是一个非常专业的名词,叫控制点.此控制点非测绘行业术语的控制点,而是制图表达里面的控制点,所以不能混为一谈. ...
- ArcGIS制图表达Representation实战篇1-边界线和行道树制作
ArcGIS制图表达Representation实战篇1-边界线和行道树制作 by 李远祥 即便是有了一些制图表达的基础,很多人还是对ArcGIS制图表达理解停留在表面,因为没有实际的强化训练是很难体 ...
- ArcGIS制图表达Representation-制图表达介绍
ArcGIS制图表达技术-制图表达介绍 by 李远祥 在基于GIS数据的制图中,大部分都是使用的数据+符号应用的这种模式.这种模式已经被应用很多年,而且也是非常成熟.对应在ArcGIS体系里面,就是数 ...
- ArcGIS制图表达Representation-符号制作
ArcGIS制图表达Representation-符号制作 by 李远祥 在ArcGIS的符号里面,存在着两种符号体系,一种是传统的标准符号体系,一种是制图表达符号体系.标准符号几乎被绝大部分ArcG ...
- ArcGIS制图表达Representation-规则和几何效果
ArcGIS制图表达Representation-规则和几何效果 by 李远祥 对制图表达运用是否纯熟,主要是看对制图表达规则的理解和巧妙运用.前面章节已经粗略介绍过制图表达的运用,通过一些简单的规则 ...
- ArcGIS制图表达Representation-制图表达使用须知
ArcGIS制图表达Representation-制图表达使用须知 by 李远祥 前面章节也介绍了一些制图表达的适用范围和场景,如果有觉得需要使用制图表达去完成其工作的话,还需要注意制图表达的一些技术 ...
- ArcGIS制图表达Representation-制图表达原理
ArcGIS制图表达技术-制图表达原理 by 李远祥 在讲述原理之前,需要对上一章内容进行一些必要的补充说明.既然制图表达有很多优势,是不是什么情况下都可以使用制图表达技术呢?如果有以下的一些特殊的要 ...
- (转)ArcGIS制图技巧
ArcGIS制图技巧(转载自新浪博客) 1 引言 1.1 制图的目的 随着GIS在各行各业的深入应用,各信息化部门和生产单位都逐渐建立起自己的GIS的应用,同时积累了大量的地理数据.随着应用深 ...
随机推荐
- 函数(swift)
输入输出参数(In-Out Parameters) 如果你想要一个函数可以修改参数的值,并且想要在这些修改在函数调用结束后仍然存在,那么就应该把这个参数定义为输入输出参数(In-Out Paramet ...
- Spring自学教程-ssh整合(六)
以下是本人原创,如若转载和使用请注明转载地址.本博客信息切勿用于商业,可以个人使用,若喜欢我的博客,请关注我,谢谢!博客地址 感谢您支持我的博客,我的动力是您的支持和关注!如若转载和使用请注明转载地址 ...
- HUST 1371 Emergency relief
状态压缩. 每一个人所需的物品对应一个数字,统计一个每个数字有几个.每一种提供物品的状态也对应一个数字,然后暴力判断. #include<cstdio> #include<cstri ...
- DateTime.CompareTo方法
DateTime.CompareTo(value)方法,与一个时间比较,返回整数,含义如下: 值 说明 小于零 此实例早于 value. 零 此实例与 value 相同. 大于零 此实例晚于 valu ...
- MyBatis 3 中使用存储过程
转:http://zachary-guo.iteye.com/blog/1756689 Mybats 是 iBatis 被 Google 收购后重新命名的一个工程,当然也做了大量的升级.iBatis ...
- js Date 日期格式化(转)
var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1 ...
- S3C2440的SPI解析
位串行数据的频率.如果只希望发送,则接收数据可以保持伪位(dummy).此外如果只希望接收,则需要发送伪位'1'数据 使用SPI主要需要以下寄存器 选择SPI模式,中断模式,查询模式等SCK选择,主从 ...
- 【转】20条Linux命令面试问答
问:1 如何查看当前的Linux服务器的运行级别? 答: ‘who -r’ 和 ‘runlevel’ 命令可以用来查看当前的Linux服务器的运行级别. 问:2 如何查看Linux的默认网关? 答: ...
- cocos2d-x 跨平台usleep方法
#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32) #define usleep(t) Sleep(t) #else #include <unistd.h ...
- 计时器chronometer补充
项目中要实现关于安卓控件chronometer这部分的功能需求: 1.计时器的功能对用户答题时间进行时间统计,用户答完该题,进入下一题,计时器接续上一题的结束时间继续计时: 2.用户可以跳出答题界面, ...