网络分析服务

您可能已经使用过 Web 应用程序来获得两点之间的行进路线或根据输入的地址列出附近的设施点(如诊所)。这些应用程序会使用服务器上的网络分析,根据您所提供的信息找到合适的路径及设施点。您的计算机上不必安装任何专用的网络分析软件便可得到所需的结果,因为该服务器可以替您完成此项工作并通过 Web 服务将结果返回到您的计算机。

您可以使用 ArcGIS Server 创建类似的服务来执行交通网分析操作,如路径选择、最近设施点定位或服务区分析。这些服务使用 Network Analyst 扩展模块对网络数据集的执行分析。服务器上需要具有“网络”许可。

注:网络分析服务不能用于对几何网络执行几何网络分析。

创建网络分析服务的第一步是使用 ArcMap 创建一个包含网络分析图层的地图文档。然后将地图发布为服务,并确保启用“网络分析”功能。您可以利用 ArcGIS Server 附带的开发工具来使用生成的服务。以下部分将对发布步骤进行更为详细的介绍。

创建地图文档

您需要使用 ArcMap 创建一个地图文档(至少要包含将要在服务中使用的网络分析图层),之后才可发布网络分析服务。您可以通过添加数据 对话框添加现有网络分析图层,也可以通过 Network Analyst 工具条根据地图上已有的网络图层(引用网络数据集)创建新的网络分析图层。如果希望服务在地图上返回分析结果的图像,则您还需要在地图上添加其他所有要显示的图层,并对它们的符号系统进行相应调整。

您还可以使用 ArcMap 设置默认情况下将在分析中应用的参数。这包括网络位置(如设施点和障碍)以及求解程序属性(例如要查找的设施点数和限制)。有关在 ArcMap 中使用网络分析图层的详细信息,请参阅 ArcGIS Desktop 帮助中的 Network Analyst 部分。

地图文档及其引用的所有数据都应该存储在服务器对象容器 (SOC) 计算机可以访问的目录。也就是说,ArcGIS SOC 账户必须对存储数据的目录具有读取权限。如果 ArcGIS SOC 帐户只对地图文档所在的目录具有读取权限,而对地图所引用的数据所在的目录没有读取权限,则地图和数据之间的链接将断开。

网络分析服务可能非常占用硬盘空间,因此推荐的性能策略是为每台 SOC 计算机中的可用数据以相同路径生成本地副本。如果不可行,可将数据放置在共享的网络目录中。

发布服务

创建并保存地图文档后,您可以按将 GIS 资源发布到服务器中的步骤创建网络分析服务。发布资源时,请注意以下事项:

有关发布网络分析服务的详细示例,请参阅教程:发布网络分析服务

使用服务

您可以使用网络分析服务在您的桌面应用程序中提供专用或本地托管的路径选择。例如,ArcMap 中的查找路径 对话框和 ArcGIS Explorer 中的路径 对话框的初始设置为访问 ESRI 托管的网络分析服务。如果想要使用自己的服务(无论是因为您添加了特殊规则或数据,还是因为您缺少 Internet 连接),可以将这些命令重新配置为使用您自己的网络分析服务。这无需编写任何代码。

在 Web 应用程序和其他桌面情景中,网络分析服务必须以程序形式使用。ArcGIS 开发人员可以选择多种使用网络分析服务的平台,例如 ArcGIS APIs for Silverlight、ArcGIS APIs for Flex、ArcGIS APIs for JavaScript,以及 ArcGIS Server SOAP 和 REST API。也可利用粗略对象 NAServer 通过 ArcObjects 使用服务器上的网络分析。

ArcGIS Server 资源中心可链接到各 API 的详细帮助信息。每个帮助系统都包含关于使用网络分析服务的部分。但是,无论对于哪种 API,使用网络分析服务的基本模式都是相同的:

  1. 获得对网络分析服务的引用。
  2. 设置求解程序参数。这些参数包括您想要执行的分析的类型以及分析过程中要使用的网络位置(如停靠点)。
  3. 调用网络分析服务的求解方法,传入求解程序参数。
  4. 处理从服务返回的结果。可包括在地图上显示结果或报告驾车指示。

下面这些链接指向使用网络分析服务的各种类型的示例。这些链接按 API 和应用程序类型(Web 或桌面)进行组织。

路径选择的 Web 应用程序示例(按 API 顺序列出)

使用服务器 API (ArcObjects) 的桌面客户端示例

使用 SOAP 的桌面客户端示例

使用地理处理服务进行网络分析

如果您不愿编写代码,还可以通过地理处理服务向 Web 应用程序中添加网络分析功能。可利用已在 ModelBuilder 中构建的模型启动地理处理服务。用户向地理处理服务提交一些输入,模型在服务器上运行,然后将结果发送回用户计算机。模型可包括您通过“地理处理”菜单添加的 Network Analyst 工具。

下面的示例介绍了如何在地理处理服务中设置网络分析工具:

ArcGIS Server 管理器提供地理处理任务,可帮助您在 Web 应用程序中使用地理处理服务,而无需编写任何代码。

了解有关地理处理任务的详细信息

可用功能

某些 ESRI 客户端 API 会随使用网络分析服务时所允许的复杂程度而变化。下表具体说明了此可用性:

ArcGIS API

使用网络分析服务的可用求解程序

使用地理处理服务的可用求解程序

REST、Flex、JavaScript、Silverlight

Route、Service Area、Closest Facility

全部

SOAP

全部

全部

ArcObjects

全部

全部


7/10/2012