Résumé
FindRoutes détermine les chemins les plus courts pour accéder aux arrêts en entrée et renvoie les itinéraires, des informations sur les arrêts visités et les feuilles de route, notamment le temps de trajet et la distance.
L'outil est capable d'établir des itinéraires qui passent par plusieurs arrêts en entrée selon une séquence que vous déterminez au préalable ou selon la séquence qui réduit le temps de trajet total. Vous pouvez regrouper les arrêts en entrée dans différents itinéraires à l'aide du champ RouteName. L'outil établit alors un itinéraire pour chaque groupe d'arrêts, ce qui vous permet de générer des itinéraires pour plusieurs véhicules dans une seule opération de calcul d'itinéraire.
Pour en savoir plus sur la sortie de l'outil Rechercher un itinéraire
Illustration
Utilisation
L'outil recherche les itinéraires les plus courts en fonction du temps de trajet si la valeur du paramètre Unités de mesure est temporelle et en fonction de la distance de trajet si la valeur repose sur la distance.
Vous devez spécifier au moins deux arrêts pour exécuter l'outil. Vous pouvez ajouter jusqu'à 10 000 arrêts et attribuer un maximum de 150 arrêts par itinéraire.
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 Utiliser la hiérarchie soit activé (True) ou non, la hiérarchie est toujours utilisée lorsque la distance en ligne droite entre des paires d'arrêts est supérieure à 50 miles (80,46 kilomètres).
La distance en ligne droite entre des paires d'arrêts ne peut pas être supérieure à 50 miles (80.46 kilomètres) lorsque le Mode de déplacement est défini sur la valeur Marche ou lorsqu'il est défini sur Personnalisé et que la restriction 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 exclu de l'analyse.
Cet outil est conçu pour s'exécuter dans ArcGIS Pro, ArcMap, ArcGlobe et ArcScene, mais pas dans ArcCatalog.
Syntaxe
FindRoutes_naagol (Stops, Measurement_Units, {Analysis_Region}, {Reorder_Stops_to_Find_Optimal_Routes}, {Preserve_Terminal_Stops}, {Return_to_Start}, {Use_Time_Windows}, {Time_of_Day}, Time_Zone_for_Time_of_Day, {UTurn_at_Junctions}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Use_Hierarchy}, {Restrictions}, {Attribute_Parameter_Values}, {Route_Shape}, {Route_Line_Simplification_Tolerance}, {Populate_Route_Edges}, {Populate_Directions}, {Directions_Language}, {Directions_Distance_Units}, {Directions_Style_Name}, {Travel_Mode}, {Impedance}, {Time_Zone_for_Time_Windows}, {Save_Output_Network_Analysis_Layer}, {Overrides}, {Save_Route_Data})
Paramètre | Explication | Type de données |
Stops | Indiquez deux arrêts ou plus pour établir un itinéraire. Vous pouvez ajouter jusqu'à 10 000 arrêts et attribuer jusqu'à 150 arrêts à un même itinéraire. (Attribuez des arrêts aux itinéraires à l'aide de l'attribut RouteName.) Vous pouvez définir les propriétés des arrêts que vous spécifiez, comme leur nom ou le temps de service, en utilisant des attributs. Vous pouvez spécifier les arrêts avec les attributs suivants : Name : nom de l'arrêt. Le nom est utilisé dans les trajets. Si le nom n'est pas spécifié, un nom unique accompagné du préfixe Location est automatiquement généré dans les arrêts, itinéraires et trajets en sortie. RouteName : nom de l'itinéraire auquel l'arrêt est attribué. Si vous attribuez le même nom d'itinéraire à différents arrêts, ces derniers sont regroupés et visités par le même itinéraire. Vous pouvez générer plusieurs itinéraires dans une seule opération de calcul en attribuant des noms d'itinéraires uniques à différents groupes d'arrêts. Cet outil permet de regrouper jusqu'à 150 arrêts dans un itinéraire. Sequence : les itinéraires en sortie accèdent aux arrêts dans l'ordre que vous spécifiez avec cet attribut. Au sein d'un groupe d'arrêts portant la même valeur RouteName, le numéro de séquence doit être supérieur à 0 mais inférieur au nombre maximal total d'arrêts. De plus, le numéro de séquence ne doit pas être dupliqué. Si l'option Réorganiser les arrêts pour trouver l'itinéraire optimal est activée (True), toutes les valeurs de la séquence (à l'exception sans doute de la première et de la dernière) pour chaque nom d'itinéraire sont ignorées afin que l'outil puisse trouver la séquence qui réduit le temps de trajet total pour chaque itinéraire. (Les paramètres de Conserver l’organisation des arrêts et Revenir au départ déterminent si la première valeur et la dernière valeur de la séquence pour chaque itinéraire sont ignorées.) AdditionalTime : temps passé à l'arrêt, qui s'ajoute à la durée totale de l'itinéraire. Les unités de cette valeur attributaire sont spécifiées dans le paramètre Unités de mesure. La valeur attributaire est incluse dans l'analyse uniquement lorsque les unités de mesure sont temporelles. La valeur par défaut est 0. Vous pouvez tenir compte du temps supplémentaire requis pour l'accomplissement d'une tâche à l'arrêt, par exemple pour réparer un appareil, livrer un paquet ou inspecter les lieux. AdditionalDistance : distance supplémentaire parcourue aux arrêts, qui s'ajoute à la distance totale de l'itinéraire. Les unités de cette valeur attributaire sont spécifiées dans le paramètre Unités de mesure. La valeur attributaire est incluse dans l'analyse uniquement lorsque les unités de mesure sont basées sur la distance. La valeur par défaut est 0. En règle générale, le lieu d'un arrêt, chez soi par exemple, ne donne pas directement sur une rue : il est un peu en retrait de la route. Cette valeur attributaire peut être utilisée pour modéliser la distance entre le lieu réel de l'arrêt et sa localisation sur la rue, s'il est important d'inclure cette distance dans la distance totale de trajet. TimeWindowStart : créneau horaire pendant lequel l'arrêt peut être visité au plus tôt. Veillez à utiliser une valeur de date et d'heure, par exemple 8/12/2015 12:15 PM. En spécifiant une heure de départ et de fin pour la fenêtre horaire d'un arrêt, vous définissez le moment où un itinéraire doit accéder à l'arrêt. Tant que l'option Utiliser les fenêtres de temps est sélectionnée et que vous avez choisi une unité temporelle pour Unités de mesure, l'outil essaie de trouver une solution qui réduit le temps de trajet total et parvient à l'arrêt dans l'intervalle de la fenêtre horaire prescrite. Lors de la résolution d'un problème couvrant plusieurs fuseaux horaires, les valeurs des fenêtres horaires se rapportent au fuseau horaire dans lequel se trouve l'arrêt. Ce champ peut contenir une valeur Null. Une valeur Null indique qu'un itinéraire peut arriver à tout moment avant l'heure indiquée dans l'attribut TimeWindowEnd. Si une valeur Null est également indiquée dans TimeWindowEnd, un itinéraire peut visiter l'arrêt à tout moment. TimeWindowEnd : créneau horaire pendant lequel l'arrêt peut être visité au plus tard. Veillez à utiliser une valeur de date et d'heure, par exemple 8/12/2015 12:15 PM. En spécifiant une heure de départ et de fin pour la fenêtre horaire d'un arrêt, vous définissez le moment où un itinéraire doit accéder à l'arrêt. Tant que l'option Utiliser les fenêtres de temps est sélectionnée et que vous avez choisi une unité temporelle pour Unités de mesure, l'outil essaie de trouver une solution qui réduit le temps de trajet total et parvient à l'arrêt dans l'intervalle de la fenêtre horaire prescrite. Lors de la résolution d'un problème couvrant plusieurs fuseaux horaires, les valeurs des fenêtres horaires se rapportent au fuseau horaire dans lequel se trouve l'arrêt. Ce champ peut contenir une valeur Null. Une valeur Null indique qu'un itinéraire peut arriver à tout moment après l'heure indiquée dans l'attribut TimeWindowStart. Si une valeur Null est également indiquée dans TimeWindowStart, un itinéraire peut visiter l'arrêt à tout moment. CurbApproach : spécifie la direction selon laquelle un véhicule peut atteindre et quitter l'arrêt. 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) :
La propriété CurbApproach est conçue pour fonctionner avec les deux types de normes de conduite nationales : circulation à droite (comme en France et aux Etats-Unis) et circulation à gauche (Royaume-Uni). D'abord, considérez un arrêt 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 un arrêt du côté droit ou du côté gauche du véhicule. Par exemple, si vous souhaitez atteindre un arrêt sans laisser une voie de circulation entre le véhicule et l'arrêt, vous choisissez Côté droit du véhicule (1) aux Etats-Unis, mais Côté gauche du véhicule (2) au Royaume-Uni. LocationType : spécifie le type d'arrêt. Le champ peut prendre l'une des valeurs entières ci-après (utilisez le code numérique, et non le nom de l'option fourni entre parenthèses) :
| Feature Set |
Measurement_Units | Précisez les unités que vous souhaitez utiliser pour mesurer et afficher la durée ou la distance totale du trajet pour les itinéraires en sortie. Les unités que vous choisissez pour ce paramètre déterminent si l'outil mesure la distance ou la durée pour identifier le meilleur itinéraire. Choisissez une unité de temps afin de réduire le temps de trajet pour le mode de déplacement choisi (temps de conduite ou de marche, par exemple). Afin de réduire la distance de trajet pour le mode de déplacement donné, choisissez une unité de distance. Votre choix détermine également les unités utilisées par l'outil pour signaler la distance totale ou la distance dans les résultats. Les choix suivants sont disponibles :
| String |
Analysis_Region (Facultatif) | Indiquez la région dans laquelle effectuer l'analyse. 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 afin d'accélérer l'exécution de l'outil. Pour indiquer une région, utilisez l'une des valeurs suivantes :
| String |
Reorder_Stops_to_Find_Optimal_Routes (Facultatif) | Précisez si vous souhaitez accéder aux arrêts selon l'ordre que vous définissez ou selon l'ordre déterminé par l'outil pour réduire le temps de trajet total.
La recherche de l'ordre optimal des arrêts et du meilleur itinéraire est généralement connue sous le nom de résolution du problème du voyageur de commerce. | Boolean |
Preserve_Terminal_Stops (Facultatif) | Lorsque l'option Réorganiser les arrêts pour trouver l'itinéraire optimal est sélectionnée (ou True), vous avez la possibilité de conserver l'arrêt de départ et l'arrêt d'arrivée et de laisser l'outil réorganiser le reste. Le premier arrêt et le dernier arrêt sont déterminés par les valeurs de leur attribut Sequence ou, si les valeurs Sequence sont Null, selon les valeurs de leur ID d'objet.
L'option Conserver les arrêts terminaux est ignorée lorsque le paramètre Réorganiser les arrêts pour trouver l'itinéraire optimal est décoché (ou False). | String |
Return_to_Start (Facultatif) | Choisissez si les itinéraires doivent commencer et s'achever au même endroit. Cette option vous permet de ne pas dupliquer le premier arrêt et séquencer l'arrêt dupliqué à la fin. L'emplacement de départ de l'itinéraire est l'arrêt qui possède la valeur la plus faible dans l'attribut Sequence. Si les valeurs de l'attribut Sequence sont Null, il s'agit de l'arrêt qui possède la valeur d'ID d'objet la plus faible.
| Boolean |
Use_Time_Windows (Facultatif) | Sélectionnez cette option (ou définissez-la sur True) si des arrêts en entrée disposent de fenêtres horaires spécifiant quand l'itinéraire doit atteindre l'arrêt. Vous pouvez ajouter des fenêtres horaires aux arrêts en entrée en saisissant des valeurs temporelles dans les attributs TimeWindowStart et TimeWindowEnd.
L'exécution de l'outil est légèrement plus longue si l'option Utiliser les fenêtres de temps est sélectionnée (ou True), même si aucun des arrêts en entrée ne dispose de fenêtres horaires. Il est par conséquent recommandé de décocher cette option (définie sur False) si possible. | Boolean |
Time_of_Day (Facultatif) | Spécifie l'heure et la date auxquelles les itinéraires doivent commencer. 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 | Spécifie le fuseau horaire du paramètre Heure du jour.
| String |
UTurn_at_Junctions (Facultatif) | 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, ou de rues, à 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 |
Point_Barriers (Facultatif) | Spécifiez un ou plusieurs points devant servir de restrictions temporaires ou représentant un délai ou une distance supplémentaire risquant d'ê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 barrières. Vous pouvez définir les propriétés des interruptions ponctuelles que vous spécifiez, comme leur nom ou type d'interruption, en utilisant des attributs. Vous pouvez spécifier les interruptions ponctuelles avec 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 : indique le temps de trajet ajouté lorsque l'interruption est franchie. Ce champ est actif uniquement pour les interruptions à coût ajouté et uniquement si les unités de mesure sont temporelles. 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 : indique la distance ajoutée lorsque l'interruption est franchie. Ce champ est actif uniquement pour les interruptions à coût ajouté et uniquement si les unités de mesure sont basées sur la distance. 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. | Feature Set |
Line_Barriers (Facultatif) | Spécifiez 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 interruptions linéaires. Bien qu'aucune limite ne soit imposée au nombre de lignes que vous pouvez spécifier comme barrières linéaires, le nombre combiné de rues intersectées par toutes les lignes ne peut pas dépasser 500. Vous pouvez définir une propriété de nom pour les interruptions linéaires que vous spécifiez en utilisant les attributs suivants : Name : nom de l'interruption. | Feature Set |
Polygon_Barriers (Facultatif) | Spécifiez 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 interruptions polygonales. Bien qu'aucune limite ne soit imposée au nombre de polygones que vous pouvez spécifier comme barrières polygonales, le nombre combiné de rues intersectées par tous les polygones ne doit 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 des attributs. Vous pouvez spécifier les interruptions polygonales avec les attributs suivants : Name : nom de l'interruption. BarrierType : spécifie si l'interruption restreint complètement la circulation ou adapte le temps ou la distance de déplacement lorsqu'elle est traversée. 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. Ce champ est actif uniquement pour les interruptions à coût proportionné et uniquement si les unités de mesure sont temporelles. La valeur du champ doit être supérieure à zéro. ScaledDistanceFactor : il s'agit du facteur de multiplication de la distance des rues intersectées par l'interruption. Cet attribut est actif uniquement pour les interruptions à coût proportionné et uniquement si les unités de mesure sont basées sur la distance. La valeur de l'attribut doit être supérieure à zéro. | Feature Set |
Use_Hierarchy (Facultatif) | Indiquez si vous souhaitez utiliser une hiérarchie 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 indique qu'il ne faut pas utiliser de hiérarchie. 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 (Facultatif) | Indiquez les 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, mais elles peuvent également servir à les éviter ou les préférer. Par exemple, la restriction Eviter les routes à péage permet d'obtenir un itinéraire qui n'inclut les routes à péage que lorsque cela est strictement inévitable pour accéder à un arrêt. 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. 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é. Voici une liste des restrictions disponibles, ainsi qu'une brève description. L'outil prend en charge les restrictions suivantes :
| String |
Attribute_Parameter_Values (Facultatif) | Spécifiez les valeurs supplémentaires requises par certaines restrictions, telles que le poids d'un véhicule en cas de restriction de poids. Vous pouvez également faire appel au paramètre d'attribut pour spécifier si la restriction interdit, évite ou préfère la circulation sur des routes qui utilisent la restriction. 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. Si vous spécifiez le paramètre 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 : AttributeName : nom de la restriction. ParameterName : nom du paramètre associé à la restriction. Une restriction peut avoir une ou plusieurs valeurs de champs ParameterName selon l'utilisation prévue. ParameterValue : valeur de ParameterName utilisée par l'outil lors de l'évaluation de la restriction. Le paramètre 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 Valeurs des paramètres d'attributs, chaque restriction (affichée sous la forme AttributeName) se voit attribuer une valeur de champ ParameterName "Utilisation d'une 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 "Utilisation d'une 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 Eviter 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 dans certains cas ; en revanche, d'autres préféreront circuler sur des routes à péage, car il leur apparaît plus important d'éviter les embouteillages plutôt que d'économiser sur les coûts de péage. Dans ce dernier cas, vous devez choisir 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 |
Route_Shape (Facultatif) | Spécifiez le type des entités itinéraires générées par l'outil. Le paramètre peut être spécifié avec une des valeurs suivantes :
Lorsque le paramètre Forme d'itinéraire est défini sur Géométrie réelle ou sur Géométrie réelle avec mesures, vous pouvez contrôler la généralisation de la forme d'itinéraire en utilisant la valeur appropriée pour le paramètre Tolérance de simplification des lignes d'itinéraires. Quelle que soit la valeur que vous choisissez pour le paramètre Forme d'itinéraire, le meilleur itinéraire est toujours déterminé en minimisant le temps ou la distance du trajet, sans jamais utiliser la distance en ligne droite entre les arrêts. Cela signifie que seules les formes d'itinéraire sont différentes, pas les rues sous-jacentes dans lesquelles effectuer la recherche d'itinéraire. | String |
Route_Line_Simplification_Tolerance (Facultatif) | Indiquez dans quelle proportion vous souhaitez simplifier la géométrie des lignes en sortie pour les itinéraires, les feuilles de route et les tronçons d'itinéraires. L'outil ignore ce paramètre si le paramètre Forme d'itinéraire n'est pas défini sur Géométrie réelle. La simplification conserve les points critiques sur un itinéraire, comme les virages dans les intersections, pour définir la forme globale de l'itinéraire et supprimer d'autres points. La distance de simplification que vous spécifiez est le décalage maximal autorisé de la ligne simplifiée par rapport à la ligne d'origine. La simplification d'une ligne diminue le nombre de sommets qui appartiennent à la géométrie de l'itinéraire. Cette opération améliore le temps d'exécution de l'outil. | Linear unit |
Populate_Route_Edges (Facultatif) | Spécifiez si l'outil doit générer des tronçons pour chaque itinéraire. Les tronçons d'itinéraires représentent des rues individuelles ou d'autres entités similaires qui sont traversées par un itinéraire. La couche des tronçons d'itinéraires en sortie est généralement utilisée pour voir quelles rues ou chemins sont fréquentés le plus souvent ou le moins souvent par les itinéraires générés.
| Boolean |
Populate_Directions (Facultatif) | Spécifiez si l'outil doit générer des feuilles de route pour chaque itinéraire.
| Boolean |
Directions_Language (Facultatif) | Spécifiez la langue à utiliser lors de la génération des feuilles de route. Ce paramètre est utilisé uniquement lorsque le paramètre Charger les feuilles de route est activé ou défini sur True. La valeur du paramètre peut être spécifiée avec l'un des codes de langue de deux ou cinq caractères suivants :
Si un code de langue non pris en charge est spécifié, l'outil renvoie la feuille de route dans la langue par défaut, à savoir l'anglais. | String |
Directions_Distance_Units (Facultatif) |
Spécifiez les unités dans lesquelles afficher la distance de trajet dans les feuilles de route. Ce paramètre est utilisé uniquement lorsque le paramètre Populate Directions est activé ou défini sur True.
| String |
Directions_Style_Name (Facultatif) | Spécifiez le nom du style de mise en forme pour la feuille de route. Ce paramètre est utilisé uniquement lorsque le paramètre Populate Directions est activé ou défini sur True. Le paramètre peut être spécifié avec les valeurs suivantes :
| String |
Travel_Mode (Facultatif) | Indiquez le 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 mieux refléter les workflows de votre organisation. Vous devez indiquer le nom d'un mode de déplacement pris en charge par votre organisation. Pour obtenir la liste des noms des modes de déplacements pris en charge, utilisez la connexion au serveur SIG que vous avez utilisée pour accéder à cet outil, puis dans la boîte à outils Utilitaires, exécutez GetTravelModes. L'outil GetTravelModes ajoute une table nommée Supported Travel Modes (modes de déplacement pris en charge) à l'application. N'importe quelle valeur du champ Nom du mode de déplacement dans la table des modes de déplacement pris en charge peut être spécifiée en entrée. Vous pouvez également indiquer la valeur du champ Paramètres de mode de déplacement en entrée. L'exécution de l'outil est ainsi accélérée, 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 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. Cette opération vous permet d'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, vous devez collaborer 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 réexécuter l'analyse avec les mêmes paramètres. | String |
Impedance (Facultatif) | Spécifiez 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. La distance à parcourir est 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.) Le temps de trajet peut également être une impédance : une voiture peut mettre une minute à parcourir un mile 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. Choisissez une des valeurs d'impédance suivantes :
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 Temps de trajet, Durée du trajet pour camions ou Durée du trajet à pied, le paramètre Unités de mesure doit être défini sur une valeur temporelle. Si vous choisissez Distance à parcourir pour Impédance, le paramètre Unités de mesure doit être basé sur la distance. | String |
Time_Zone_for_Time_Windows (Facultatif) | Spécifie le fuseau horaire pour les valeurs de la fenêtre horaire sur des arrêts. Les fenêtres horaires sont spécifiées dans le cadre des champs TimeWindowStart et TimeWindowEnd sur des arrêts. Ce paramètre est applicable uniquement lorsque le paramètre Charger les feuilles de route est activé (ou défini sur True). Le paramètre peut être spécifié avec une des valeurs suivantes :
| |
Save_Output_Network_Analysis_Layer (Facultatif) | Précisez si l'outil doit enregistrer les paramètres de l’analyse en tant que 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 qu’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) | Spécifiez 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 d'Esri une liste des paramètres de remplacement pris en charge, ainsi que leurs valeurs acceptables, pour chaque solveur. | string |
Save_Route_Data (Facultatif) | Indiquez si la sortie inclut un fichier zip contenant une géodatabase fichier qui renferme les entrées et sorties de l'analyse dans un format qui peut servir à partager les couches d'itinéraires avec ArcGIS Online ou Portal for ArcGIS.
| Boolean |
Exemple de code
Exemple d'utilisation de l'outil FindRoutes
Le script Python ci-dessous illustre l'utilisation de l'outil FindRoutes dans un script.
import arcpy
import time
import datetime
import sys
username = "<your user name>"
password = "<your password>"
FindRoute_service = "http://logistics.arcgis.com/arcgis/services;World/Route;{0};{1}".format(username, password)
#Add the geoprocessing service as a toolbox. Use an alias when importing
arcpy.ImportToolbox(FindRoute_service, "agol")
#Set the variables to call the tool
stops = r'C:/data/Inputs.gdb/Stops'
output_routes = r'C:/data/Results.gdb/Routes'
output_route_edges = r'C:/data/Results.gdb/Route_Edges'
output_directions = r'C:/data/Results.gdb/Directions'
output_stops = r'C:/data/Results.gdb/Stops'
#Call the tool
result = arcpy.agol.FindRoutes(stops, "Minutes",
Reorder_Stops_to_Find_Optimal_Routes=True,
Preserve_Terminal_Stops="Preserve First",
Time_of_Day=datetime.datetime(2014, 2, 10, 8, 0, 0))
#Check the status of the result object every 0.5 seconds
#until it has a value of 4(succeeded) or greater
while result.status < 4:
time.sleep(0.5)
#print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
print "An error occured when running the tool"
print result.getMessages(2)
sys.exit(2)
elif result_severity == 1:
print "Warnings were returned when running the tool"
print result.getMessages(1)
#Get the output routes and save to a local geodatabase
result.getOutput(1).save(output_routes)
result.getOutput(2).save(output_route_edges)
result.getOutput(3).save(output_directions)
result.getOutput(4).save(output_stops)
Environnements
Cet outil n'utilise pas d'environnement de géotraitement.