描述
计算已知源和已知目的地之间的特定路径。
插图
使用方法
此栅格分析门户工具将在您登录到 ArcGIS Enterprise 时可用,其中门户包含一个 ArcGIS Image Server ,此链接专为 Raster Analysis 配置。调用该工具后,ArcGIS Pro 将充当客户端,处理将在与 ArcGIS Enterprise 联合的服务器中进行。门户工具接受来自门户的图层作为输入,并在门户中创建输出。
输入栅格图层支持来自门户的图层、图像服务的 URI 或 URL 或创建影像服务器图层工具的输出。输入要素图层可以是来自门户、URI 或要素服务 URL 的图层。此工具不支持本地栅格数据或图层。虽然可以使用本地要素数据和图层作为此门户工具的输入,但是最佳做法是使用门户的图层作为输入。
此工具的示例应用之一是查找到达特定目的地的行程成本。
在成本距离方面,确定到目的地的行程成本路径工具可生成用于记录最小成本路径或从所选位置到累积成本面内所定义的最近源像元之间的路径的输出栅格。
要创建输入成本距离和回溯链接影像服务,通常需要先运行计算行程成本,然后再运行确定到目的地的行程成本路径。这些是用于确定到目的地的行程成本路径必需的输入影像服务。
在扫描过程中遇到每个最小成本路径时,将会为其分配一个值。成本路径的原始源(成本距离和回溯链接是从该源中获得的)上的终止像元接收一,第一条路径接收三,第二条路径接收四,依此类推。值二为路径合并部分的保留值,该路径具有部分公共成本路径。
当输入目标数据是影像服务时,目标像元集包括输入影像服务中的所有像元或具有有效值的要素目标数据。具有 NoData 值的像元不包括在源集内。值零将被视为合法目标。
当源输入是要素服务时,默认情况下,将使用第一个有效可用字段。如果不存在有效字段,则将使用 ObjectID 字段(如 OID 或 FID)。
当多条路径合并到一起并随着余下的距离回到同一路线上的源时,两条路径相交的线段将被分配值 2。其中一条路径的值不能被分配给路径的合并部分,因为合并部分属于两条路径。
确定到目的地的行程成本路径将忽略像元大小环境设置,并将输入成本回溯链接栅格数据的像元大小用于输出栅格。如果对回溯链接栅格重采样使其具有不同分辨率,则该栅格的模式将被严重更改。为避免出现任何混淆,使用此工具时不得设置像元大小。
确定到目的地的行程成本路径也可用于获取沿数字高程模型 (DEM) 的最小电阻路径。在这种情况下,将 DEM 用于输入成本距离栅格数据,并将流向工具的输出用于输入成本回溯链接栅格数据。有效的流向栅格值是 1、2、4、8、16、32、64 和 128,回溯链接栅格中的有效值是 0 到 360。这两种影像服务都是可接受的服务。
当输入目标数据为要素时,它必须至少含有一个有效字段。
语法
arcpy.ra.DetermineTravelCostPathsToDestinations(inputDestinationRasterOrFeatures, inputCostDistanceRaster, inputCostBacklinkRaster, outputName, {destinationField}, {pathType})
参数 | 说明 | 数据类型 |
inputDestinationRasterOrFeatures | 用于识别这些像元的影像服务或要素服务(将确定的最小成本路径为这些像元与成本最低的源之间的路径)。 如果输入是影像服务,则输入由具有有效值(零是有效值)的像元组成,并且必须为其余的像元指定 NoData。 | Raster Layer; Image Service; Feature Layer; String |
inputCostDistanceRaster | 要用于确定从目标位置到源的最小成本路径的成本距离影像服务的名称。 通常使用计算行程成本工具创建成本距离栅格。对于每个像元,成本距离栅格存储从每个像元到一组源像元的成本面上的最小累积成本距离。 | Raster Layer; Image Service; String |
inputCostBacklinkRaster | 用于确定要经由最小成本路径返回到源的路径的成本回溯链接栅格名称。 对于成本回溯链接栅格内的每个像元,值可识别在从像元到单个源像元或一组源像元的最小累积成本路径上作为下一像元的邻近像元。 | Raster Layer; Image Service; String |
outputName | 输出行程成本路径栅格服务的名称。 默认名称基于工具名称以及输入图层名称。如果该图层名称已存在,则系统将提示您提供其他名称。 | String |
destinationField (可选) | 目标图层上的字段,用于保存定义每个目标的值。 输入要素服务必须至少包含一个有效字段。 | String |
pathType (可选) | 用于定义输入目标数据上的值和区域在成本路径计算中的解释方式。
| String |
派生输出
名称 | 说明 | 数据类型 |
outputRaster | 输出栅格。 | 栅格图层 |
代码示例
此示例将计算到目的地的行程成本。
import arcpy
arcpy.DetermineTravelCostPathstoDestinations_ra(
"https://myserver/rest/services/sources/ImageServer",
"https://myserver/rest/services/costsurface/ImageServer",
"https://myserver/rest/services/backlinkras/ImageServer",
"outpath", "destField", "EACH_ZONE")
此示例将计算到目的地的行程成本。
#-------------------------------------------------------------------------------
# Name: DetermineTravelCostPathstoDestinations_Ex_02.py
# Description: Calculates the optimum travel cost path.
# Requirements: ArcGIS Image Server
# Import system modules
import arcpy
# Set local variables
inputSourceLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/sources/ImageServer'
inputCostLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/costraster/ImageServer'
inputBackLinkLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/backlinkras/ImageServer'
outputName = 'outTravelPathsRaster'
destField = 'dest1'
pathType = 'BEST_SINGLE'
arcpy.DetermineTravelCostPathstoDestinations_ra(inputSourceLayer, inputCostLayer,
inputBackLinkLayer, outputName,
destField, pathType)
许可信息
- Basic: 需要 ArcGIS Image Server
- Standard: 需要 ArcGIS Image Server
- Advanced: 需要 ArcGIS Image Server