Générer des zones de desserte (Network Analyst)

Niveau de licence :De baseStandardAvancé

Récapitulatif

Cet outil permet de créer une couche d'analyse de réseau de zone de desserte, de définir les propriétés d'analyse et de résoudre cette dernière. Il est idéal pour définir un service de géotraitement de zone de desserte sur le Web. Une zone de desserte de réseau est une région qui englobe toutes les rues auxquelles accessibles à une distance ou selon un temps de trajet donnés à partir d'une ou de plusieurs ressources.

Les zones de desserte servent généralement à visualiser et à mesurer l'accessibilité. Par exemple, un polygone de temps de conduite de trois minutes autour d'une épicerie permet de déterminer les résidents susceptibles de rejoindre le magasin en trois minutes et donc d'y faire leurs courses.

RemarqueRemarque :

Bien que similaires, les outils Générer des zones de desserte et Générer une couche de zones de desserte ont été conçus à des fins différentes. Faites appel à l'outil Générer des zones de desserte si vous configurez un service de géotraitement. Cela permettra de simplifier le processus de configuration. Sinon, utilisez Générer une couche de zones de desserte. En outre, utilisez Générer une couche de zones de desserte si vous devez générer des lignes de zone de desserte ; l'option Générer des zones de desserte ne permet pas de générer ces lignes.

Pour créer un service de géotraitement de zone de desserte avec Générer des zones de desserte, il vous suffit de configurer un outil et de le publier directement en tant que service. En revanche, vous devez créer un modèle avec Générer une couche de zones de desserte, le connecter à d'autres outils et le publier pour créer un service de géotraitement de zone de desserte.

Reportez-vous à la rubrique Exemple de service de géotraitement : Polygones de temps de conduite pour apprendre à définir un service de polygones de temps de conduite à l'aide de données de didacticiel.

Utilisation

Syntaxe

GenerateServiceAreas_na (Facilities, Break_Values, Break_Units, Network_Dataset, Service_Areas, {Travel_Direction}, {Time_of_Day}, {UTurn_Policy}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Time_Attribute}, {Time_Attribute_Units}, {Distance_Attribute}, {Distance_Attribute_Units}, {Use_Hierarchy_in_Analysis}, {Restrictions}, {Attribute_Parameter_Values}, {Maximum_Snap_Tolerance}, {Exclude_Restricted_Portions_of_the_Network}, {Feature_Locator_WHERE_Clause}, {Polygons_for_Multiple_Facilities}, {Polygon_Overlap_Type}, {Detailed_Polygons}, {Polygon_Trim_Distance}, {Polygon_Simplification_Tolerance}, {Maximum_Facilities}, {Maximum_Number_of_Breaks}, {Maximum_Features_Affected_by_Point_Barriers}, {Maximum_Features_Affected_by_Line_Barriers}, {Maximum_Features_Affected_by_Polygon_Barriers}, {Maximum_Break_Time_Value}, {Maximum_Break_Distance_Value}, {Force_Hierarchy_beyond_Break_Time_Value}, {Force_Hierarchy_beyond_Break_Distance_Value})
ParamètreExplicationType de données
Facilities

Ressources autour desquelles les zones de desserte sont générées.

Le jeu d'entités de ressources peut être défini par trois attributs :

ObjectID :

Champ d'ID géré par le système.

Forme :

Champ de géométrie qui indique l'emplacement géographique de l'objet d'analyse de réseau.

Name :

Nom de la ressource. Si le nom n'est pas spécifié (champ vide), un nom est automatiquement généré lors de l'analyse.

Feature Set
Break_Values

Spécifie la taille et le nombre de polygones de zones de desserte à générer pour chaque ressource. Les unités sont déterminées par la valeurs Unités des bornes.

Au cours de l'exécution de l'outil Générer des zones de desserte, une interaction notable se produit entre les paramètres suivants : Valeurs des bornes, Unités des bornes et Attribut de temps ou Attribut de distance. Lorsqu'ils sont exécutés simultanément, les paramètres Valeurs des bornes et Unités des bornes définissent l'étendue (en termes de distance ou de temps) de la zone de desserte autour des ressources. Chacun des paramètres Attribut de temps et Attribut de distance définit un attribut de coût de réseau. Toutefois, un seul de ces deux attributs de coût est utilisé, et celui que le solveur choisit correspond à la valeur Unités des bornes. Ainsi, lorsque vous spécifiez une valeur Unités des bornes basée sur le temps, comme des secondes ou des minutes, l'outil procède à l'analyse en faisant appel à l'attribut de coût défini dans le paramètre Attribut de temps. Lorsque vous spécifiez une valeur Unités des bornes basée sur la distance, comme des kilomètres ou des milles, l'outil fait appel à l'attribut de coût défini dans le paramètre Attribut de distance.

Vous pouvez configurer plusieurs bornes de polygones pour créer des zones de desserte concentriques par ressource. Par exemple, pour rechercher des zones de desserte à 2, 3 et 5 kilomètres pour chaque ressource, entrez "2 3 5" en séparant les valeurs par un espace. Définissez Unités des bornes sur Kilomètres et assurez-vous que vous avez choisi un attribut de réseau basé sur la distance pour le paramètre Attribut de distance.

String
Break_Units

Unités du paramètre Valeurs des bornes.

  • Minutes
  • Heures
  • Jours
  • Secondes
  • Milles
  • Kilomètres
  • Mètres
  • Pieds
  • Milles nautiques
  • Yards

L'outil Générer des zones de desserte choisit d'utiliser l'attribut de coût de réseau spécifié dans le paramètre Attribut de temps ou Attribut de distance en fonction des unités que vous spécifiez ici (unités basées sur le temps ou sur la distance).

L'outil effectue la conversion d'unités nécessaire lorsque la valeur Unités des bornes diffère des unités de l'attribut de coût de temps ou de distance correspondant.

String
Network_Dataset

Jeu d'entités réseau sur lequel le calcul de zones de dessertes sera effectué. Le jeu de données réseau requiert au moins un attribut de coût basé sur le temps et un autre basé sur la distance.

Network Dataset Layer
Service_Areas

Espace de travail en sortie et nom des entités en sortie. Cet espace de travail doit déjà exister. L'espace de travail en sortie par défaut est in_memory.

Feature Class
Travel_Direction
(Facultatif)

Indiquez si le trajet utilisé pour générer les polygones de la zone de desserte s'effectue depuis ou vers les ressources.

  • TRAVEL_FROMLa zone de desserte est générée depuis les ressources.
  • TRAVEL_TOLa zone de desserte est créée dans la direction des ressources.

La direction du trajet peut changer la forme des polygones lorsque les impédances sont différentes de chaque côté d'une rue ou en présence de voies à sens unique. La direction à sélectionner dépend de la nature de votre analyse des zones de desserte. La zone de desserte d'un livreur de pizzas, par exemple, doit être créée depuis la ressource, alors que la zone de desserte d'un hôpital doit être créée vers la ressource, car le patient consacre un temps de trajet critique pour se rendre à l'hôpital.

String
Time_of_Day
(Facultatif)

Heure de départ ou d'arrivée aux ressources. L'interprétation de cette valeur varie selon que le trajet se rapproche ou s'éloigne des ressources.

  • Elle représente l'heure de départ si la direction du trajet est définie sur TRAVEL_FROM.
  • Elle représente l'heure d'arrivée si la direction du trajet est définie sur TRAVEL_TO.

Votre jeu de données réseau doit inclure des données de trafic pour ce paramètre.

En répétant la même analyse avec des valeurs différentes du paramètre Heure, vous pouvez voir l'évolution de la portée d'une ressource en fonction de l'heure. Par exemple, la zone de desserte de 5 minutes autour d'une caserne de pompiers peut être étendue tôt le matin, diminuer aux heures de pointe matinales, augmenter en fin de matinée, et ainsi de suite tout au long de la journée.

Date
UTurn_Policy
(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 à 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.

  • ALLOW_UTURNSLes demi-tours sont autorisés aux jonctions comportant un nombre quelconque de tronçons connectés. Il s'agit de la valeur par défaut.
  • NO_UTURNSLes demi-tours sont interdits à toutes les jonctions, indépendamment de la valence de jonction. Notez toutefois que les demi-tours restent autorisés aux emplacements réseau même lorsque ce paramètre est sélectionné ; en revanche, vous pouvez configurer la propriété CurbApproach des emplacements réseau individuels pour y interdire les demi-tours également.
  • ALLOW_DEAD_ENDS_ONLYLes demi-tours sont interdits au niveau de toutes les jonctions, sauf celles ayant un seul tronçon adjacent (voie sans issue).
  • ALLOW_DEAD_ENDS_AND_INTERSECTIONS_ONLYLes demi-tours sont interdits aux jonctions où deux tronçons adjacents se rencontrent, mais sont autorisés aux intersections (jonctions avec au moins trois tronçons adjacents) et aux voies sans issue (jonctions avec exactement un tronçon adjacent). Souvent, les réseaux comportent des jonctions superflues au milieu de segments de route. Cette option empêche des véhicules de faire des demi-tours à ces emplacements.
AstuceAstuce:

Si la définition de votre règle de demi-tour n'est pas suffisamment précise, envisagez d'ajouter un évaluateur de délai de tournant global à un attribut de coût de réseau ou de modifier ses paramètres, le cas échéant, en veillant tout particulièrement à la configuration des tournants inversés. Pensez également à définir la propriété CurbApproach de vos localisations réseau.

String
Point_Barriers
(Facultatif)

Spécifie les interruptions ponctuelles qui sont divisées en deux types : les interruptions ponctuelles de restriction et les interruptions ponctuelles à coût ajouté. Elles restreignent temporairement la traversée de points sur le réseau ou leur ajoutent une impédance. Les interruptions ponctuelles sont définies par un jeu d'entités, et les valeurs attributaires que vous spécifiez pour les entités ponctuelles déterminent s'il s'agit d'interruptions de restriction ou d'interruptions à coût ajouté. Les champs de la table attributaire sont répertoriés et décrits ci-dessous.

ObjectID :

Champ d'ID géré par le système.

Forme :

Champ de géométrie qui indique l'emplacement géographique de l'objet d'analyse de réseau.

Name :

Nom de l'interruption.

BarrierType :

Spécifie si l'interruption restreint entièrement le trajet ou ajoute un coût de parcours correspondant. Deux options sont disponibles :

  • Restriction (0) : interdit le passage à travers l'interruption. Il s'agit de la valeur par défaut.
  • Coût ajouté (2) : lorsque l'interruption est traversée, le coût du réseau augmente de la valeur spécifiée dans les champs Additional_Time et AdditionalDistance.

Utilisez la valeur 0 pour l'option Restriction et 2 pour Coût ajouté.

AdditionalCost :

AdditionalCost indique la quantité d'impédance ajoutée lorsqu'une zone de desserte franchit l'interruption.

L'unité de cette valeur de champ est identique aux unités spécifiées pour Unités des bornes.

Feature Set
Line_Barriers
(Facultatif)

Spécifie les interruptions linéaires qui restreignent temporairement leur passage. Les interruptions linéaires sont définies par un jeu d'entités. Les champs de la table attributaire sont répertoriés et décrits ci-dessous.

ObjectID :

Champ d'ID géré par le système.

Forme :

Champ de géométrie qui indique l'emplacement géographique de l'objet d'analyse de réseau.

Name :

Nom de l'interruption.

Feature Set
Polygon_Barriers
(Facultatif)

Spécifie les interruptions polygonales qui sont divisées en deux types : les interruptions polygonales de restriction et les interruptions polygonales à coût proportionné. Elles restreignent temporairement la traversée des parties du réseau qu'elles couvrent ou proportionnent leur impédance. Les interruptions polygonales sont définies par un jeu d'entités, et les valeurs attributaires que vous spécifiez pour les entités surfaciques déterminent s'il s'agit d'interruptions de restriction ou d'interruptions à coût proportionné. Les champs de la table attributaire sont répertoriés et décrits ci-dessous.

ObjectID :

Champ d'ID géré par le système.

Forme :

Champ de géométrie qui indique l'emplacement géographique de l'objet d'analyse de réseau.

Name :

Nom de l'interruption.

BarrierType :

Spécifie si la barrière restreint entièrement le trajet ou proportionne son coût de parcours correspondant. Deux options sont disponibles :

  • Restriction (0) - Interdit le parcours à travers toute partie de la barrière. Il s'agit de la valeur par défaut.
  • Coût proportionné (1) - Proportionne l'impédance des tronçons sous-jacents en les multipliant par la valeur de la propriété ScaledCostFactor. Si les tronçons sont partiellement couverts par la barrière, l'impédance est répartie et multipliée.

Utilisez la valeur 0 pour l'option Restriction et 1 pour Coût proportionné.

ScaledCostFactor :

ScaledCostFactor indique la quantité d'impédance multipliée lorsqu'une zone de desserte franchit l'interruption.

Feature Set
Time_Attribute
(Facultatif)

Définit l'attribut de coût de réseau à utiliser lorsque la valeur Unités des bornes est une unité de temps.

L'outil effectue la conversion des unités de temps nécessaire lorsque la valeur Unités des bornes diffère des unités de l'attribut de coût défini ici. En d'autres termes, les unités de temps des bornes et l'attribut de coût de réseau ne doivent pas nécessairement être identiques.

String
Time_Attribute_Units
(Facultatif)

Unités de l'attribut de coût de réseau spécifiées par le paramètre Attribut de temps. Il s'agit simplement d'un paramètre d'information qui ne peut pas être modifié sans mise à jour directe du jeu de données réseau. Il est également inutile de le modifier, car les conversions entre les unités de valeurs des bornes et l'attribut de coût sont gérées à votre place.

String
Distance_Attribute
(Facultatif)

Définit l'attribut de coût de réseau à utiliser lorsque la valeur Unités des bornes est une unité de distance.

L'outil effectue la conversion des unités de distance nécessaire lorsque la valeur Unités des bornes diffère des unités de l'attribut de coût défini ici. En d'autres termes, les unités de distance des bornes et l'attribut de coût de réseau ne doivent pas nécessairement être identiques.

String
Distance_Attribute_Units
(Facultatif)

Unités de l'attribut de coût de réseau spécifiées par le paramètre Attribut de distance. Il s'agit simplement d'un paramètre d'information qui ne peut pas être modifié sans mise à jour directe du jeu de données réseau. Il est également inutile de le modifier, car les conversions entre les unités de valeurs des bornes et l'attribut de coût sont gérées à votre place.

String
Use_Hierarchy_in_Analysis
(Facultatif)
  • USE_HIERARCHY Use the hierarchy attribute for the analysis. Using a hierarchy results in the solver preferring higher-order edges to lower-order edges. Hierarchical solves are faster, and they can be used to simulate the preference of a driver who chooses to travel on freeways over local roads when possible—even if that means a longer trip. This option is valid only if the input network dataset has a hierarchy attribute.
  • NO_HIERARCHYDo not use the hierarchy attribute for the analysis. Not using a hierarchy yields a service area measured along all edges of the network dataset regardless of hierarchy level.

The parameter is not used if a hierarchy attribute is not defined on the network dataset used to perform the analysis. In such cases, use "#" as the parameter value.

Boolean
Restrictions
(Facultatif)

Indique quels attributs de restriction réseau sont respectés lors de l'analyse.

String
Attribute_Parameter_Values
(Facultatif)

Spécifie les valeurs de paramètre des attributs de réseau possédant des paramètres. Le jeu d'enregistrements comporte deux colonnes qui permettent d'identifier les paramètres de manière unique et une autre colonne qui spécifie la valeur du paramètre.

Le jeu d'enregistrements des valeurs de paramètre est associé à des attributs. Les champs de la table attributaire sont répertoriés et décrits ci-dessous.

ObjectID :

Champ d'ID géré par le système.

AttributeName :

Nom de l'attribut de réseau dont le paramètre d'attribut est défini par la ligne de table.

ParameterName :

Nom du paramètre d'attribut dont la valeur est définie par la ligne de table. (Les paramètres de type Objet ne peuvent pas être mis à jour à l'aide de cet outil.)

ParameterValue :

Valeur à utiliser pour le paramètre d'attribut. Si aucune valeur n'est spécifiée, le paramètre d'attribut est défini comme étant Null.

Record Set
Maximum_Snap_Tolerance
(Facultatif)

La tolérance de capture maximale spécifie la distance maximale recherchée par ArcGIS Network Analyst pour placer ou replacer un point sur le réseau. Network Analyst recherche des tronçons ou jonctions appropriés et capture le point sur l'élément le plus proche. Si aucun emplacement approprié n'est trouvé dans la tolérance de capture maximale, l'objet est marqué comme étant non localisé.

Linear unit
Exclude_Restricted_Portions_of_the_Network
(Facultatif)
  • EXCLUDELes ressources sont placées uniquement sur les parties traversables du réseau. Ainsi, vous ne risquez pas de les placer sur des éléments inaccessibles pendant l'analyse du fait de restrictions ou d'interruptions. A noter que si cette option n'était pas sélectionnée, les ressources seraient encore plus éloignées de l'emplacement prévu.
  • INCLUDELes ressources peuvent être placées sur un élément quelconque du réseau ; toutefois, celles qui se trouvent sur des éléments restreints ne peuvent pas être utilisées lors de l'analyse.
Boolean
Feature_Locator_WHERE_Clause
(Facultatif)

Expression SQL utilisée pour sélectionner un sous-ensemble d'entités source qui permet de restreindre les éléments de réseau sur lesquels les ressources peuvent être placées. La syntaxe de ce paramètre comprend deux parties : la première est le nom de la classe d'entités source (suivi d'un espace) et la seconde est l'expression SQL. Pour écrire une expression SQL pour deux classes d'entités source ou plus, séparez-les par un point-virgule.

Pour éviter la présence de ressources sur des autoroutes à accès limité, par exemple, écrivez une expression SQL telle que la suivante pour exclure ces entités source : "Streets" "FUNC_CLASS not in('1', '2')".

A noter que les interruptions ignorent la clause WHERE du localisateur d'entités lors du chargement.

String
Polygons_for_Multiple_Facilities
(Facultatif)

Indiquez comment les polygones de zone de desserte sont générés lorsque plusieurs ressources sont présentes dans l'analyse.

  • NO_MERGECrée des polygones individuels pour chaque ressource. Les polygones peuvent se superposer.
  • NO_OVERLAP Crée des polygones individuels pour qu'aucun polygone d'une ressource ne puisse chevaucher les polygones d'autres ressources. En outre, une portion du réseau peut uniquement être couverte par la zone de desserte de la ressource la plus proche.
  • MERGE Crée et combine les polygones de différentes ressources partageant la même valeur de borne.
String
Polygon_Overlap_Type
(Facultatif)

Précise l'option de création de polygones de zone de desserte concentriques sous forme de disques ou d'anneaux. Cette option s'applique uniquement lorsque plusieurs valeurs de bornes sont spécifiées pour les ressources.

  • RINGSN'inclut pas la zone contenant les plus petites bornes. Ils créent des polygones entre des bornes consécutives. Utilisez cette option si vous souhaitez définir la zone d'une borne à une autre. Par exemple, si vous créez des zones de desserte de 5 et 10 minutes, le polygone de la zone de desserte de 10 minutes exclura la zone située sous le polygone de la zone de desserte de 5 minutes.
  • DISKS Crée des polygones entre la ressource et la borne. Par exemple, si vous créez des zones de desserte de 5 et 10 minutes, le polygone de la zone de desserte de 10 minutes inclura la zone située sous le polygone de la zone de desserte de 5 minutes.
String
Detailed_Polygons
(Facultatif)

Permet de créer des polygones généralisés ou détaillés.

  • SIMPLE_POLYSCrée des polygones généralisés qui sont générés rapidement et offrent une assez bonne précision. Il s'agit de l'option par défaut.
  • DETAILED_POLYSCrée des polygones détaillés, qui modélisent avec précision les lignes de zone de desserte et peuvent contenir des îlots de zones non atteintes. La création de polygones détaillés prend beaucoup plus de temps que la création de polygones généralisés. Cette option n'est pas prise en charge lors de l'utilisation de la hiérarchie.
Boolean
Polygon_Trim_Distance
(Facultatif)

Spécifie la distance au sein de laquelle les polygones de zone de desserte sont tronqués. Cette option s'avère utile lorsque vos données sont rares et que vous ne voulez pas que la zone de desserte couvre de larges surfaces sur lesquelles il n'y a aucune entité.

Si ce paramètre est défini par la valeur 0 si aucune valeur n'est spécifiée, les polygones de la zone de desserte ne sont pas tronqués. La valeur du paramètre est ignorée lors de l'utilisation de la hiérarchie.

Linear unit
Polygon_Simplification_Tolerance
(Facultatif)

Indique dans quelle proportion vous souhaitez simplifier la géométrie du polygone.

La simplification conserve les points critiques d'un polygone pour définir sa forme globale et supprime d'autres points. La distance de simplification que vous spécifiez est le décalage maximal autorisé du polygone simplifié par rapport au polygone d'origine. La simplification d'un polygone diminue le nombre de sommets et tend à réduire la durée d'affichage.

Linear unit
Maximum_Facilities
(Facultatif)

Limite le nombre de ressources pouvant être ajoutées à l'analyse de la zone de desserte.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Long
Maximum_Number_of_Breaks
(Facultatif)

Limite le nombre de bornes pouvant être ajoutées à l'analyse de la zone de desserte.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Long
Maximum_Features_Affected_by_Point_Barriers
(Facultatif)

Limite le nombre d'entités pouvant être affectées par des interruptions ponctuelles.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Long
Maximum_Features_Affected_by_Line_Barriers
(Facultatif)

Limite le nombre d'entités pouvant être affectées par des interruptions linéaires.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Long
Maximum_Features_Affected_by_Polygon_Barriers
(Facultatif)

Limite le nombre d'entités pouvant être affectées par des interruptions polygonales.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Long
Maximum_Break_Time_Value
(Facultatif)

Détermine la valeur maximale du paramètre Valeur des bornes lors de l'analyse des zones de desserte basées sur le temps.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Double
Maximum_Break_Distance_Value
(Facultatif)

Détermine la valeur maximale du paramètre Valeur des bornes lors de l'analyse des zones de desserte basées sur la distance.

Ce paramètre permet de contrôler la charge de traitement lors de l'analyse. Par exemple, vous pouvez attribuer une valeur faible à ce paramètre pour une version gratuite du service que vous créez et utiliser une valeur plus élevée pour une version payante du service.

Une valeur Null indique qu'il n'existe pas de limite.

Double
Force_Hierarchy_beyond_Break_Time_Value
(Facultatif)

Indique la valeur de borne au-delà de laquelle le solveur force la hiérarchie même si celle-ci n'a pas été activée lors de l'analyse des zones de desserte basées sur le temps.

L'analyse des zones de desserte avec des valeurs de bornes élevées lors de l'utilisation de la hiérarchie du réseau entraîne généralement moins de traitement que l'analyse des mêmes zones de desserte sans la hiérarchie. Ce paramètre permet de contrôler la charge de traitement lors de l'analyse.

Une valeur Null indique que la hiérarchie ne sera jamais activée ; la valeur du paramètre Utiliser la hiérarchie lors de l’analyse sera toujours respectée. Si le jeu de données réseau en entrée ne prend pas la hiérarchie en charge, une erreur se produit lorsque vous spécifiez une valeur pour ce paramètre. Dans ce cas, vous devez utiliser une valeur Null.

Double
Force_Hierarchy_beyond_Break_Distance_Value
(Facultatif)

Indique la valeur de borne au-delà de laquelle le solveur force la hiérarchie même si celle-ci n'a pas été activée lors de l'analyse des zones de desserte basées sur la distance.

L'analyse des zones de desserte avec des valeurs de bornes élevées lors de l'utilisation de la hiérarchie du réseau entraîne généralement moins de traitement que l'analyse des mêmes zones de desserte sans la hiérarchie. Ce paramètre permet de contrôler la charge de traitement lors de l'analyse.

Une valeur Null indique que la hiérarchie ne sera jamais activée ; la valeur du paramètre Utiliser la hiérarchie lors de l’analyse sera toujours respectée. Si le jeu de données réseau en entrée ne prend pas la hiérarchie en charge, une erreur se produit lorsque vous spécifiez une valeur pour ce paramètre. Dans ce cas, vous devez utiliser une valeur Null.

Double

Exemple de code

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

Exécutez l'outil avec les paramètres requis à partir de la fenêtre Python.

import arcpy
facilities = arcpy.FeatureSet()
facilities.load("FireStations")
arcpy.na.GenerateServiceAreas(facilities, "1 2 3", "Minutes", "Streets_ND",
                              "in_memory\\FireStationServiceAreas")
Exemple 2 d'utilisation de l'outil GenerateServiceAreas (workflow)

Le script Python autonome suivant illustre l'utilisation de l'outil GenerateServiceAreas afin de déterminer le temps nécessaire pour rejoindre un magasin. Il indique comment générer une zone de desserte à 5 minutes autour de l'emplacement d'un magasin à différentes heures de la journée. Ce type d'analyse peut permettre à une pizzeria, par exemple, de voir comment la zone accessible en 5 minutes à partir du magasin change en fonction des conditions de circulation.

# Name: GenerateServiceAreas_Workflow.py
# Description: Generate a 5 minute service area around a store location at
#              different times in a day. Such analysis can be useful, for example
#              for a pizza store, to see how the area that can be reached within
#              5 minutes from the store changes based on the current traffic
#              conditions.
# Requirements: Network Analyst Extension 

#Import system modules
import arcpy
from arcpy import env
import datetime

try:
    #Check out the Network Analyst extension license
    arcpy.CheckOutExtension("Network")

    #Set environment settings
    env.workspace = "C:/data/SanFrancisco.gdb"
    env.overwriteOutput = True
    
    #Set local variables
    inNetworkDataset = "Transportation/Streets_ND"
    impedanceAttribute = "TravelTime"
    breakValues = "5"
    breakUnits = "Minutes"
    inFacilities = "Analysis/ExistingStore"
    outGeodatabase = "C:/data/output/ServiceAreaOutput.gdb"
    serviceArea = "in_memory\\ServiceAreas"
    dateFieldName = "StartTime"
    nameField = "Name"
    #use today at 8 AM as the start time and then increment it by one hour
    startTime = datetime.datetime(1899,12,30,8,0,0) 
    
    #Create a new feature set with same schema as Facilities parameter in
    #Generate Service Areas tool. Load the feature from the ExistingStore
    #feature class in the feature set
    facilities = arcpy.GetParameterValue("GenerateServiceAreas_na",0)
    facilities.load(inFacilities)
    
    #Create an empty feature class with same spatial reference as the 
    #network dataset and a Date field called StartTime and a text field called Name
    outServiceAreas = arcpy.management.CreateFeatureclass(outGeodatabase, "ServiceAreas",
                                                          "POLYGON","","","",
                                                          inNetworkDataset).getOutput(0)
    arcpy.management.AddField(outServiceAreas, dateFieldName, "DATE")
    arcpy.management.AddField(outServiceAreas, nameField, "TEXT")
    
    #Open an insert cursor on the feature class to add new polygons
    cursor = arcpy.da.InsertCursor(outServiceAreas, ("SHAPE@", nameField,
                                                     dateFieldName))
    
    #Geneate a 5 minute service area around the store at every one hour interval
    #from 8 AM to 8 PM. Copy the output service area to a new feature class
    for i in range(1,14):
        timeFormat = startTime.time().strftime("%I %p")
        print "Generating {0} {1} service area at {2}".format(breakValues,breakUnits,
                                                              timeFormat)
        arcpy.na.GenerateServiceAreas(facilities,breakValues,breakUnits,
                                      inNetworkDataset, serviceArea, "TRAVEL_FROM",
                                      startTime, Time_Attribute=impedanceAttribute)
        #Get the shape from the output service area so that it can be inserted
        #in the feature class
        with arcpy.da.SearchCursor(serviceArea,("SHAPE@", nameField)) as inputRows:
            row = inputRows.next()
            cursor.insertRow((row[0],row[1],startTime))
        startTime = startTime + datetime.timedelta(seconds=3600)
    del cursor
    
    print "Script completed successfully"

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic : Requis ArcGIS Network Analyst
ArcGIS for Desktop Standard : Requis ArcGIS Network Analyst
ArcGIS for Desktop Advanced : Requis ArcGIS Network Analyst
9/12/2013