描述
计算源和目的地之间的最低成本折线路径。
插图
使用方法
此栅格分析门户工具将在您登录到 ArcGIS Enterprise 时可用,其中门户包含一个 ArcGIS Image Server ,此链接专为 Raster Analysis 配置。调用该工具后,ArcGIS Pro 将充当客户端,处理将在与 ArcGIS Enterprise 联合的服务器中进行。门户工具接受来自门户的图层作为输入,并在门户中创建输出。
输入栅格图层支持来自门户的图层、图像服务的 URI 或 URL 或创建影像服务器图层工具的输出。输入要素图层可以是来自门户、URI 或要素服务 URL 的图层。此工具不支持本地栅格数据或图层。虽然可以使用本地要素数据和图层作为此门户工具的输入,但是最佳做法是使用门户的图层作为输入。
确定行程成本路径为折线工具可生成从源到目的地的最小成本路径的输出要素。
如果源或目的地输入为影像服务,则非源或目的地的像元必须具有 NoData 值。这些输入中任何具有值(包括零)的像元都将用作有效源或目的地。
输入成本表面不能包含任何零值或负值。
语法
arcpy.ra.DetermineTravelCostPathAsPolyline(inputSourceRasterOrFeatures, inputCostRaster, inputDestinationRasterOrFeatures, outputPolylineName, {pathType}, {destinationField})
参数 | 说明 | 数据类型 |
inputSourceRasterOrFeatures | 用于识别像元的影像服务或要素服务(将确定的最小成本路径为这些像元与目的地之间的路径)。 如果输入是影像服务,则输入由具有有效值(零是有效值)的像元组成,并且必须为其余的像元指定 NoData。 | Raster Layer; Image Service; Feature Layer; String |
inputCostRaster | 要用于确定从源到目的地的最小成本路径的成本栅格影像服务的名称。 每个像元位置上的值表示经过像元时移动每单位距离所需的成本。每个像元位置值乘以像元分辨率,同时也会补偿对角线移动来获取经过像元的总成本。 成本栅格的值可以是整型或浮点型,但不可以为负值或零(不存在负成本或零成本)。 | Raster Layer; Image Service; String |
inputDestinationRasterOrFeatures | 用于识别这些像元的影像服务或要素服务,可计算到这些像元的最小成本路径。 | Raster Layer; Image Service; Feature Layer; String |
outputPolylineName | 输出折线要素服务的名称。 连接源和目的地的最佳(最小成本)路径的折线要素服务。 每个路径(或线)都具有唯一编号,并在属性表中包含名为 DestID 的附加字段,该字段可将路径与目标栅格上的唯一标识符相连。 由于每条路径都是由唯一的线所表示,因此多条路径可经过同一路线的位置会存在多条线。 | String |
pathType (可选) | 用于指定输入目标数据上的值和区域在成本路径计算中的解释方式。
| String |
destinationField (可选) | 用于获得目标位置的值的字段。 输入要素数据必须至少包含一个有效整型字段。 | Field |
派生输出
名称 | 说明 | 数据类型 |
outputPolylineFeatures | 输出折线要素。 | 要素类 |
代码示例
此示例将计算到目的地的行程成本。
import arcpy
arcpy.DetermineTravelCostPathAsPolyline_ra(
"https://myserver/rest/services/sources/ImageServer",
"https://myserver/rest/services/costsurface/ImageServer",
"https://myserver/rest/services/destination/ImageServer",
"outpath", "BEST_SINGLE")
此示例将计算到目的地的行程成本。
#-------------------------------------------------------------------------------
# Name: DetermineTravelCostPathAsPolyline_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'
inputDestinationLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/destinationras/ImageServer'
outputName = 'outTravelPaths'
pathType = 'BEST_SINGLE'
arcpy.DetermineTravelCostPathAsPolyline_ra(inputSourceLayer, inputCostLayer,
inputDestinationLayer, outputName, pathType)
许可信息
- Basic: 需要 ArcGIS Image Server
- Standard: 需要 ArcGIS Image Server
- Advanced: 需要 ArcGIS Image Server