ArcGIS发布路网服务(路网分析)和地名地址服务(地理编码)

本文介绍如何在地图应用中发布路网服务和地名地址服务,包括网络数据集构建、验证及发布流程,同时涵盖地理编码工具使用与服务发布方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

路网服务、地名地址服务是普通用户在使用地图APP时最常用的服务,可以提供路径搜索、导航和位置定位功能。

一、路网服务发布

1.准备网络分析的数据

首先我们制作表示道路的线要素,线要素之后将用于构建我们的网络数据集。

a.第一步

建立如下所示文件夹结构:

解释:Scratch文件夹用来存储我们的零时数据,ToolData用于存储我们永久的服务数据。一般我们将地理要素及要素集存放在地里数据库中。

这里我们新建了一个名叫NetworkFeatureDataSet的要素集,这是因为存放于地理数据库中的线要素如果用于构建网络数据集,则必须放在要素集中

b.第二步

新建各种要素(表示设施点的点要素,以及表示道路的线要素),并添加相关的属性

(说明:Network_ND和Network_ND_Junctions是之前已构建好的网络数据集和结点。在此我们只需要新建三个点要素和一个线要素即可)

分别配置一下属性:

线要素:

属性说明:

Shape_Length:新建要素时默认生成的属性,表示线要素的长度,其值和单位和选择的坐标系有关,由于我们考虑到之后的Web开发,因此这里采用Web Mecator坐标系。

Length:表示道路的长度,这里的值就等于Shape_Length。(其实这里我们直接用Shape_Length这个属性就可以,可以不添加该属性)

Level:表示道路的等级,不同的等级所允许的行驶速度不同这里我们设置的等级和速度的对应关系如下:

     等级    

                   速度的最大值             

1

130 km/h

2

120 km/h

3

80 km/h

4

60 km/h

这里还需要说明的一点是:在Web的开发过程中,默认情况下是启用了道路的等级属性(也就是说:无论你的网络数据集有没有设置等级,都会在Web开发中启用等级属性)。因此如果我们构建的网络数据集中不包含等级属性,那么采用默认的设置时,在Web开发中就会出错,当然在Web开发时,我们也可以将启用等级属性设置为False,这样也可以实现网络分析的功能,具体过程将在下一篇Web开发中到。在此有个基本概念即可。

Speed:表示该公路运行行驶的最大速度,及按照如上所示的表格进行设置。

Time:表示行驶时间,这里我们没有添加任何数据。

Name:即表示公路的名称,注意线要素一定要有类型为文本类型的属性,这样才能够在构建网络数据集的时候添加方向设置,否则构建的网络数据集中将不包含方向指南。因此这里我们添加了道路的名称,目的用于之后生成方向指南。

点要素(以表示学校的点要素为例,其他点要素雷同)

c.第三步

编辑要素,构建具体的地图,这里我们制作了一个简单的,如下示例的地图:

需要注意的是:由于道路是联通的,所以我们需要将所有相交的线要素进行打断处理。在此可以用拓补工具进行批处理。

以上过程完成之后,数据的准备阶段就已完成,下面开始网络数据集的构建工作。

2.构建网络数据集

再次强调,构建网络数据集的线要素必须位于要素集中,否则无法构建。

右键要素集——新建——网络数据集

点击将如下图所示

设置网络数据集的名称,点击下一步。

设置连通性,这里有节点和端点两种,默认情况下为端点,这里我们选择默认即可,然后点击下一步。

设置高程字段,当涉及到高程时,在此设置,本文没有涉及,所以选择无。然后点击下一步。

设置网络数据集的属性,我们指定了如上所示的属性。具体的添加过程:

点击添加,然后设置名称,用法和单位,然后点击赋值器,可以指定该属性是字段,函数,常量以及VB脚本。

这里我们设置Distance属性为字段,对应线要素的Length属性(也可以用表达式,将单位换成千米即:Length/1000,默认的长度单位是米)。

Speed属性对于线要素的Speed属性。如下图所示:

DriverTime属性,表示行驶时间。这里需要注意的是DriveTime属性我们采用的是表达式,而不是直接将线要素的Time属性赋给它。(因为之前在新建要素的时候,我们没有给Time属性赋值,这里我们想根据线要素的长度和最大行驶速度来设置通过该要素所需最小时间)

因为速度是千米/时,默认长度单位是米,所以我们将要素长度除以一千。

以上属性设置好以后,点击下一步,设置网络方向属性。

这里我们设置长度属性为Distance,并设置单位及时间属性,如上图所示,在街道名称中设置名称为Name字段。

然后点击完成。如果以上过程没有出错,那么恭喜你,我们自己构建的网络数据集已经生成了,这个时候,你的要素集中的内容应该如下:

接下来我们验证生成的网络数据集。

3.验证网络数据集

点击自定义调出网络分析工具条:

点击NetworkAnalyst,可以选择分析项。

a.最短路径查询

点击新建路径,然后点击网络分析工具条中带有+号的按钮。在地图中添加两个点或者更多,如下图所示添加了四个点:

然后点击求解工具,则会生成相应的路径。

下面是生成的方向指南:

同理服务区的分析过程雷同,具体过程可参考官方的文档。在此不再叙述。

之前我们已经实现了基于ArcMap中的网络分析,但是仅仅支持本地是万万不够的,这里我们的目的就是将我们建好的网络分析图层发布,以供我们无论在在合适何地都能进行网络分析功能,需要说明的是,基于Web的网络分析目前还不支持OD成本矩阵分析,多路径配送,位置分配分析。这里目前只支持最短路径分析,最近设施点分析,和服务区分析

     发布网络分析服务的过程很简单。大致步骤如下:

1.准备数据

准备用于分析的网络数据集,这里我们在上一篇的博文中已经建好了,所以直接下一步。

2.新建MXD文档

MXD文档将在之后发布成GIS服务,并且在GIS服务中启用网络分析功能。

MXD文档必须包含的内容:

a.用于最短路径分析的路径分析图层

b.用于最近设施点分析的最近设施点分析图层

c.用于服务区分析的服务区分析图层

d.网络数据集(即我们在上一篇中已经构建好的网络数据集)

为了增加表现的效果,我们还可以添加设施点图层(例如:学校,警察局,医院等)

关于网络分析图层(路径分析图层,最近设施点分析图层,服务区分析图层)可以通过ArcToolBox新建。如下图:

通过ArcToolBox提供的工具可以直接创建网络分析图层。例如打开创建路径分析图层工具,界面如下:

点击下一步,即可新建路径分析图层。其他分析图层过程雷同。

最后MXD中的文档内容如下:

所需图层准备好之后,保存MXD文档,然后发布。

3.发布网络分析服务

      我们可以直接在ArcMap中发布也可在ArcCatalog中发布。右键MXD地图文档——发布到ArcGIS Server

设置服务器和GIS服务名称,点击下一步:

启用网络分析功能,点击下一步,完成网络分析服务的发布。

发布成功之后,可以在本地的浏览器中打开该网络分析服务的地址.即可查看该网络分析服务的参数和相关功能。

括号为NAServer就表示该服务为网络分析服务。打开可以查看该服务的具体信息。

由上图可以看见该网络分析服务包含了路径分析服务,服务区分析服务,以及最近设施点分析服务,点击各服务可以查看服务的具体信息。

到此网络分析服务的发布工作已经完成。

数据下载地址:

http://files.cnblogs.com/potential/NetworkAnalysis.rar

转载地址:

http://www.cnblogs.com/potential/archive/2012/11/13/2769019.html

 

二、地名地址服务发布

1、地理编码工具(Geocoding Tools)locator制作
     打开arcCatalog,找到工具箱ArcToolbox中的Geocoding Tools---Create Address Locator,界面如下:

2、locator已经制作完成,接下来就是发布地理编码服务

右键locator工具,选择Share as---Geocode Service,界面如下:

点击publish发布服务。

3、测试服务是否发布成功

(1)正向编码

进入arcserver services界面,找到地名编码服务链接,输入地名,查看坐标返回信息:

(2)反向编码

输入坐标,查看地名返回信息

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值