Résumé
L’outil de service Générer une matrice de coût origine-destination permet de créer une matrice de coût origine-destination (OD) de plusieurs origines vers plusieurs destinations. Une matrice de coût OD est une table contenant le temps de trajet et la distance à parcourir de chaque origine vers chaque destination. En outre, elle classe les destinations auxquelles chaque origine se connecte par ordre croissant en fonction du temps ou de la distance minimum nécessaire pour aller de cette origine vers chaque destination. Le meilleur chemin sur le réseau de transport est découvert pour chaque paire origine-destination. Les temps de déplacement et les distances à parcourir sont stockés sous forme d'attributs des lignes en sortie. Bien que, pour des raisons de performance, les lignes soient droites, elles stockent toujours le temps de trajet et la distance à parcourir avec le réseau de transport et non la distance en ligne droite.
Attention :
Pour obtenir des informations à jour sur cet outil, consultez la version la plus récente de cette rubrique dans l’aide web. ArcGIS Online effectue régulièrement des mises à jour fonctionnelles de ce type de services. L'aide installée peut par conséquent devenir obsolète.
Pour en savoir plus sur la sortie de la génération de la matrice de coût origine-destination
Illustration
Utilisation
Les outils de la boîte d'outils Ready To Use (Prêt à l’emploi) sont des services de géotraitement ArcGIS Online qui utilisent les fonctionnalités d’analyse et les données hébergées de ArcGIS Online.
L’outil recherche les ressources les plus proches en fonction du temps de trajet si la valeur du paramètre Measurement Units (Unités de mesure) est temporelle. De même, l'outil utilise la distance de trajet si les unités de mesure reposent sur la distance.
Vous devez spécifier au moins une origine et une destination pour exécuter l'outil. Vous pouvez charger jusqu’à 1000 origines et 1000 destinations.
Vous pouvez ajouter jusqu'à 250 interruptions ponctuelles. Vous pouvez ajouter autant d'interruptions linéaires ou surfaciques que vous voulez, mais les interruptions linéaires ne peuvent pas intersecter plus de 500 entités rues et les interruptions surfaciques ne peuvent pas intersecter plus de 2 000 entités.
Vous pouvez utiliser la hiérarchie routière lors de la résolution d’un problème afin de générer les résultats plus rapidement que les itinéraires exacts, mais la solution risque d’être moins optimale.
Que le paramètre Use Hierarchy (Utiliser la hiérarchie) soit activé (True) ou non, la hiérarchie est toujours utilisée lorsque la distance en ligne droite entre toute paire d’arrêts est supérieure à 50 miles (80,46 kilomètres).
La distance en ligne droite entre une paire origine-destination ne peut pas être supérieure à 50 miles (80,46 kilomètres) lorsque le mode de déplacement est de type Marche ou lorsqu’il est défini sur la valeur Custom (Personnalisé) et que la restriction Walking (Marche) est utilisée.
Si la distance entre un point en entrée et sa rue traversable la plus proche est supérieure à 12,42 miles (20 kilomètres), le point est exclus de l'analyse.
L'utilisation de ce service consomme des crédits. Pour plus d'informations, reportez-vous à Présentation des crédits de service.
Syntaxe
arcpy.agolservices.GenerateOriginDestinationCostMatrix(Origins, Destinations, {Travel_Mode}, {Time_Units}, {Distance_Units}, {Analysis_Region}, {Number_of_Destinations_to_Find}, {Cutoff}, {Time_of_Day}, {Time_Zone_for_Time_of_Day}, Point_Barriers, Line_Barriers, Polygon_Barriers, {UTurn_at_Junctions}, {Use_Hierarchy}, {Restrictions}, {Attribute_Parameter_Values}, {Impedance}, Origin_Destination_Line_Shape, {Save_Output_Network_Analysis_Layer}, {Overrides}, {Time_Impedance}, {Distance_Impedance}, {Output_Format})
Paramètre | Explication | Type de données |
Origins | Spécifie les points de départ à partir desquels voyager jusqu’aux destinations. Vous pouvez ajouter jusqu'à 1000 origines. Lorsque vous spécifiez les origines, vous pouvez définir les propriétés de chacune, telles que son nom ou le nombre de destinations à rechercher depuis l’origine, en utilisant les attributs suivants : Name Le nom de l'origine. Le nom peut être un identifiant unique de l'origine. Le nom est inclus dans les lignes en sortie (comme champ OriginName) et dans les origines en sortie (comme champ Name) ; il peut servir à joindre des informations supplémentaires depuis les sorties de l’outil aux attributs de vos origines. Si le nom n’est pas spécifié, un nom unique accompagné du préfixe Location est automatiquement généré. TargetDestinationCount Nombre maximum de destinations à rechercher pour l’origine. Si aucune valeur n'est indiquée, la valeur du paramètre Nombre de destinations à rechercher est utilisée. Ce champ permet de spécifier un nombre différent de destinations à rechercher pour chaque origine. Par exemple, en utilisant ce champ, vous pouvez rechercher les trois destinations les plus proches d’une origine et les deux destinations les plus proches d’une autre origine. Cutoff Valeur d’impédance à laquelle la recherche de destinations cesse pour une origine donnée. Cet attribut permet de spécifier une valeur de limite différente pour chaque destination. Ainsi, avec cet attribut, vous pouvez rechercher les destinations qui se trouvent à cinq minutes d’une origine et celles qui se trouvent à huit minutes d’une autre origine. Les unités de la limite sont les mêmes que celles de votre attribut d’impédance. Si aucune valeur n'est indiquée, la valeur du paramètre Limite est utilisée. CurbApproach Spécifie la direction dans laquelle un véhicule peut quitter l’origine. Le champ peut prendre l'une des valeurs entières suivantes (utilisez le code numérique, pas le nom de l'option fourni entre parenthèses) :
L’attribut CurbApproach est conçu pour fonctionner avec les deux types de normes de conduite nationales : circulation à droite (comme en France et aux États-Unis) et circulation à gauche (Royaume-Uni). Tout d'abord, imaginons une origine du côté gauche d'un véhicule. Il se situe toujours sur la gauche, que le véhicule circule du côté gauche ou du côté droit de la route. Avec les normes de conduite nationales, ce qui peut changer est votre décision de quitter l'origine du côté droit ou du côté gauche du véhicule. Par exemple, si vous souhaitez atteindre une origine sans laisser de voie de circulation entre le véhicule et l’origine, vous choisissez 1 (Côté droit du véhicule) en France et aux États-Unis, mais 2 (Côté gauche du véhicule) au Royaume-Uni. Bearing Direction de déplacement d'un point. Les unités sont exprimées en degrés et sont mesurées dans le sens horaire, à partir du nord géographique. Ce champ est utilisé avec le champ BearingTol. En règle générale, les données de relèvement sont automatiquement envoyées à partir d'un périphérique mobile équipé d'un récepteur GPS. Essayez d’inclure des données de relèvement si vous chargez un emplacement en entrée qui se déplace, par exemple un piéton ou un véhicule. L'utilisation de ce champ vous évite d'ajouter des emplacements sur des tronçons incorrects, par exemple lorsqu'un véhicule se rapproche d'une intersection ou d'un passage supérieur. Le relèvement permet également à l'outil de déterminer plus facilement le côté de la rue où se trouve le point. En savoir plus sur le relèvement et la tolérance de relèvement BearingTol La valeur de tolérance de relèvement crée une plage de valeurs de relèvement acceptables lors de la localisation de points qui se déplacent sur un tronçon à l’aide du champ Bearing (Relèvement). Si la valeur du champ Bearing est comprise dans la plage de valeurs acceptables générées à partir de la tolérance de relèvement sur un tronçon, le point peut être ajouté à cet endroit en tant que localisation de réseau. Sinon, le point le plus proche sur le prochain tronçon le plus proche est évalué. Les unités sont exprimées en degrés et la valeur par défaut est 30. Les valeurs doivent être supérieures à zéro et inférieures à 180. Si la valeur est égale à 30, lorsque Network Analyst essaie d’ajouter un emplacement de réseau sur un tronçon, une plage de valeurs de relèvement acceptables est générée à 15 degrés de chaque côté du tronçon (gauche et droite) et dans les deux sens de numérisation du tronçon. En savoir plus sur le relèvement et la tolérance de relèvement NavLatency Ce champ n’est utilisé qu’au cours du processus de calcul si Bearing et BearingTol contiennent également des valeurs ; toutefois, vous n’êtes pas obligé d’entrer une valeur NavLatency, même si Bearing et BearingTol sont renseignés. NavLatency indique le temps censé s’écouler entre le moment où un véhicule se déplaçant envoie des informations GPS à un serveur et le moment où le dispositif de navigation du véhicule reçoit l’itinéraire traité. Les unités de NavLatency sont les mêmes que celles de l’attribut d’impédance. | Feature Set |
Destinations | Spécifie les emplacements de point d’arrivée vers lesquels voyager à partir des origines. Vous pouvez ajouter jusqu'à 1000 destinations. Lorsque vous précisez les destinations, vous pouvez définir les propriétés pour chacune, comme leur nom, à l’aide des attributs suivants : Name Le nom de la destination. Le nom peut être un identifiant unique de la destination. Le nom est inclus dans les lignes en sortie (comme le champ DestinationName) et dans les destinations en sortie (comme le champ Name) et peut servir à joindre des informations supplémentaires issues des sorties de l’outil aux attributs de vos destinations. Si le nom n’est pas spécifié, un nom unique accompagné du préfixe Location est automatiquement généré. CurbApproach Spécifie la direction dans laquelle un véhicule peut atteindre la destination. Le champ peut prendre l'une des valeurs entières suivantes (utilisez le code numérique, pas le nom de l'option fourni entre parenthèses) :
L’attribut CurbApproach est conçu pour fonctionner avec les deux types de normes de conduite nationales : circulation à droite (comme en France et aux États-Unis) et circulation à gauche (Royaume-Uni). Tout d'abord, imaginons une origine du côté gauche d'un véhicule. Il se situe toujours sur la gauche, que le véhicule circule du côté gauche ou du côté droit de la route. Avec les normes de conduite nationales, ce qui peut changer est votre décision de quitter l'origine du côté droit ou du côté gauche du véhicule. Par exemple, si vous souhaitez atteindre une origine sans laisser de voie de circulation entre le véhicule et l’origine, vous choisissez 1 (Côté droit du véhicule) en France et aux États-Unis, mais 2 (Côté gauche du véhicule) au Royaume-Uni. Bearing Direction de déplacement d'un point. Les unités sont exprimées en degrés et sont mesurées dans le sens horaire, à partir du nord géographique. Ce champ est utilisé avec le champ BearingTol. En règle générale, les données de relèvement sont automatiquement envoyées à partir d'un périphérique mobile équipé d'un récepteur GPS. Essayez d’inclure des données de relèvement si vous chargez un emplacement en entrée qui se déplace, par exemple un piéton ou un véhicule. L'utilisation de ce champ vous évite d'ajouter des emplacements sur des tronçons incorrects, par exemple lorsqu'un véhicule se rapproche d'une intersection ou d'un passage supérieur. Le relèvement permet également à l'outil de déterminer plus facilement le côté de la rue où se trouve le point. En savoir plus sur le relèvement et la tolérance de relèvement BearingTol La valeur de tolérance de relèvement crée une plage de valeurs de relèvement acceptables lors de la localisation de points qui se déplacent sur un tronçon à l’aide du champ Bearing (Relèvement). Si la valeur du champ Bearing est comprise dans la plage de valeurs acceptables générées à partir de la tolérance de relèvement sur un tronçon, le point peut être ajouté à cet endroit en tant que localisation de réseau. Sinon, le point le plus proche sur le prochain tronçon le plus proche est évalué. Les unités sont exprimées en degrés et la valeur par défaut est 30. Les valeurs doivent être supérieures à zéro et inférieures à 180. Si la valeur est égale à 30, lorsque Network Analyst essaie d’ajouter un emplacement de réseau sur un tronçon, une plage de valeurs de relèvement acceptables est générée à 15 degrés de chaque côté du tronçon (gauche et droite) et dans les deux sens de numérisation du tronçon. En savoir plus sur le relèvement et la tolérance de relèvement NavLatency Ce champ n’est utilisé qu’au cours du processus de calcul si Bearing et BearingTol contiennent également des valeurs ; toutefois, vous n’êtes pas obligé d’entrer une valeur NavLatency, même si Bearing et BearingTol sont renseignés. NavLatency indique le temps censé s’écouler entre le moment où un véhicule se déplaçant envoie des informations GPS à un serveur et le moment où le dispositif de navigation du véhicule reçoit l’itinéraire traité. Les unités de NavLatency sont les mêmes que celles de l’attribut d’impédance. | Feature Set |
Travel_Mode (Facultatif) | Mode de transport à modéliser dans l’analyse. Les modes de déplacement sont gérés dans ArcGIS Online et peuvent être configurés par l’administrateur de votre organisation pour refléter les processus de l’organisation. Vous devez indiquer le nom d’un mode de déplacement pris en charge par votre organisation. Pour obtenir la liste des noms de modes de déplacement pris en charge, utilisez la connexion au serveur SIG que vous avez utilisée pour accéder à cet outil, puis exécutez GetTravelModes dans la boîte à outils Utilitaires. L’outil GetTravelModes ajoute la table Supported Travel Modes (modes de déplacement pris en charge) à l’application. N’importe quelle valeur du champ Travel Mode Name dans la table des modes de déplacement pris en charge peut être spécifiée en entrée. Vous pouvez également indiquer champ Travel Mode Settings en entrée. Cela réduit le temps d’exécution de l’outil, car il n’a pas besoin de rechercher les paramètres en fonction du nom du mode de déplacement. La valeur par défaut, Personnalisé, vous permet de configurer votre propre mode de déplacement à l'aide des paramètres du mode de déplacement personnalisé (Demi-tours aux jonctions, Utiliser la hiérarchie, Restrictions, Valeurs des paramètres d'attributs et Impédance). Les valeurs par défaut des paramètres du mode de trajet personnalisé modélisent les déplacements en voiture. Vous pouvez choisir Custom (Personnalisé) et définir les paramètres du mode de trajet personnalisé répertoriés ci-dessus pour modéliser un piéton qui marche très rapidement ou un camion doté d’une hauteur donnée, d’un poids en particulier et qui transporte des matières dangereuses. Vous pouvez essayer différents paramètres afin d’obtenir les résultats d’analyse qui vous intéressent. Une fois les paramètres d’analyse identifiés, collaborez avec l’administrateur de votre organisation pour enregistrer ces paramètres dans le cadre d’un mode de déplacement nouveau ou existant afin que tous les membres de votre organisation puissent exécuter l’analyse avec les mêmes paramètres. Attention :Lorsque vous choisissez Custom (Personnalisé), les valeurs que vous définissez pour les paramètres du mode de déplacement personnalisé sont incluses dans l’analyse. Si vous spécifiez un autre mode de déplacement (défini par votre organisation), les valeurs que vous définissez pour les paramètres du mode de déplacement personnalisé sont ignorées. L'outil les remplace par les valeurs de votre mode de déplacement spécifié. | String |
Time_Units (Facultatif) | Précise les unités que vous souhaitez utiliser pour mesurer et afficher le temps de trajet total entre chaque paire origine-destination.
| String |
Distance_Units (Facultatif) | Précise les unités que vous souhaitez utiliser pour mesurer et afficher la distance totale à parcourir entre chaque paire origine-destination.
| String |
Analysis_Region (Facultatif) | Région dans laquelle l’analyse doit être effectuée. Si aucune valeur n'est spécifiée pour ce paramètre, l'outil calcule automatiquement le nom de la région en fonction de l'emplacement des points en entrée. Il est recommandé de définir le nom de la région seulement si la détection automatique du nom de région n’est pas pertinente pour vos entrées. Pour indiquer une région, utilisez l'une des valeurs suivantes :
Héritage :Les noms des régions suivantes ne sont plus pris en charge et seront retirés dans une version ultérieure. Si vous spécifiez l’un des noms des régions obsolètes, l’outil lui attribue automatiquement un nom de région pris en charge.
| String |
Number_of_Destinations_to_Find (Facultatif) | Le nombre maximum de destinations à rechercher par origine. Si aucune valeur n'est indiquée pour ce paramètre, la matrice en sortie inclut les coûts de déplacement depuis chaque origine vers chaque destination. Chaque origine peut posséder sa propre valeur (spécifiée comme le champ TargetDestinationCount) qui remplace la valeur du paramètre Number of Destinations to Find (Nombre de destinations à rechercher). | Long |
Cutoff (Facultatif) | La valeur du temps de trajet ou de la distance à parcourir à laquelle cesser la recherche de destinations depuis une origine donnée. Toute destination située au-delà de la valeur limite ne sera pas prise en compte. Chaque origine peut posséder sa propre valeur (spécifiée comme champ Cutoff) qui remplace la valeur du paramètre Cutoff (Limite). La valeur doit respecter les unités spécifiées par le paramètre Time Units (Unités de temps)si l’attribut d’impédance dans votre mode de déplacement repose sur le temps ou les unités spécifiées par le paramètre Distance Units (Unités de distance) si l’attribut d’impédance dans votre mode de déplacement repose sur la distance. Si aucune valeur n'est spécifiée, l'outil n'applique aucune limite de temps de trajet ou de distance à parcourir lors de la recherche de destinations. | Double |
Time_of_Day (Facultatif) | Heure et date auxquelles les itinéraires commencent. Si vous modélisez le mode de déplacement en voiture et spécifiez la date et l’heure actuelles pour ce paramètre, l’outil utilise les conditions de trafic réel pour trouver les meilleurs itinéraires ; la durée totale du trajet dépendra des conditions de circulation. Lorsque vous spécifiez une heure, les itinéraires et l'estimation des temps de trajet sont plus précis, car ils tiennent compte des conditions de circulation applicables à la date et à l'heure spécifiées. Le paramètre Fuseau horaire de l'heure de la journée spécifie si cette heure et cette date correspondent à l'heure UTC ou au fuseau horaire dans lequel l'arrêt se trouve. L'outil ignore ce paramètre lorsque le paramètre Unités de mesure n'est pas défini sur une unité temporelle. | Date |
Time_Zone_for_Time_of_Day (Facultatif) | Spécifie le fuseau horaire du paramètre Heure du jour.
| String |
Point_Barriers | Utilisez ce paramètre pour spécifier un ou plusieurs points servant de restrictions temporaires ou représentant un délai ou une distance supplémentaire qui peut être nécessaire pour se déplacer dans les rues sous-jacentes. Par exemple, une interruption ponctuelle peut servir à représenter un arbre tombé dans une rue ou le temps d’attente à un passage à niveau. L’outil impose une limite de 250 points à ajouter comme interruptions. Vous pouvez définir les propriétés des interruptions ponctuelles que vous spécifiez, comme leur nom ou type d’interruption, en utilisant les attributs suivants : Name Nom de l'interruption. BarrierType Spécifie si l’interruption ponctuelle restreint complètement la circulation ou ajoute un délai ou une distance lorsqu’elle est traversée. La valeur de cet attribut peut prendre l'une des valeurs entières suivantes (utilisez le code numérique, pas le nom de l'option fourni entre parenthèses) :
Additional_Time Temps de trajet ajouté lorsque l’interruption est franchie. Ce champ est applicable aux interruptions à coût ajouté uniquement. Cette valeur de champ doit être supérieure ou égale à zéro et ses unités identiques à celles spécifiées dans le paramètre Unités de mesure. Additional_Distance Distance ajoutée lorsque l’interruption est franchie. Ce champ est applicable aux interruptions à coût ajouté uniquement. La valeur de champ doit être supérieure ou égale à zéro et ses unités identiques à celles spécifiées dans le paramètre Unités de mesure. Additional_Cost Coût ajouté lorsque l’interruption est franchie. Ce champ est applicable aux interruptions à coût ajouté uniquement. FullEdge Spécifie la façon dont les interruptions ponctuelles de restriction sont appliquées aux tronçons au cours de l’analyse. Le champ peut prendre l'une des valeurs entières suivantes (utilisez le code numérique, pas le nom de l'option fourni entre parenthèses) :
CurbApproach Spécifie le sens de circulation affecté par l’interruption. Le champ peut prendre l'une des valeurs entières suivantes (utilisez le code numérique, pas le nom de l'option fourni entre parenthèses) :
Étant donné que les jonctions sont des points et n’ont pas de côté, les interruptions situées sur des jonctions affectent tous les véhicules quelle que soit l’approche du trottoir. L’attribut CurbApproach fonctionne avec les deux types de normes de conduite nationales : circulation à droite (comme en France et aux États-Unis) et circulation à gauche (Royaume-Uni). Tout d'abord, imaginons une ressource qui se trouve du côté gauche d'un véhicule. Il se situe toujours sur la gauche, que le véhicule circule du côté gauche ou du côté droit de la route. Avec les normes de conduite nationales, ce qui peut changer est votre décision d'aborder la ressource du côté droit ou du côté gauche du véhicule. Par exemple, pour atteindre une ressource sans qu’il y ait de voie de circulation entre le véhicule et la ressource, choisissez 1 (côté droit du véhicule) en France et aux États-Unis, mais 2 (côté gauche du véhicule) au Royaume-Uni. Bearing Direction de déplacement d'un point. Les unités sont exprimées en degrés et sont mesurées dans le sens horaire, à partir du nord géographique. Ce champ est utilisé avec le champ BearingTol. En règle générale, les données de relèvement sont automatiquement envoyées à partir d'un périphérique mobile équipé d'un récepteur GPS. Essayez d’inclure des données de relèvement si vous chargez un emplacement en entrée qui se déplace, par exemple un piéton ou un véhicule. L'utilisation de ce champ vous évite d'ajouter des emplacements sur des tronçons incorrects, par exemple lorsqu'un véhicule se rapproche d'une intersection ou d'un passage supérieur. Le relèvement permet également à l'outil de déterminer plus facilement le côté de la rue où se trouve le point. En savoir plus sur le relèvement et la tolérance de relèvement BearingTol La valeur de tolérance de relèvement crée une plage de valeurs de relèvement acceptables lors de la localisation de points qui se déplacent sur un tronçon à l’aide du champ Bearing (Relèvement). Si la valeur du champ Bearing est comprise dans la plage de valeurs acceptables générées à partir de la tolérance de relèvement sur un tronçon, le point peut être ajouté à cet endroit en tant que localisation de réseau. Sinon, le point le plus proche sur le prochain tronçon le plus proche est évalué. Les unités sont exprimées en degrés et la valeur par défaut est 30. Les valeurs doivent être supérieures à zéro et inférieures à 180. Si la valeur est égale à 30, lorsque Network Analyst essaie d’ajouter un emplacement de réseau sur un tronçon, une plage de valeurs de relèvement acceptables est générée à 15 degrés de chaque côté du tronçon (gauche et droite) et dans les deux sens de numérisation du tronçon. En savoir plus sur le relèvement et la tolérance de relèvement NavLatency Ce champ n’est utilisé qu’au cours du processus de calcul si Bearing et BearingTol contiennent également des valeurs ; toutefois, vous n’êtes pas obligé d’entrer une valeur NavLatency, même si Bearing et BearingTol sont renseignés. NavLatency indique le temps censé s’écouler entre le moment où un véhicule se déplaçant envoie des informations GPS à un serveur et le moment où le dispositif de navigation du véhicule reçoit l’itinéraire traité. Les unités de NavLatency sont les mêmes que celles de l’attribut d’impédance. | Feature Set |
Line_Barriers | Utilisez ce paramètre pour spécifier une ou plusieurs lignes interdisant la circulation partout où les lignes intersectent les rues. Par exemple, un défilé ou une manifestation qui bloque la circulation sur plusieurs segments de rue peut être modélisé avec une interruption linéaire. Une interruption linéaire peut également délimiter rapidement un périmètre autour de plusieurs routes et filtrer ainsi les itinéraires possibles en évitant les parties indésirables du réseau de transport. L’outil impose une limite au nombre de rues que vous pouvez restreindre à l’aide du paramètre des Line Barriers (Interruptions linéaires). Bien qu’aucune limite ne soit imposée au nombre de lignes que vous pouvez spécifier comme interruptions linéaires, le nombre combiné de rues intersectées par toutes les lignes ne peut pas dépasser 500. Vous pouvez définir des propriétés de nom et de type d’interruption pour les interruptions linéaires que vous spécifiez en utilisant les attributs suivants : Name Nom de l'interruption. | Feature Set |
Polygon_Barriers | Utilisez ce paramètre pour spécifier les polygones qui restreignent entièrement la circulation ou adaptez proportionnellement le temps ou la distance nécessaire pour se déplacer dans les rues intersectées par les polygones. Le service impose une limite au nombre de rues que vous pouvez restreindre à l’aide du paramètre des Polygon Barriers (Interruptions polygonales). Bien qu’aucune limite ne soit imposée au nombre de polygones que vous pouvez spécifier comme interruptions polygonales, le nombre combiné de rues intersectées par toutes les polygones ne peut pas dépasser 2 000. Vous pouvez définir les propriétés des interruptions polygonales que vous spécifiez, comme leur nom ou type d’interruption, en utilisant les attributs suivants : Name Nom de l'interruption. BarrierType Spécifie si l’interruption restreint complètement la circulation ou proportionne le coût de déplacement (tel que le temps ou la distance) lorsqu’elle est franchie. Le champ peut prendre l'une des valeurs entières suivantes (utilisez le code numérique, pas le nom de l'option fourni entre parenthèses) :
ScaledTimeFactor Il s'agit du facteur de multiplication du temps de trajet des rues intersectées par l'interruption. La valeur du champ doit être supérieure à zéro. Ce champ est applicable aux interruptions à coût mis à l’échelle uniquement. ScaledDistanceFactor Il s'agit du facteur de multiplication de la distance des rues intersectées par l'interruption. La valeur du champ doit être supérieure à zéro. Ce champ est applicable aux interruptions à coût mis à l’échelle uniquement. ScaledCostFactor Il s’agit du facteur de multiplication du coût des rues intersectées par l’interruption. La valeur du champ doit être supérieure à zéro. Ce champ est applicable aux interruptions à coût mis à l’échelle uniquement. | Feature Set |
UTurn_at_Junctions (Facultatif) | Spécifie la règle de demi-tour aux jonctions. L'autorisation des demi-tours implique que le solveur puisse faire demi-tour au niveau d'une jonction et revenir en arrière par la même rue. Dans la mesure où les jonctions représentent des intersections de rues et des voies sans issue, différents véhicules peuvent faire demi-tour à certaines jonctions mais pas à d'autres, selon que la jonction représente une intersection ou une voie sans issue. Pour en tenir compte, le paramètre de règle de demi-tour est spécifié implicitement par le nombre de tronçons connectés à la jonction, également connu sous le nom de « valence de jonction ». Les valeurs acceptables pour ce paramètre sont répertoriées ci-dessous ; chacune est suivie d'une description de sa signification en termes de valence de jonction.
Ce paramètre est ignoré, sauf si le paramètre Mode de déplacement est défini sur Personnalisé. | String |
Use_Hierarchy (Facultatif) | Indique si la hiérarchie est utilisée lorsque vous recherchez les chemins les plus courts entre les arrêts.
L’outil utilise automatiquement la hiérarchie si la distance en ligne droite entre les ressources et les points de demande est supérieure à 50 miles (80,46 kilomètres), même si ce paramètre est désactivé (défini sur False dans Python). Ce paramètre est ignoré, sauf si le paramètre Mode de déplacement est défini sur Personnalisé. Lorsque vous modélisez un mode de marche à pied personnalisé, il est recommandé de désactiver la hiérarchie, car elle est conçue pour les véhicules motorisés. | Boolean |
Restrictions [Restrictions,...] (Facultatif) | Restrictions qui doivent être respectées par l’outil lorsque vous recherchez les meilleurs itinéraires. Une restriction représente une préférence ou une exigence relative à un trajet. Dans la plupart des cas, les restrictions sont utilisées pour interdire certaines routes. Par exemple, la restriction Éviter les routes à péage permet d’obtenir un itinéraire qui n’inclut les routes à péage que lorsque cela est absolument inévitable pour se rendre sur le lieu d’un incident ou parvenir à une ressource. Restriction de hauteur permet de contourner les dégagements qui sont inférieurs à la hauteur de votre véhicule. Si vous transportez des matières corrosives dans votre véhicule, l’utilisation de la restriction Substances dangereuses interdites empêche le transport de ces matériaux sur les routes qui l’interdisent. Remarque :Les valeurs que vous indiquez pour ce paramètre sont ignorées, sauf si le paramètre Mode de déplacement est défini sur Personnalisé. Remarque :Certaines restrictions nécessitent la spécification d’une valeur supplémentaire. Cette valeur doit être associée au nom de la restriction et à un paramètre précis destiné à fonctionner avec la restriction. Vous pouvez identifier ces restrictions si leurs noms apparaissent dans la colonne AttributeName dans le paramètre Attribute Parameter Values (Valeurs des paramètres d’attributs). Le champ ParameterValue doit être indiqué dans le paramètre Attribute Parameter Values (Valeurs des paramètres d’attributs) pour que la restriction soit correctement utilisée lors de la recherche des routes traversables. Remarque :Certaines restrictions sont uniquement prises en charge dans certains pays. Leur disponibilité est indiquée par région dans la liste ci-dessous. Parmi les restrictions dont la disponibilité est limitée au sein d’une région, vous pouvez déterminer si la restriction est disponible dans un pays en particulier en examinant la table de la section Liste des pays sur la page Web de couverture d’analyse du réseau. Si un pays a la valeur Yes (Oui) dans la colonne des attributs logistiques, la restriction dotée de la disponibilité sélectionnée dans la région est prise en charge dans ce pays. Si vous spécifiez des noms de restrictions qui ne sont pas disponibles dans le pays dans lequel se trouvent vos incidents, le service ignore les restrictions non valides. Le service ignore également les restrictions dont la valeur du paramètre d’attribut Restriction Usage (Utilisation de restriction) est comprise entre 0 et 1 (voir le paramètre Attribute Parameter Values (Valeurs des paramètres d’attributs)). Il interdit toutes les restrictions dont la valeur du paramètre Restriction Usage (Utilisation de restriction) est supérieure à 0. L'outil prend en charge les restrictions suivantes :
| String |
Attribute_Parameter_Values (Facultatif) | Utilisez ce paramètre pour spécifier les valeurs supplémentaires requises par un attribut ou une restriction, par exemple pour indiquer si la restriction interdit, évite ou préfère un déplacement sur des routes soumises à restrictions. Si la restriction consiste à éviter ou à préférer certaines routes, vous pouvez utiliser ce paramètre pour préciser le degré d'évitement ou de préférence. Par exemple, vous pouvez choisir de ne jamais emprunter de routes à péage, de les éviter autant que possible ou même de les préférer. Remarque :Les valeurs que vous indiquez pour ce paramètre sont ignorées, sauf si le paramètre Mode de déplacement est défini sur Personnalisé. Si vous spécifiez le paramètre Attribute Parameter Values (Valeurs des paramètres d’attributs) d’une classe d’entités, les noms de champs sur la classe d’entités doivent correspondre aux champs, comme suit :
Le paramètre Attribute Parameter Values (Valeurs des paramètres d’attributs) dépend du paramètre Restrictions. Le champ ParameterValue s’applique uniquement si le nom de la restriction est spécifié comme valeur du paramètre Restrictions. Dans le paramètre Attribute Parameter Values (Valeurs des paramètres d’attributs), chaque restriction (affichée sous la forme AttributeName) se voit attribuer une valeur de champ ParameterName, Restriction Usage (Utilisation de restriction), qui détermine si la restriction interdit, évite ou préfère la circulation sur les routes associées à la restriction et précise le degré d’évitement ou de préférence des routes. Le champ ParameterName Restriction Usage (Utilisation de restriction) peut se voir attribuer l’une des valeurs de chaîne suivantes ou leurs valeurs numériques équivalentes affichées entre parenthèses :
Dans la plupart des cas, vous pouvez utiliser la valeur PROHIBITED par défaut pour le paramètre Utilisation d’une restriction si la restriction dépend d’une caractéristique du véhicule, telle que sa hauteur. Toutefois, dans certains cas, la valeur du paramètre Utilisation d’une restriction dépend de vos préférences d’itinéraire. Par exemple, pour le paramètre Utilisation d’une restriction, la valeur par défaut de la restriction Éviter les routes à péage est AVOID_MEDIUM. Cela signifie que lorsque cette restriction est utilisée, l'outil essaie de contourner les routes à péage, dans la mesure du possible. AVOID_MEDIUM indique également l'importance d'éviter les routes à péage lorsque vous recherchez le meilleur itinéraire : dans ce cas, la priorité est moyenne. Si vous choisissez AVOID_LOW, il n’est pas important d’éviter les routes à péage ; la sélection de AVOID_HIGH, en revanche, donne une grande importance à ce choix et justifie ainsi la génération par le service d’itinéraires plus longs afin d’éviter les péages. Si vous optez pour PROHIBITED, vous interdisez formellement la circulation sur des routes à péage, ce qui rend impossible la fréquentation d’un tronçon d’une route à péage dans la préparation de l’itinéraire. Gardez à l’esprit que l’évitement ou l’interdiction de routes à péage, et donc l’évitement du paiement de péages, peut constituer un objectif pour certains utilisateurs. En revanche, d’autres utilisateurs préféreront circuler sur des routes à péage, car il est plus important pour eux d’éviter les embouteillages que de faire l’économie des coûts de péage. Dans ce dernier cas, choisissez PREFER_LOW, PREFER_MEDIUM ou PREFER_HIGH comme valeur du paramètre Utilisation d’une restriction. Plus la préférence est élevée, plus l'outil devra dévier de son trajet afin d'autoriser la circulation sur les routes associées à la restriction. | Record Set |
Impedance (Facultatif) | Spécifie l’impédance. Il s’agit d’une valeur représentant l’effort ou le coût de déplacement le long des segments de route ou sur d’autres portions du réseau de transport. Le temps de trajet est une impédance : une voiture peut mettre une minute à parcourir un mile (1,6 kilomètre) sur une route déserte. Les temps de trajet peuvent varier selon le mode de déplacement : un piéton peut mettre plus de 20 minutes à parcourir le même mile. Il est par conséquent important de choisir l’impédance appropriée au mode de déplacement que vous modélisez. La distance à parcourir peut également être une impédance ; la longueur d’une route en kilomètres peut être considérée comme une impédance. En ce sens, la distance à parcourir est la même pour tous les modes : un kilomètre pour un piéton est également un kilomètre pour une voiture. (Ce qui peut changer, ce sont les voies d'accès que les différents modes sont autorisés à emprunter. Cela affecte la distance entre les points et est modélisé par les paramètres du mode de déplacement.) Attention :La valeur que vous indiquez pour ce paramètre est ignorée, sauf si le paramètre Mode de déplacement est défini sur Personnalisé, qui est la valeur par défaut.
Si vous choisissez une impédance temporelle telle que TravelTime, TruckTravelTime, Minutes, TruckMinutes ou WalkTime, le paramètre Measurement Units (Unités de mesure) doit être défini sur une valeur basée sur le temps. En revanche, si vous choisissez une impédance de distance comme Miles ou Kilometers (Kilimètres), le paramètre Measurement Units (Unités de mesure) doit faire référence à une distance. Héritage :Les valeurs d’impédance Drive Time (Temps de trajet), Truck Time (Durée du trajet pour camions), Walk Time (Durée du trajet à pied) et Travel Distance (Distance à parcourir) ne sont plus prise en charge et seront retirées dans une version ultérieure. Si vous utilisez l’une de ces valeurs, l’outil utilise la valeur du paramètre Time Impedance (Impédance de temps) pour les valeurs temporelles ou celle du paramètre Distance Impedance (Impédance de distance) pour les valeurs basées sur la distance. | String |
Origin_Destination_Line_Shape | Les lignes résultantes d'une matrice de coût OD peuvent être représentées avec une géométrie de ligne droite ou sans aucune géométrie. Dans les deux cas, l'itinéraire est toujours calculé le long du réseau de transport en réduisant le temps de trajet ou la distance à parcourir et jamais en utilisant la distance en ligne droite entre les origines et les destinations.
| String |
Save_Output_Network_Analysis_Layer (Facultatif) | Précise si les paramètres de l’analyse seront enregistrés comme fichier de couche d’analyse réseau. Vous ne pouvez pas utiliser ce fichier directement, même lorsque vous ouvrez le fichier dans une application ArcGIS Desktop telle que ArcMap. Celui-ci doit être envoyé au support technique Esri, qui évaluera la qualité des résultats renvoyés par l’outil.
| Boolean |
Overrides (Facultatif) | Des paramètres supplémentaires pouvant influencer le comportement du solveur lorsque vous recherchez des solutions pour résoudre les problèmes d’analyse du réseau. La valeur de ce paramètre doit être spécifiée au format JSON (JavaScript Object Notation). Une valeur valide, par exemple, a le format suivant : {"overrideSetting1" : "value1", "overrideSetting2" : "value2"}. Le nom du paramètre de remplacement est toujours spécifié entre des guillemets doubles. Les valeurs peuvent être un nombre, une valeur booléenne ou une chaîne. Par défaut, aucune valeur ne doit être spécifiée pour ce paramètre, ce qui signifie qu'il est déconseillé de remplacer les paramètres du solveur. Les valeurs de remplacement sont des paramètres avancés qui ne doivent être utilisés qu'après une analyse approfondie des résultats obtenus avant et après leur application. Vous pouvez obtenir auprès du support technique Esri une liste des paramètres de remplacement pris en charge, ainsi que leurs valeurs acceptables, pour chaque solveur. | String |
Time_Impedance (Facultatif) | L’impédance basée sur le temps. Il s’agit d’une valeur représentant le temps de déplacement le long des segments de route ou sur d’autres portions du réseau de transport. Remarque :Si l’impédance du mode de déplacement, indiquée par le paramètre Impedance (Impédance), est basé sur le temps, les valeurs pour les paramètres Time Impedance (Impédance de temps) et Impedance (Impédance) doivent être identiques. Sinon, le service renvoie une erreur.
| String |
Distance_Impedance (Facultatif) | L’impédance basée sur la distance est une valeur représentant la distance à parcourir le long des segments de route ou sur d’autres portions du réseau de transport. Remarque :Si l’impédance du mode de déplacement, indiquée par le paramètre Impedance (Impédance), est basé sur la distance, les valeurs pour les paramètres Distance Impedance (Impédance de distance) et Impedance (Impédance) doivent être identiques. Sinon, le service renvoie une erreur.
| String |
Output_Format (Facultatif) | Spécifie le format dans lequel les entités en sortie sont créées.
Lorsqu’un format de sortie - basé sur un fichier, tel que JSON File (Fichier JSON) ou GeoJSON File (Fichier GeoJSON), est spécifié, aucune sortie n’est ajoutée à l’affichage puisque l’application (comme ArcMap ou ArcGIS Pro) ne peuvent pas afficher le contenu du fichier de résultats. À la place, le fichier est téléchargé dans un répertoire temporaire sur votre machine. Dans ArcGIS Pro, il est possible de déterminer l’emplacement du fichier téléchargé en affichant la valeur du paramètre Output Result File (Fichier de résultats en sortie) dans l’entrée correspondant à l’exécution de l’outil dans l’historique de géotraitement de votre projet. Dans ArcMap, l’emplacement du fichier peut être déterminé via l’option Copy Location (Copier l’emplacement) dans le menu contextuel du paramètre Output Result File (Fichier de résultats en sortie) de l’entrée correspondant à l’exécution de l’outil dans la fenêtre Geoprocessing Results (Résultats du géotraitement). | String |
Sortie dérivée
Nom | Explication | Type de données |
Solve_Succeeded | Détermine si le service a réussi à générer la matrice de coût origine-destination. | Booléen |
Output_Origin_Destination_Lines | Ce paramètre permet d’accéder aux lignes reliant les origines aux destinations. | Jeu d’entités |
Output_Origins | Ce paramètre fournit des informations sur les origines utilisées dans l’analyse telles que le nombre total de destinations atteintes à partir d’une origine donnée ou les origines non incluses dans l’analyse. | Jeu d’entités |
Output_Destinations | Ce paramètre fournit des informations sur les destinations utilisées dans l’analyse telles que le nombre total d’origines atteintes à partir d’une destination donnée ou les destinations non incluses dans l’analyse. | Jeu d’entités |
Output_Network_Analysis_Layer | Couche d’analyse de réseau avec des propriétés dont la configuration correspond à celle des paramètres d’outil, pouvant être utilisée pour réaliser d’autres analyses ou des opérations de débogage sur la carte. | Fichier |
Output_Result_File | Fichier .zip contenant les résultats de l’analyse, avec un ou plusieurs fichiers pour chacune des sorties. Le format d’un fichier est spécifié par le paramètre Output Format (Format en sortie). | Fichier |
Exemple de code
Le script Python ci-dessous illustre l’utilisation de l’outil Generate Origin Destination Cost Matrix dans un script.
"""This example shows how to generate a matrix of travel times between origins and destinations."""
import sys
import time
import arcpy
username = "<your user name>"
password = "<your password>"
od_service = "https://logistics.arcgis.com/arcgis/services;World/OriginDestinationCostMatrix;{0};{1}".format(username, password)
# Add the geoprocessing service as a toolbox.
# Check https://pro.arcgis.com/en/pro-app/arcpy/functions/importtoolbox.htm for
# other ways in which you can specify credentials to connect to a geoprocessing service.
arcpy.ImportToolbox(od_service)
# Set the variables to call the tool
origins = "C:/data/Inputs.gdb/Warehouses"
destinations = "C:/data/Inputs.gdb/Stores"
output_od_lines = "C:/data/Results.gdb/ODLines"
# Call the tool
result = arcpy.GenerateOriginDestinationCostMatrix_OriginDestinationCostMatrix(origins,
destinations,
Origin_Destination_Line_Shape="Straight Line")
arcpy.AddMessage("Running the analysis with result ID: {}".format(result.resultID))
# Check the status of the result object every 1 second until it has a
# value of 4 (succeeded) or greater
while result.status < 4:
time.sleep(1)
# print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
arcpy.AddError("An error occured when running the tool")
arcpy.AddError(result.getMessages(2))
sys.exit(2)
elif result_severity == 1:
arcpy.AddWarning("Warnings were returned when running the tool")
arcpy.AddWarning(result.getMessages(1))
# Save the lines connecting origins to destinations in a geodatabase
result.getOutput(1).save(output_od_lines)
L’exemple suivant décrit la procédure d’analyse de matrice de coût origine-destination pour un mode de déplacement personnalisé.
"""This example shows how to perform an origin-destination cost matrix analysis using a custom travel mode
that models trucks carrying wide load."""
import sys
import time
import json
import arcpy
username = "<your user name>"
password = "<your password>"
od_service = "https://logistics.arcgis.com/arcgis/services;World/OriginDestinationCostMatrix;{0};{1}".format(username, password)
# Add the geoprocessing service as a toolbox.
arcpy.ImportToolbox(od_service)
# Set the variables to call the tool
origins = "C:/data/Inputs.gdb/Warehouses"
destinations = "C:/data/Inputs.gdb/Stores"
output_od_lines = "C:/data/Results.gdb/ODLines"
# Change Vehicle Width attribute parameter value to 4.5 (about 15 feet) for the Trucking Time travel mode
# used for the analysis
portal_url = "https://www.arcgis.com"
arcpy.SignInToPortal(portal_url, username, password)
travel_mode_list = arcpy.na.GetTravelModes(portal_url)
tt = travel_mode_list["Trucking Time"]
tt_json = str(tt)
tt_dict = json.loads(tt_json)
tt_dict["restrictionAttributeNames"].append("Width Restriction")
for attr_param in tt_dict["attributeParameterValues"]:
if attr_param['attributeName'] == 'Width Restriction' and attr_param['parameterName'] == 'Vehicle Width (meters)':
attr_param['value'] = 4.5
travel_mode = json.dumps(tt_dict)
# Call the tool
result = arcpy.GenerateOriginDestinationCostMatrix_OriginDestinationCostMatrix(origins, destinations,
Travel_Mode=travel_mode,
Origin_Destination_Line_Shape="Straight Line")
# Check the status of the result object every 1 second until it has a
# value of 4 (succeeded) or greater
while result.status < 4:
time.sleep(1)
# print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
arcpy.AddError("An error occured when running the tool")
arcpy.AddError(result.getMessages(2))
sys.exit(2)
elif result_severity == 1:
arcpy.AddWarning("Warnings were returned when running the tool")
arcpy.AddWarning(result.getMessages(1))
# Save the lines connecting origins to destinations in a geodatabase
result.getOutput(1).save(output_od_lines)
Environnements
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?