上篇已经创建好了线数据(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.  试验最佳路径

打开网络分析工具条,选择当前的网络数据集,创建路径图层,使用添加位置工具点两个点,按求解按钮:

成功了!留心一下这里的蓝色结点,如果我改变起点终点位置:

它可能会绕的非常大,为什么不是按红箭头的方式走呢?那样才是最快的呀?

甚至会报错:起点和终点间没有连通。

这是为什么呢?这里先卖个关子,这和线数据的质量有关,详情见这篇博客:点我

在下一篇博客中,就使用地理数据库来构建网络数据集了。

ArcGIS 网络分析[1.2] 利用1.1的线shp创建网络数据集/并简单试验最佳路径的更多相关文章

  1. ArcGIS 网络分析[1.3] 在个人地理数据库中创建网络数据集/并简单试验最佳路径

    上篇使用shp文件创建网络数据集,然而在ArcGIS 9中就支持地理数据库了,数据库的管理更为科学强大. 本篇就使用个人地理数据库进行建立网络数据集,线数据仍然可以是1.1中的线数据,但是我做了一些修 ...

  2. ArcGIS 网络分析[8.1] 资料1 使用AO打开或创建网络数据集之【打开】

    为了创建或打开一个网络数据集,你必须使用NetworkDatasetFDExtension对象(文件地理数据库中的数据集)或NetworkDatasetWorkspaceExtension对象(对于S ...

  3. ArcGIS 网络分析[2] 利用自定义基础数据创建网络数据集

    前言 似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何"使用自己的数据"创建"网络数据集"的文章. 有介绍几何网络的,有介绍如何用官方SanFrancis ...

  4. ArcGIS 网络分析[1] 利用自定义点线数据(shp或数据库)创建网络数据集【小白向】

    前言 似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何“使用自己的数据”创建“网络数据集”的文章. 究其原因,是因为当前的高质量的线数据或保密,或采集困难. 有介绍几何网络的,有介绍如何用官方S ...

  5. ArcGIS 网络分析[1.5] 使用点线数据一起创建网络数据集(如何避免孤立点/点与线的连通性组合结果表)

    ArcGIS中最基本的三种矢量数据是什么?点线面. 网络中除了路网之外,还会有地物点. 如上图,我们在建立网络数据集的时候,作为实验,当然可以只是公路网.但是在大型的决策任务中,网络数据集就不只是公路 ...

  6. ArcGIS 网络分析[8.3] 设置IDENetworkDataset的属性及INetworkDataset的对比/创建网络数据集

    创建网络数据集就得有各种数据和参数,这篇文章很长,慎入. 网络分析依赖于网络数据集的质量,这句话就在这里得到了验证:复杂.精确定义. 本节目录如下: 1. INetworkDataset与IDENet ...

  7. ArcGIS 网络分析[8.2] 资料2 使用IDatasetContainer2接口的CreateDataset方法创建网络数据集

    上节提及如何使用IDatasetContainer2接口访问到网络数据集,上例可以封装为一个方法. 这节就使用IDatasetContainer2接口(Geodatabase类库)的CreateDat ...

  8. ArcGIS 网络分析[0] 介绍与博文目录【更新中】

    网络分析是个热点,理论上是属于计算机图形学和数据结构的,GIS以此为基础做出应用. 以下列举本人在学习中遇到的网络分析问题与经验总结. 1. 软件平台及数据准备 平台:Windows 10 操作系统, ...

  9. ArcGIS 网络分析[1.1] 创建用于网络分析用的线类型shp文件[这个太基础了吧!]

    具体的准备,在上一篇就说过了,不再赘述. 阅读本篇前,需要的预备知识是:ArcGIS创建各种矢量数据的方法,了解地理坐标与投影坐标 本篇只创建单一的线数据,至于点数据,以后进行复杂的网络分析时再添加进 ...

随机推荐

  1. (11.28)Java小知识!

    关于继承的继承机制:继承中最常使用的两个关键字是exteds和implements.今天主要和大家分享extends的知识点.这两个关键字的使用决定了一个对象和另一个对象是否是IS-A关系.同时我们还 ...

  2. c语言的typedef

    一.typedef作用简介 1.作用:给已经存在的类型起一个新的名称 2.使用场合: 1> 基本数据类型 2> 指针 3> 结构体 4> 枚举 5> 指向函数的指针 * ...

  3. android stdio 快捷键

    俗话说工欲善其事必先利其器,先熟悉快捷键是很有必要的                 IDE   按键                                                 ...

  4. thinkphp框架知识点

    基本配置 define('APP_DEBUG',true);//开启debug模式 //记录日志 'LOG_RECORD' => true, //系统日志在记录的时候需要开启debug调试模式, ...

  5. 关于磁盘冗余阵列、热备、群集、负载均衡、云计算、F5、Nginx等的概念和基本原理

    在系统部署实施过程中,客户往往会关注系统的可用性方面的指标. 对于一个具备高可用性的系统来说, 多机部署方案是必不可少的. 我们这个知识分享,就从多个不同层面来介绍多机部署方案. ---------- ...

  6. phpstorm 2017.2激活

    激活 试用期的用户可在 PhpStorm菜单栏–>Help–>Register打开 选择License server,输入以下任意一个地址: http://idea.imsxm.com/  ...

  7. 【深度学习系列】用PaddlePaddle和Tensorflow实现经典CNN网络Vgg

    上周我们讲了经典CNN网络AlexNet对图像分类的效果,2014年,在AlexNet出来的两年后,牛津大学提出了Vgg网络,并在ILSVRC 2014中的classification项目的比赛中取得 ...

  8. Yii2如何添加sql日志记录的配置信息

    在使用Yii2框架的时候,常常会出现没有sql日志记录的问题.在代码里一句一句的打印sql语句也不现实.所以就要用文件记录起来. 在 config/web.php 里面的 log配置中增加如下配置 [ ...

  9. Elasticsearch JAVA api搞定groupBy聚合

    本文给出如何使用Elasticsearch的Java API做类似SQL的group by聚合.为了简单起见,只给出一级groupby即group by field1(而不涉及到多级,例如group ...

  10. 初识java这个小姑娘(二)

    妙解垃圾回收机制 周一,早高峰. 一段考验一个人耐力.智力.开车技术以及脾气的路. 我把车开进了一个没有红绿灯的丁字路口,然后就没有然后了. 来自三个方向的大车小车开始在不大的一块空间里开始互相斗智斗 ...