Chemin de coût en polyligne (Analyse raster)

Synthèse

Calcule le chemin de moindre coût entre une source et une destination comme entité linéaire.

Conseil :

L’outil Chemin optimal comme ligne fournit des fonctionnalités ou des performances améliorées.

Pour en savoir plus sur la création d'un chemin de moindre coût

Illustration

Illustration de l’outil Chemin de coût en polyligne

Utilisation

  • Cet outil de portail d’analyse raster est disponible lorsque vous êtes connecté à un portail ArcGIS Enterprise disposant d’un ArcGIS Image Server configuré pour Analyse raster. Lorsque cet outil est appelé, ArcGIS Pro est utilisé comme client et le traitement est effectué dans les serveurs fédérés avec ArcGIS Enterprise. Cet outil du portail prend en charge les couches de votre portail en entrée et crée la sortie dans le portail.

    La couche raster en entrée prend en charge les éléments suivants : couche du portail, URI ou URL d’un service d’imagerie ou sortie de l’outil Créer une couche de serveur d’imagerie. La couche d’entités en entrée peut être une couche du portail, ou une URI ou une URL d’un service d’entités. Cet outil ne prend pas en charge les données raster ou les couches locales. Bien que vous ayez la possibilité d’utiliser des données d’entité et des couches locales en entrée dans cet outil du portail, il est recommandé d’utiliser les couches de votre portail en entrée.

  • L’outil Chemin de coût en polyligne permet d’obtenir un service d’entités polyligne en sortie qui enregistre le ou les chemins de moindre coût depuis les sources jusqu’à la destination la plus proche définie dans la zone de coûts cumulés ou dans la surface de distance euclidienne.

  • Si vous avez des entités Destination, vous pouvez les convertir en un service d’imagerie l’aide de la fonction raster Rasterize Features (Rasteriser les entités). Utilisez votre Cost Distance Raster (Raster de distance de coût) existant comme Raster (Raster) en entrée pour la fonction de tramage. Vous aurez ainsi l’assurance que les entités sont converties correctement en service d’imagerie et que les paramètres (étendue des données, référence spatiale et taille de cellule) sont conservés.

  • Les valeurs NoData présentes dans le Destination Raster (Raster de destination) ne sont pas incluses comme valeurs valides de la fonction. La valeur 0 est considérée comme une valeur normale dans le raster de destination.

  • Deux services d’imagerie en entrée sont nécessaires pour exécuter Chemin de coût en polyligne. La manière dont vous générez ces entrées dépend du type d’analyse que vous souhaitez exécuter.

    • L’analyse de coût génère un chemin de coût. Exécutez les fonctions raster Antécédence de coût et Distance de coût pour générer les entrées nécessaires.
    • L’analyse euclidienne génère des chemins de ligne droite et des chemins autour d’interruptions. Exécutez l’outil Calculer la distance pour générer une direction arrière euclidienne et une distance euclidienne. Sinon, exécutez les fonctions raster Direction arrière euclidienne et Distance euclidienne.
    • L’analyse du flux génère les chemins de flux. Exécutez la fonction raster Direction de flux à l’aide de l’option D8. Utilisez le raster de direction de flux D8 en entrée pour le Input cost backlink raster (Raster d’antécédence de coût en entrée). Vous devez également fournir un Input Cost Distance Raster (Raster de distance de coût en entrée) ; le Input Cost Distance Raster (Raster de distance de coût en entrée) n’est pas utilisé pour déterminer le chemin. Votre chemin sera le même que vous utilisiez un raster constant ou un modèle numérique de terrain (MNT) ; seule une valeur attributaire sur votre chemin sera différente.
  • Le service d’entités en sortie comporte un champ nommé DestID, qui identifie la destination de chaque ligne.

  • Contrairement à la plupart des outils d’analyse raster, Cost Path As Polyline (Chemin de coût en polyligne) ignorera les paramètres d’environnement suivants : système de coordonnées en sortie, étendue, taille de cellule et raster de capture. Vous risquez de modifier considérablement la configuration du raster d’antécédence s’il a été rééchantillonné ou reprojeté, entraînant un chemin incorrect.

Paramètres

ÉtiquetteExplicationType de données
Entités ou raster de destination en entrée

Service d’imagerie ou d’entités identifiant ces emplacements à partir desquels le chemin de plus faible coût est déterminé par rapport à la source de plus faible coût.

Si l’entrée est un service d’imagerie, elle comporte des cellules qui ont des valeurs admises (zéro est une valeur autorisée) et les cellules restantes doivent avoir la valeur NoData.

Raster Layer; Image Service; Feature Layer; String
Distance de coût en entrée ou raster de distance euclidienne

Raster de distance euclidienne ou distance de coût à utiliser pour déterminer le chemin de moindre coût entre les sources et les destinations.

Raster Layer; Image Service; String
Raster d’antécédence de coût, direction d’antécédence ou raster de direction de flux

Nom du raster utilisé pour déterminer le chemin permettant de revenir vers une source par le chemin de moindre coût ou le chemin le plus court.

Pour chaque cellule dans un raster d’antécédence ou de direction, la valeur identifie la voisine, à savoir la cellule suivante sur le chemin entre cette cellule et une cellule source.

Raster Layer; Image Service; String
Nom de polyligne en sortie

Service d’entités en sortie.contenant le chemin de moindre coût.

String
Type de chemin
(Facultatif)

Spécifie la façon dont les valeurs et les zones des données de destination en entrée sont interprétées dans les calculs du chemin de coût.

  • Le moins coûteuxPour toutes les cellules de l’entrée de destination, le chemin de plus faible coût est dérivé de la cellule contenant le chemin de plus faible coût minimal des chemins de coût vers les cellules source.
  • Chaque zoneSi une zone contient des entrées autorisées avec des données de destination, le système calcule le chemin du plus faible coût et l'enregistre dans le raster en sortie. Avec cette option, pour chaque zone, le chemin de plus faible coût commence à la cellule avec la pondération de distance de plus faible coût dans la zone.
  • Chaque celluleSi une cellule contient des entrées autorisées avec des données de destination, le système calcule le chemin du plus faible coût et l'enregistre dans le raster en sortie. Avec cette option, chaque cellule des données de destination en entrée est traitée séparément et un chemin de moindre coût est déterminé pour chaque cellule de départ.
String
Champ de destination
(Facultatif)

Champ à utiliser pour obtenir des valeurs pour les emplacements de destination.

Field

Sortie obtenue

ÉtiquetteExplicationType de données
Entité polyligne en sortie

Entités polylignes.

Feature Layer

arcpy.ra.CostPathAsPolyline(inputDestinationRasterOrFeatures, inputCostDistanceRaster, inputCostBacklinkRaster, outputPolylineName, {pathType}, {destinationField})
NomExplicationType de données
inputDestinationRasterOrFeatures

Service d’imagerie ou d’entités identifiant ces emplacements à partir desquels le chemin de plus faible coût est déterminé par rapport à la source de plus faible coût.

Si l’entrée est un service d’imagerie, elle comporte des cellules qui ont des valeurs admises (zéro est une valeur autorisée) et les cellules restantes doivent avoir la valeur NoData.

Raster Layer; Image Service; Feature Layer; String
inputCostDistanceRaster

Raster de distance euclidienne ou distance de coût à utiliser pour déterminer le chemin de moindre coût entre les sources et les destinations.

Raster Layer; Image Service; String
inputCostBacklinkRaster

Nom du raster utilisé pour déterminer le chemin permettant de revenir vers une source par le chemin de moindre coût ou le chemin le plus court.

Pour chaque cellule dans un raster d’antécédence ou de direction, la valeur identifie la voisine, à savoir la cellule suivante sur le chemin entre cette cellule et une cellule source.

Raster Layer; Image Service; String
outputPolylineName

Service d’entités en sortie.contenant le chemin de moindre coût.

String
pathType
(Facultatif)

Spécifie la façon dont les valeurs et les zones des données de destination en entrée sont interprétées dans les calculs du chemin de coût.

  • BEST_SINGLEPour toutes les cellules de l’entrée de destination, le chemin de plus faible coût est dérivé de la cellule contenant le chemin de plus faible coût minimal des chemins de coût vers les cellules source.
  • EACH_ZONESi une zone contient des entrées autorisées avec des données de destination, le système calcule le chemin du plus faible coût et l'enregistre dans le raster en sortie. Avec cette option, pour chaque zone, le chemin de plus faible coût commence à la cellule avec la pondération de distance de plus faible coût dans la zone.
  • EACH_CELLSi une cellule contient des entrées autorisées avec des données de destination, le système calcule le chemin du plus faible coût et l'enregistre dans le raster en sortie. Avec cette option, chaque cellule des données de destination en entrée est traitée séparément et un chemin de moindre coût est déterminé pour chaque cellule de départ.
String
destinationField
(Facultatif)

Champ à utiliser pour obtenir des valeurs pour les emplacements de destination.

Field

Sortie obtenue

NomExplicationType de données
outputPolylineFeatures

Entités polylignes.

Feature Layer

Exemple de code

Exemple 1 d'utilisation de l'outil CostPathAsPolyline (fenêtre Python)

Le script ci-dessous pour la fenêtre Python Windows illustre l’utilisation de la fonction CostPathAsPoyline.

import arcpy

arcpy.ra.CostPathAsPolyline(
    "https://myserver/rest/services/destination/ImageServer", 
    "https://myserver/rest/services/costsurface/ImageServer", 
    "https://myserver/rest/services/direction/ImageServer", 
    "outpath", "BEST_SINGLE")
Exemple 2 d'utilisation de l'outil CostPathAsPolyline (script autonome)

Calcule le chemin de moindre coût entre une source et une destination.

#-------------------------------------------------------------------------------
# Name: CostPathAsPolyline_Ex_02.py
# Description: Calculates the least-cost path from a source to a destination.
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inputDestinationLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/destination/ImageServer'
inputCostLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/costraster/ImageServer'
inputDirectionLayer = 
    'https://MyPortal.esri.com/server/rest/services/Hosted/direction/ImageServer'
outputName = 'outTravelPaths'
pathType = 'BEST_SINGLE'

arcpy.ra.CostPathAsPolyline(inputDestinationLayer, inputCostLayer,
                            inputDirectionLayer, outputName, pathType)

Informations de licence

  • Basic: Nécessite ArcGIS Image Server
  • Standard: Nécessite ArcGIS Image Server
  • Advanced: Nécessite ArcGIS Image Server

Rubriques connexes