ArcGIS 网络分析[1.2] 利用1.1的线shp创建网络数据集/并简单试验最佳路径
上篇已经创建好了线数据(shp文件格式)链接:点我
这篇将基于此shp线数据创建网络数据集。
在此说明:shp数据的网络数据集仅支持单一线数据,也就是说基于shp文件的网络数据集,只能有一个shp线文件参与。
如何解决这个弊端呢?见下篇,利用地理数据库即可。
本篇目录:
1. 创建网络数据集 2. 给网络数据集命名
3. 转弯 4. 连通性 5. 高程
6. 网络数据集的阻抗属性
7. 出行模式 8. 导航设置 9. 创建并构建网络数据集
10. 试验最短路径
1. 创建网络数据集!
如图。
2. 给网络数据集命名
因为线shp的名称是Route,所以会自动命名为Route_ND(ND就是Network Dataset)
在这我没用别的,就默认。
3. ★ 转弯
这一步关键,但是现在是最简单的创建模式(就是尽量减少复杂的步骤),直接默认用通用转弯,下一步即可。
4. ★ 连通性
这一步也很关键,这直接与线要素的创建习惯有关,见上一篇的折点问题,这里还不会看到效果,等实战到简单的最短路径分析时就知道了。
在这里,连通策略使用按任意节点连通(就是按折点连通的意思)。不要问那么多,下一步。
5. ★ 高程
道路不可能一直平坦,但是这里作为示范,就不考虑这么多了,直接假设高程为0,选无即可。(好像shp也不能用高程)
6. ★★ 网络数据集的阻抗(属性)
这里必须谈一谈了。
道路网,要求解最短的路径,是什么最短?有的同学可能说时间,也有的同学说长度。
没错,这些就是阻抗,阻碍最小的那条路线,就叫最短路径。
ArcGIS的网络数据集可以拥有多个阻抗属性,就如同要素类可以拥有多个字段一样。
我们这里阻抗就用道路的长度——大白话说就是,假定道路畅通无阻,唯一影响我解算最短路径的就是道路的长度了。
见下图:
父窗口上的“长度”,即为网络数据集的一个阻抗属性,它的值怎么来?
由右边的参数给其 赋值 为Route线要素的Length字段。也可以双击属性给其赋值。
知道为什么要计算几何长度了吗?
这里大有门路,不仅仅是长度这个阻抗,还有很多类型的阻抗能影响网络数据集。
在这里,仅仅使用道路的长度作为阻抗,因为简单嘛。
确定下一步。
7. 出行模式
直接下一步。
8. ★ 导航设置
这一步会影响导航窗口的单位和道路名称的显示,如下图设置:
长度单位设置为千米。
名称使用Route这个shp线文件的Name字段(就创建线数据的时候填写的道路名)
确定下一步。
9. 创建并构建网络数据集
无视软媒魔方的浮动窗口。
刚才设置的所有信息都会列举出来。此时只需下一步,即可创建网络数据集。
软件会提示是否构建,选是。
在这里多说两句:创建是无中生有的过程,构建是利用给定的各种参数(连通性阻抗什么的)进行逻辑组合的过程。
创建只需这里一次,构建可以以后更新规则后再次进行。
这里选否。我们只需把Route_ND网络数据集添加到数据框即可。
创建完成后是这样的:
多了一个.nd文件和一个网络数据集连通结点的shp文件。
无视教程文件夹,那是我为了写这篇博客存放截图的文件夹。
我们简单试验一下最佳路径:
10. 试验最佳路径
打开网络分析工具条,选择当前的网络数据集,创建路径图层,使用添加位置工具点两个点,按求解按钮:
成功了!留心一下这里的蓝色结点,如果我改变起点终点位置:
它可能会绕的非常大,为什么不是按红箭头的方式走呢?那样才是最快的呀?
甚至会报错:起点和终点间没有连通。
这是为什么呢?这里先卖个关子,这和线数据的质量有关,详情见这篇博客:点我。
在下一篇博客中,就使用地理数据库来构建网络数据集了。