ArcGIS制图表达Representation实战篇3-控制点
ArcGIS制图表达Representation实战篇3-控制点
by 李远祥
这一章讲述的是一个非常专业的名词,叫控制点。此控制点非测绘行业术语的控制点,而是制图表达里面的控制点,所以不能混为一谈。
在ArcGIS制图表达里面,控制点是一个非常有意义的存在。一般的情况下,我们是没能发现它的存在的,因为它很多时候都是默认作用在端点上。例如之前的实部相交的例子,模式的应用就直接作用在端点上,这个端点的实际意义,就是我们所谓的控制点,但其物理上不是控制点而已。
仔细想想就可以看出,制图表达上的控制点,其实就是规则和几何效果作用的起点。如果制图表达的效果默认是在端点启用的话,那么控制点就是在线上强制开启的端点,强制要求在该点上启用规则。首先我们来回顾一下之前的实部相交效果,
这个例子虽然在端点出实现了实部相交,但在其他的一些部分,还是出现了虚线很虚的状况,尤其是折点的位置,就如下图绿色圈住的部分。
我们最希望的就是在这些地方也能像两根线相交处一样,能够实现半模式的效果,这样就可以实现在折点处虚线也是实部相交。其实这个效果非常简单,就是使用控制点强行改变折点的属性,让其带有端点的效果。接下来我们可以看看怎么去操作这个步骤了。
首先,要将编辑工具和制图表达工具调出来,因为我们需要对线上折点进行编辑。开启编辑,并使用制图表达工具条的选择工具,选中摸一条线,进入节点编辑模式
留意其所有节点的显示状态,都是一个浅蓝色的正方向。接下来在制图表达工具条中点击钢笔符号,下拉选择工具类型,可以看到有几项关于控制点的选项
选择【插入控制点】工具,鼠标指针会变为其插入控制点状态,这样在线上任意一点点一下就可以插入控制点。这里对应的要求,就是在折点处插入一个控制点。用这个工具在线上蓝色正方形上点一点,这个正方型就会变成倒立的菱形。菱形就是控制点的显示符号。如下图所示
取消选择之后,就可以看到在这个折点处,也应用了半模式的显示,变成了是不相交。
其接下来的思路就是非常简单粗暴,控制点就像万金油一样,哪里需要就点哪里,这样通过增加控制点来实现折点处也是实部相交。当然也有人会问,如果有非常多的线和非常多的折点需要插入控制点,那岂不是非常麻烦?是的,不过,ArcGIS已经在一开始已经想到这个问题了,所以在制图工具箱里面已经加入了批量处理功能,而且还可以非常友好的处理角度。在【制图优化】-【按角度设置控制点】中,选中图层,然后输入一个最大的角度
点击确定后,马上可以看到整体效果,所有的折点处会插入对应的控制点,通过控制点来实现了所有的折点都是实部相交。如下图
这个工具是一个非常好用的工具,尤其是一些境界线,是有要求角度在什么范围内折点处必须是实部相交,通过这个工具可以非常快速的实现规范要求。当然,很多时候我们也可以学以致用,充分发挥自己的想象力。例如需要检查数据是否有尖锐的角度(一般是管线,因为管线很少会出现呈低于90度的交接的),所以,可以设置虚线端点处使用一个非常特殊的符号,然后使用半模式,通过上述工具,执行一个不大于90度的控制点批量插入。其最终会将那些尖锐角度的拐点全部检查出来。
虽然数据检查跟图关系不大,但实际上还是可以使用一些工具实现曲线救国的。所以说,很多时候技术只是支撑,关键是想象力和灵活运用。
顺便提一下,控制点是对规则应用的重新覆盖,所以数据会存入到override字段中。前面章节也提交过,override字段保存的东西越多,制图表达的性能就越慢,因此,对于覆盖的操作,不到万不得已,不要随便使用,也会给后期的修改带来一些麻烦。
在看下面一个例子,就是典型的模式+控制点的运用。一些国界类符号,有特殊显示的,要求在折点处变现的符号需要自动转变(跟规定的一般符号有一定的差异),如下图
这种到的工字形符号,在折点处除了要是不相交外,还需要保留一个完整的符号,并且符号两端需要与线方向保持垂直。这类型的规则其实并不懒,可以将其分解成两个层。一个是虚线层,就是使用我们之前说的半模式规则去实现。然在在顶上再加一个点符号层去表达,这个点符号层的模式、间距都必须跟线符号层保持一致。然后在【标记】的放置位置使用在端点处【两侧】显示,并勾选上与线成角度。
设置好这个规则之后,当然就是使用上面的工具批量插入控制点,这样就可以实现其效果了。至于其他的一些非常难实现的效果,例如山崖等,可以想想通过多种组合图层的方式,多种规则叠加方式去实现了。
同样的方式可以实现管线的效果,管点处使用的是一个符号,然后两端等距离处放一个特殊的符号,并与线成一定角度。如下图
其做法也是类似,只是有两个点来代替原来的一个点图层显示。
总结
总体来说,控制点可以实现以往非常多的难以实现的效果。它的规则的改变能力非常有效,并且辅助完成高难度动作。
ArcGIS制图表达Representation实战篇3-控制点的更多相关文章
- ArcGIS制图表达Representation实战篇4-自由式制图表达
ArcGIS制图表达Representation实战篇4-自由式制图表达 by 李远祥 上一章节关于制图表达的控制点中已经介绍过制图表达的编辑功能,利用制图表达的编辑功能,可以实现一些规则以外的效果. ...
- ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转
ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转 by 李远祥 上一章节主要是从实战中使用规则和几何效果,如何分解制图规则.本章主要还是通过一些特殊要求如河流线宽渐变和符号 ...
- ArcGIS制图表达Representation实战篇1-边界线和行道树制作
ArcGIS制图表达Representation实战篇1-边界线和行道树制作 by 李远祥 即便是有了一些制图表达的基础,很多人还是对ArcGIS制图表达理解停留在表面,因为没有实际的强化训练是很难体 ...
- ArcGIS制图表达Representation-符号制作
ArcGIS制图表达Representation-符号制作 by 李远祥 在ArcGIS的符号里面,存在着两种符号体系,一种是传统的标准符号体系,一种是制图表达符号体系.标准符号几乎被绝大部分ArcG ...
- ArcGIS制图表达Representation-规则和几何效果
ArcGIS制图表达Representation-规则和几何效果 by 李远祥 对制图表达运用是否纯熟,主要是看对制图表达规则的理解和巧妙运用.前面章节已经粗略介绍过制图表达的运用,通过一些简单的规则 ...
- ArcGIS制图表达Representation-制图表达使用须知
ArcGIS制图表达Representation-制图表达使用须知 by 李远祥 前面章节也介绍了一些制图表达的适用范围和场景,如果有觉得需要使用制图表达去完成其工作的话,还需要注意制图表达的一些技术 ...
- ArcGIS制图表达Representation-制图表达原理
ArcGIS制图表达技术-制图表达原理 by 李远祥 在讲述原理之前,需要对上一章内容进行一些必要的补充说明.既然制图表达有很多优势,是不是什么情况下都可以使用制图表达技术呢?如果有以下的一些特殊的要 ...
- ArcGIS制图表达Representation-制图表达介绍
ArcGIS制图表达技术-制图表达介绍 by 李远祥 在基于GIS数据的制图中,大部分都是使用的数据+符号应用的这种模式.这种模式已经被应用很多年,而且也是非常成熟.对应在ArcGIS体系里面,就是数 ...
- 二、Redis基本操作——String(实战篇)
小喵万万没想到,上一篇博客,居然已经被阅读600次了!!!让小喵感觉压力颇大.万一有写错的地方,岂不是会误导很多筒子们.所以,恳请大家,如果看到小喵的博客有什么不对的地方,请尽快指正!谢谢! 小喵的唠 ...
随机推荐
- 控制流之break
break语句是用来 终止 循环语句的,即哪怕循环条件没有称为False或序列还没有被完全递归,也停止执行循环语句.一个重要的注释是,如果你从for或while循环中 终止 ,任何对应的循环else块 ...
- webservice-概念性学习(一)
以下是本人原创,如若转载和使用请注明转载地址.本博客信息切勿用于商业,可以个人使用,若喜欢我的博客,请关注我,谢谢!博客地址 学习webservice之前呢,我想说我们先学习以下的知识,对你以后的学习 ...
- ZOJ 3935 2016
简单规律题...没看懂题目直接从输出中找到了规律. 先不管是不是闰年,前后两项的差值会形成一个等差数列,公差是64... 输出的时候再判一下闰年即可. #include<cstdio> # ...
- POJ 2139 Six Degrees of Cowvin Bacon
水题,Floyd. #include<cstdio> #include<cstring> #include<algorithm> using namespace s ...
- 仿复制粘贴功能,长按弹出tips的实现
方案分析: 方案一:监听长按事件弹出PopupWindow[可行,缺点布局是固定的,小语种下会出现菜单截断现象] 方案二:弹出ContextMenu[不可行,因为ContextMenu的菜单是上下排列 ...
- mysql表明保存不了,多了空格都不行啊
mysql表明保存不了,多了空格都不行啊
- javascript(3)
使用javascript改进链接 摘自<javascript基础教程> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Trans ...
- iOS 主动抛出异常
http://blog.csdn.net/jymn_chen/article/details/38096749 http://blog.sina.com.cn/s/blog_7270a06c0101b ...
- iOS开发——汉字转拼音
以前有一次做一个天气预报的项目,有一个功能是输入城市名,请求该城市的天气,需要把汉字转化成拼音,比如深圳——>shenzhen,加入到参数中.当时在网上找了一下,网友给出的方法很多都用不了,现在 ...
- CodeSmith批量生成实体
保存以下文件为ModelBatch.cst <%@ Register Name="Model" Template="D:\Q\web\LHWYVISIT\trunk ...