路径服务允许您通过 web 执行网络分析。 创建路径服务的一种方法是在 ArcGIS Pro 中发布网络分析功能通过 Network Analyst 扩展模块启用的地图服务。
创建此类路径服务的第一步是在 ArcGIS Pro 中创建一个包含一个或多个网络分析图层的地图。 然后将地图发布为服务,并确保启用“网络分析”功能。 您可以通过 ArcGIS Web API、ArcGIS Runtime SDK 或所选编程语言的服务 REST API 以编程方式使用生成的服务。
创建地图
在发布路径服务之前,您需要在 ArcGIS Pro 中创建一个地图,此地图至少要包含将要在服务中使用的网络分析图层。 您可以使用添加数据对话框添加现有的网络分析图层,也可以创建网络分析图层。 无论是导入的还是创建的网络分析图层都应使用本地网络数据集。 如果使用的是来自门户(ArcGIS Online 或 ArcGIS Enterprise)的网络数据源,则无法将地图发布为具有网络分析功能的服务。
警告:
通过具有网络分析功能的地图服务无法发布和使用位置分配和车辆配送问题操作。 因此,不应将位置分配和车辆配送问题图层添加到您的地图中。
您可以在 ArcGIS Pro 中编辑网络分析图层的属性,例如要在最近设施点分析图层中查找的设施点数量或用作分析时默认使用的出行模式。 这些属性被用作已发布服务的默认值。
发布服务
创建并保存地图后,您可以按照以下步骤将地图及其图层共享为 web 图层并启用网络分析功能:
- 在共享选项卡的共享为组中,单击发布 Web 图层打开共享为 Web 图层窗格。
- 完成常规选项卡上的所有信息。
- 选中图层类型下的地图图像复选框。
- 在配置选项卡中,配置地图图像图层属性并启用网络分析功能。
- 单击页面底部的分析按钮以分析任何潜在的错误或警告。
- 验证成功后,单击发布以共享您的地图。
配置其他服务属性
在 ArcGIS Pro 中发布具有网络分析功能的地图服务时,无法设置该服务的所有属性。 要设置这些属性,请登录到 ArcGIS Server Manager 并通过该服务功能选项卡上的网络分析来设置属性。
以下部分将介绍可在 ArcGIS Server Manager 中为服务设置的各项功能。
常规
输出目录 - 写入结果图层的位置。
默认输出几何精度 - 该值用于设置概化后输出几何的默认精度。 如果其设置为零或未指定,则不会对输出几何执行概化。 如果其已指定或为正值,则表示 MaximumAllowableOffset 参数。
允许用户在服务器上保存结果图层 - 此框用于指定用户是否可将结果图层保存在服务器上以供将来使用。
发生错误时将结果图层保存在服务器上 - 此框用于指定分析过程中发生错误时,是否将结果图层自动保存在输出目录中。 如果选中,则此选项可帮助对错误进行故障排除。
调试时将结果图层保存在服务器上 - 选中此框后,如果日志级别设置为 DEBUG,则结果图层将自动保存在每个请求的输出目录中。
忽略网络位置字段 - 选择此设置后,如果通过请求传递位置字段,则服务不使用输入分析位置(停靠点、障碍、设施点、事件等)上的位置字段。 如果街道名称经常改变,则忽略网络位置字段将有助于避免传递包含无效位置字段的请求。
使用门户出行模式 - 如果选择此设置,则服务将使用 ArcGIS Enterprise 门户中配置的出行方式,而不是服务使用的网络数据集所定义的出行方式。
获得自动重新计算路线许可 - 如果选择此设置,则会通知客户端应用程序(例如使用 ArcGIS Runtime SDK 中的 Navigation API 构建的客户端应用程序)该服务可用于重新计算路线。
警告:
在检查此设置之前,请确保该服务使用的网络数据集已获得重新计算路线功能的许可。 如果您使用的是 ArcGIS StreetMap Premium 中的网络数据集,则这些数据集未获得自动重新计算路线许可,且检查此属性将违反 ArcGIS StreetMap Premium 的许可协议。 但是,如果您的网络数据集是由组织管理的街道数据创建的,则可以设置此属性。
约束
约束是一组属性,可以针对每个求解程序定义此属性,以设置服务输出的参数。 可以在约束选项卡中设置这些属性。 以下约束适用于每个求解程序:
- 最大障碍数量 - 每个请求允许传递的最大点障碍数量。
- 与线障碍相交的最大要素数量 - 可以按每个请求的线障碍数量来限制最大街道数量。
- 与面障碍相交的最大要素数量 - 可以按每个请求的面障碍数量来限制最大街道数量。
- 超出(输入范围)强制分级和超出(输入范围)强制分级的单位 - 当停靠点之间的距离较远时,如果未选中这些选项,则解决请求会需要大量的时间和服务器资源。
每个求解程序还具有以下其他可设置的约束:
- 路径
- 最大停靠点数量 - 用户允许每个请求传递的最大停靠点数量。
- 允许时间窗口 - 此选项用于指定服务是否支持用户在输入停靠点上传递时间窗口。
- 服务区
- 最大设施点数量 - 每个请求允许传递的最大设施点数量。
- 最大中断和最大中断的单位 - 可以针对服务区请求指定的最大中断值。 阻抗单位可以基于以下内容:
- 时间
- 长度
- 其他
- 超出(中断)强制分级和超出(中断)强制分级的单位 - 可以针对服务区请求指定的最大中断值。 达到此最大值后,服务器可自动将请求更改为使用网络等级。
- 最近设施点
- 最大设施点数量 - 每个请求允许传递的最大设施点数量。
- 要找到的最大设施点数量 - 您希望服务可在每个请求内找到的事件中的最大设施点数量。
- 最大事件数量 - 每个请求允许传递的最大事件数量。
- OD 成本矩阵
- 最大目的地数量 - 每个请求允许传递的最大目的地数量。
- 要找到的最大目的地数量 - 您希望服务可在每个请求内找到的自起点的最大目的地数。
- 最大起点数量 - 每个请求允许传入的最大起点数量。
使用服务
您可以使用路径服务以编程方式在 web 应用程序和其他桌面情景中提供专用或本地托管的路径选择。 ArcGIS 开发人员有许多可以使用网络分析服务的平台可供选择,例如 ArcGIS Web API、ArcGIS Runtime SDK 和 ArcGIS REST API。