Résumé
Crée une classe d'entités ponctuelles contenant des données liées aux incidents de trafic dynamique provenant d'un service Web. Les incidents de circulation sont des événements tels que les travaux de voirie et les accidents.
Utilisation
Vous avez besoin d'un compte auprès de l'un des fournisseurs de données répertoriés dans le paramètre Fournisseur pour que cet outil puisse télécharger les données de trafic.
Si vous exécutez cet outil plusieurs fois à l'aide du même espace de travail en sortie et nom de classe d'entités, toutes les entités précédentes sont supprimées avant la création de nouvelles.
Syntaxe
UpdateTrafficIncidents(provider, user_name, password, regions, incidents_feature_class_location, incidents_feature_class_name, {time_zone_boundaries}, {time_zone_id_field})
Paramètre | Explication | Type de données |
provider | Choisissez le nom du fournisseur de données d'incidents de trafic et la région.
| String |
user_name | Nom d'utilisateur autorisé par le fournisseur de données pour télécharger les incidents. L'outil ne s'exécute pas si le nom d'utilisateur ne peut pas être authentifié par le fournisseur de données. Si le paramètre Fournisseur est TomTom Amérique du Nord ou TomTom Europe, utilisez APIKEY comme valeur de paramètre. | String |
password | Mot de passe fourni par le fournisseur de données pour télécharger les données d'incidents de trafic. L'outil ne s'exécute pas si le mot de passe ne peut pas être authentifié par le fournisseur de données. | Encrypted String |
regions [regions,...] | Saisissez les régions pour lesquelles vous souhaitez télécharger les données d'incidents de trafic. Pour télécharger toutes les régions disponibles, saisissez "#". | String |
incidents_feature_class_location | Géodatabase dans laquelle la classe d'entités en sortie sera créée. Cet espace de travail doit déjà exister. | Workspace; Feature Dataset |
incidents_feature_class_name | Nom de la classe d'entités à créer. Si l'outil a déjà été exécuté et que la classe d'entités existe déjà, l'outil supprime les entités existantes et en crée de nouvelles selon les données d'incidents les plus récentes. | String |
time_zone_boundaries (Facultatif) | Classe d'entités surfaciques dont les entités délimitent les fuseaux horaires. Lorsque cette classe d'entités est fournie, les incidents survenant dans certains fuseaux horaire peuvent faire l'objet de rapports en heure locale, pas seulement en heure UTC. Si aucune classe d'entités de limites de fuseaux horaires n'est fournie, les heures de début et de fin d'incidents peuvent faire l'objet de rapports uniquement en heure UTC (Temps universel coordonné) ; tous les champs en heure locale ont des valeurs nulles attribuées. De temps en temps, certains incidents provenant de flux de circulation, tels que les événements météorologiques, ont des géométries nulles. Dans ce cas, les champs d’heure locale ont des valeurs nulles même si la classe d’entités de limites de fuseaux horaires est fournie. Vous devez définir la propriété de champ d'ID de fuseau horaire si vous fournissez une classe d'entités de limites de fuseau horaire. | Feature Layer |
time_zone_id_field (Facultatif) | Champ de texte, provenant de la classe d’entités de limites de fuseaux horaires, qui contient les identifiants de fuseau horaire Windows. Les valeurs contenues dans ce champ correspondent aux clés de fuseau horaire dans le Registre de Windows. Vous pouvez suivre des procédures similaires à celles présentées dans la rubrique Ajout de fuseaux horaires à un jeu de données réseau pour trouver les noms de fuseaux horaires correspondant aux polygones dans votre classe d'entités en entrée. | Field |
Sortie dérivée
Nom | Explication | Type de données |
traffic_incidents | Incidents de la circulation en sortie. | Couche d'entités |
update_succeeded | Indique si la mise à jour a abouti. | Booléen |
Exemple de code
Exemple 1 d'utilisation de l'outil Mettre à jour les incidents de trafic (fenêtre Python)
Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil UpdateTrafficIncidents.
import arcpy
arcpy.na.UpdateTrafficIncidents("NAVTEQ North America", "myUserName",
"myPassword",
["New England", "New York/Northern NJ/Connecticut"],
"C:/Data/Traffic.gdb","Traffic_Incidents",
"C:/data/TimeZones.gdb/NATimeZones", "MSTIMEZONE")
Exemple 2 d'utilisation de l'outil Mettre à jour les incidents de trafic (workflow)
Le script Python autonome suivant montre comment l'outil UpdateTrafficIncidents permet de télécharger des incidents de trafic en tant que classe d'entités dans une géodatabase d'entreprise. Le script peut être exécuté en tant que Planificateur de tâches de Windows ou que script planifié sous Linux, de manière que les incidents de trafic sont mises à jour à intervalles réguliers. La classe d'entités permet de publier un service d'entités.
# Name: UpdateTrafficIncidents_Workflow.py
# Description: Downloads traffic incidents as a feature class in an ArcSDE
# geodatabase. The script can be run as a Windows Scheduler Task or
# a cron job on Linux so that the traffic incidents are updated at
# regular intervals. The feature class can be used to publish a
# feature service.
#Import system modules
import arcpy
from arcpy import env
#Set local variables
trafficIncidentsStorage = "C:/data/TrafficIncidentsStorage.sde"
incidentsFeatureClass = "NAVTEQ_NorthAmerica_Incidents"
provider = "NAVTEQ North America"
username = "Replace with your username"
password = "Replace with your password"
#download data for all regions
regions = "#"
timeZoneBoundaries = "C:/data/TimeZones.gdb/NATimeZones"
timeZonesID = "MSTIMEZONE"
try:
#Update Traffic Data. Use default values for remaining parameters
arcpy.na.UpdateTrafficIncidents(provider,username,password, regions,
trafficIncidentsStorage, incidentsFeatureClass,
timeZoneBoundaries, timeZonesID)
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 occurred on line %i" % tb.tb_lineno
print str(e)
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui