ArcGIS API for JavaScript 4.2学习笔记[27] 网络分析之最短路径分析【RouteTask类】

要说网页端最经典的GIS应用,非网络分析莫属了。
什么?你没用过?百度高德谷歌地图的路线分析就是活生生的例子啊!只不过它们是根据大实际背景优化了结果显示而已。
这个例子使用RouteTask进行网络分析,我会先讲讲什么是RouteTask,再讲讲这个例子是怎么用的,这个例子代码量不多。
在官方的例子中,标题为:SimpleRouting - RouteTask

看看结果

点击两个点,安静等待十

ArcGIS API for JavaScript 4.2学习笔记[28] 可视域分析【使用Geoprocessor类】

想知道可视域分析是什么,就得知道可视域是什么
我们站在某个地方,原地不动转一圈能看到的所有事物就叫可视域。当然平地就没什么所谓的可视域。
如果在山区呢?可视范围就会被山体挡住了。这个分析对军事上有十分重要的意义。
在本例中,可视域是以GraphicLayer中的Graphics[]形式存在的。
这个例子用到了Geoprocessor这个类。这个类的对象是如何判别我要进行可视域

ArcGIS API for JavaScript 4.2学习笔记[29] 热点(密度)分析——以报警频率为例【使用Geoprocessor类】

这个就颇有插值分析的样子了。也可以说是密度分析。做出来就是一个热力地图的样子。
比如,人口密度,降雨分布等。这都可以由这个例子做出来类似的。
由于上一篇已经介绍过Geoprocessor类和ParameterValue类了,所以这节就略去这些内容。想知道的同学可以点击这里,看上一篇相关内容。
与上一节不同的是,使用的不是execute()方法了,而是submitJob()方法,这是一个异步操作方法

ArcGIS API for JavaScript 4.2学习笔记[30] 点和线高程查询(第八章完结)

终于到最后一篇了,可喜可贺。
本例先说明了如何进行单点的高程差分析,然后说明了道路的起伏分析。前者很直观地比较了两个年份的高程数据之间的差值,体现山区的高程变化(有啥用啊?)后者,一条路上的起点终点起伏多少,可以给驾驶导航提供更多样化的数据。
本例使用了高程图层和RouteTask。
本例对应的官方例子是:Query Elevation (Points)和Query Elevation (Line

ArcGIS API for JavaScript 4.2学习笔记[31] (补充学习)Task类

Task这个东西很有用,是AJS中用于解决各种乱七八糟任务的一个类。它有很多子类,有用于空间分析的,有用于空间查询的,等等。
这篇作为补充学习的第一篇,也是进阶学习的第一篇,我就改个写法。
我将使用思维导图,更好呈现逻辑信息。

Task类的继承关系

Task类继承自Accessor类,它又有17个子类。别担心,各取所需,很少能用上超过5个子类的AJS程序,除非是一个超大的AJS集成系统。
以上

ArcGIS API for JavaScript 4.3 与ArcGIS Server联动使用【地图服务】

【前言】
有好些网友问我怎么使用Server发布的地图服务了,其实非常的简单。
我在这里先声明:不提供Server软件,需要的请自行使用互联网搜索资源;
不阐述Server如何发布各各种服务,但是我会给出官方的文档(点我),发布服务其实各种老教程都很多了。

【软件准备】
·Windows 64位以上的系统,XP可以歇菜了,Server是64位原生软件;//Linux发行版也可以,能用Server

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

网络分析是个热点,理论上是属于计算机图形学和数据结构的,GIS以此为基础做出应用。
以下列举本人在学习中遇到的网络分析问题与经验总结。
1. 软件平台及数据准备
平台:Windows 10 操作系统,ArcGIS for Desktop 10.0或更高版本(本人使用10.4)
用到的软件和SDK:VisualStudio 2012或更高版本、ArcGIS Objects 10.2或更高版本、Mic

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

前言
似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何“使用自己的数据”创建“网络数据集”的文章。
究其原因,是因为当前的高质量的线数据或保密,或采集困难。
有介绍几何网络的,有介绍如何用官方SanFrancisco数据的,也有直接用官方SanFrancisco的网络数据集进行应用的;
就是没有告诉我,怎么从制作线数据,再到创建网络数据集,并应用这一整条线路的——当然也是我没找着。
我靠网上

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

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


好,开始。
1. 创建线类型的shp文件

在如图所示的文件夹下,创建名为Route的线shp,其实命名随意,中文也是可以的。
在这里,我选择地理坐标系为1984的WGS坐标系,投影到UTM

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

上篇已经创建好了线数据(shp文件格式)链接:点我
这篇将基于此shp线数据创建网络数据集。
在此说明:shp数据的网络数据集仅支持单一线数据,也就是说基于shp文件的网络数据集,只能有一个shp线文件参与。
如何解决这个弊端呢?见下篇,利用地理数据库即可。
本篇目录:
1. 创建网络数据集 2. 给网络数据集命名
3. 转弯 4. 连通性 5. 高程
6. 网络数据集的阻抗属性
7. 出行模式

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

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

1. 数据库的建立与数据的导入


为什么要创建要素数据集呢?
是因为地理数据库中的网络数据集是基于要素数据集的。

这里就随便填写了,投影与Route的线s

ArcGIS 网络分析[1.4] 制作点线要素时需要注意的地方

有很多同学虽然成功做好了网络数据集,但是分析时会出现这样的问题:

这是为什么呢?
这有三个可能的原因:
1. 两个点之间所有的道路没有连通(问题出在点、线数据上)。
2. 网络数据集出现了孤立的点位置。
3. 网络数据集的连通性有问题。
我就从这三个方面说说,如何避免这些问题。因为标题起的是点线要素的制作情况,我就着重讲第一点了,后两个情况简单说说,在第四章网络