ArcGIS 网络分析[1.4] 制作点线要素时需要注意的地方
有很多同学虽然成功做好了网络数据集,但是分析时会出现这样的问题:
这是为什么呢?
这有三个可能的原因:
1. 两个点之间所有的道路没有连通(问题出在点、线数据上)。
2. 网络数据集出现了孤立的点位置。
3. 网络数据集的连通性有问题。
我就从这三个方面说说,如何避免这些问题。因为标题起的是点线要素的制作情况,我就着重讲第一点了,后两个情况简单说说,在第四章网络数据集的连通性会详细说。
1. 问题出在点线数据上
还分两个简单的情况:
一个是点不在线上;
另一个比较复杂:线之间二维没有由折点连通。
这里的由,用专业的说法就是"via",或者"by"。
点不在线上很容易,初中数学都说过的,想必证明点在线上的问题已经让各位头疼了吧。
那么,什么是“线之间二维没有由折点连通”?
我们暂时假定道路数据是没有高程数据的,也就是说,所有的道路均在二维平面上。
伟大的数学家华罗庚说过,“数有形时可直观,形有数时能入微”。我们画图吧!
我们知道,ArcGIS里的线是Polyline,一个Polyline数据集有多条折线,一条折线由n个折点(也叫结点、节点、端点)和n-1条线段组成,例如下图:
这个三折线就包括了3条线段和4个折点。
那么熟悉了折点的概念,我们往下看看,什么是二维间没有折点连通?
我又画了一条三折线,用绿色的折点表示:
现在,我将绿色的三折线挪动,与红色的线相交,只会有这样的三种情况:
A、B、C三种情况有什么不同?
在ArcGIS中,如果不显示折点,是根本看不出是如何相交的。
A:线相交,但是存在上下的关系
B:线相交,虽然存在上下关系,但是有一条线的一个折点在另一条线的边上
C:线相交,虽然存在上下关系,但是一条线的一个点与另一条线的折点重合
现在我们再来看看“线之间二维没有经过折点连通”,就十分容易了:A、B两个情况均为此情况,只要是这样的情况
构建的网络数据集都不会在线的交点处连通。
——————————那么,说清楚了,如何画线是最科学的呢?——————————
- 十字路口、岔路口处设置折点。
- 立交桥处不设置折点(这样就不连通了)。
- 立交桥的匝道出入口设置折点。
如果涉及立交桥,那么就需要设置高程字段了,而且是涉及了三维线数据的端点连通问题,更为复杂。
在此我暂时不解释,有兴趣的同学可以参考官方的帮助文档,说的很详细。(其实就是画起来和解释起来比较麻烦,篇幅原因,怕读者拍砖看不懂、说我写的复杂,就不继续写了,从我的二维情况可以推广到三维的情况)
说实话,A和B完全就可以看作有一条线在另一条线的上空,你想想,两条路如果不相交,而是上下的关系,车子怎么切换道路呢?当然也就不连通咯。
但是,在二维世界里没有第三个维度,所以看起来“叠合”在一起了而已。
plus:还记得1.2用shp创建网络数据集中那张图吗:
为什么不按红线走呢?
因为紫色圈的地方根本没有“二维按折点连通”。可以看到,蓝色的点即为网络数据集的连通点,紫色圈的地方没有连通的折点,说明相交的两条线确实没有“二维按折点连通”。
见Route.shp编辑下的状态:
是没有绿色的折点的,难怪不能连通了。
在我的编辑下,Route.shp已经全部实现了每条线交叉的地方都有折点。见新的网络数据集的Junctions:
每个交叉点都是连通的,所以道路也就畅通无阻(当然这是假定交点都是十字路口,不是立交桥)
2. 网络数据集出现了孤零零的点(我好孤单!)
这个点类似于岛屿,其实就是上面提及的点不在线上,构建网络网络数据集的时候就成了孤立的点。
(这个问题一直困扰着我,最近才解决)
还是画图更直观吧!
红色的点假设是点要素类中的一个点要素,并不在任何一条线上,虽然可以创建网络数据集,但是在网络数据集中是孤零零的一个点:
然而,在网络数据集中孤立的点并不会显示,端点也不会显示,例如有这样的一幅网络数据集:
我们是看不到端点的,也看不到孤立的点。上上个图我只是把端点和孤立点“画”了出来。
所以如果存在这样的路网数据和点数据:
两个点是孤立点,一个点在线的折点上(而不是在线上) (为啥这样说,下一篇会写到如果有点数据,网络数据集又如何创建)
构建网络数据集时,点数据选择依边线连通:
完成时会提示:
这样就存在了孤立点。
虽然不影响,但是如果精确地添加了网络位置到这些独立的点上,自然就会出现文章开头的无法分析的情况。
网络位置是可以用这个工具添加的:
可以简单理解网络位置为最短路径中的起点终点,最近设施点等。
当使用构建网络数据集的点要素添加为网络位置点时,就说精确重合了,那当然是不连通的,没法分析咯。
3. 网络数据集的连通性问题
这个属于以后的内容,在这里就不细说了,等以后写完第四章的连通性问题,就会在这里跟进超链接。
ArcGIS 网络分析[1.4] 制作点线要素时需要注意的地方的更多相关文章
- ArcGIS 网络分析[1] 利用自定义点线数据(shp或数据库)创建网络数据集【小白向】
前言 似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何“使用自己的数据”创建“网络数据集”的文章. 究其原因,是因为当前的高质量的线数据或保密,或采集困难. 有介绍几何网络的,有介绍如何用官方S ...
- ArcGIS 网络分析[1.5] 使用点线数据一起创建网络数据集(如何避免孤立点/点与线的连通性组合结果表)
ArcGIS中最基本的三种矢量数据是什么?点线面. 网络中除了路网之外,还会有地物点. 如上图,我们在建立网络数据集的时候,作为实验,当然可以只是公路网.但是在大型的决策任务中,网络数据集就不只是公路 ...
- ArcGIS 网络分析[0] 介绍与博文目录【更新中】
网络分析是个热点,理论上是属于计算机图形学和数据结构的,GIS以此为基础做出应用. 以下列举本人在学习中遇到的网络分析问题与经验总结. 1. 软件平台及数据准备 平台:Windows 10 操作系统, ...
- ArcGIS 网络分析[1.2] 利用1.1的线shp创建网络数据集/并简单试验最佳路径
上篇已经创建好了线数据(shp文件格式)链接:点我 这篇将基于此shp线数据创建网络数据集. 在此说明:shp数据的网络数据集仅支持单一线数据,也就是说基于shp文件的网络数据集,只能有一个shp线文 ...
- ArcGIS 网络分析[2] 利用自定义基础数据创建网络数据集
前言 似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何"使用自己的数据"创建"网络数据集"的文章. 有介绍几何网络的,有介绍如何用官方SanFrancis ...
- ArcGIS 网络分析[8] ArcObjects二次开发之底层网络分析开发
基于现有的线要素类.转弯要素类(在地理数据库的要素数据集中),要用AO做两件事: 1. 创建网络数据集(使用Geodatabase类库) 2. 执行网络分析(使用NetworkAnalyst类库) 在 ...
- ArcEngine中合并断开的线要素(根据几何判断)
在上一篇ArcEngine环境下合并断开的线要素(根据属性)随笔中介绍了如何通过shp文件属性表中相同的属性字段进行线要素的合并.今天刚把通过几何条件判断的方式连接断开的线要素的ArcGIS 插件完成 ...
- ArcEngine环境下合并断开的线要素(根据属性)
1.遇到的问题: 最近遇到在线要素(矢量数据)中,一条完整的道路.河流等往往是断开的,如下图1所示: 2.思路: 在ArcGIS Desktop中没有相关的工具可以将这些断开的线要素进行自动合并,今天 ...
- ArcMAp对线要素进行平滑处(打断)
一:工具简单介绍 -- ArcMAp10.1的高级编辑工具中提供了对线/面要素进行概括/平滑处理的工具. 概括工具.平滑工具分别例如以下:(首先得开启编辑状态 --- 才干够对要素的属性进行更改).选 ...
随机推荐
- 《java.util.concurrent 包源码阅读》08 CopyOnWriteArrayList和CopyOnWriteArraySet
CopyOnWriteArrayList和CopyOnWriteArraySet从数据结构类型上来说是类似的,都是用数组实现的保存一组数据的数据结构,区别也简单就是List和set的区别.因此这里就先 ...
- 「JavaScript」手起刀落-一起来写经典的贪吃蛇游戏
回味 小时候玩的经典贪吃蛇游戏我们印象仍然深刻,谋划了几天,小时候喜欢玩的游戏,长大了终于有能力把他做出来(从来都没有通关过,不知道自己写的程序,是不是能通关了...),好了,闲话不多谈,先来看一下效 ...
- Flask中使用Flask-Migrate扩展迁移数据库
安装Flask-Migrate插件 (venv) $ pip install flask-migrate 注意到虚拟环境中(因为Flask环境就安装在虚拟环境中) 安装flask-script使pyt ...
- ##6.2 Neutron计算节点-- openstack pike
##6.2 Neutron计算节点 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##6.2 Neutron计算节 ...
- 微信小程序爬坑日记
新公司上手小程序.30天,从入门到现在,还没放弃... 虽然小程序发布出来快一年了,爬坑的兄弟们大多把坑都踩平了.而我一直停留在"Hello World"的学习阶段.一来没项目,只 ...
- MATLAB中最基本函数plot()的用法
1二维平面图形 1.1基本图形函数 画出一条正弦曲线和一条余弦曲线 1.1.1绘图参数表 y 黄- 实线. 点< 小于号 m 紫: 点线o 圆s 正方形 c 青-. 点划线x 叉号d 菱形 r ...
- 怎样将word文件转化为Latex文件:word-to-latex-2.56具体解释
首先推荐大家读一读这篇博文:http://blog.csdn.net/ibingow/article/details/8613556 --------------------------------- ...
- Android学习笔记(10).布局管理器
布局管理器的几个类都是ViewGroup派生的,用于管理组件的分布和大小,使用布局管理器能够非常好地解决屏幕适配问题. 布局管理器本身也是一个UI组件,布局管理器能够相互嵌套使用,以下是布局管理器的类 ...
- [数字图像处理]常见噪声的分类与Matlab实现
1.研究噪声特性的必要性 本文的内容主要介绍了常见噪声的分类与其特性. 将噪声建模,然后用模型去实现各式各样的噪声. 实际生活中的各种照片的老化,都能够归结为下面老化模型. 这个模型非常easy,也能 ...
- 五、Spring Boot 事务
spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement 开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactio ...