Didacticiel : Publication d'un service d'analyse du réseau
Il est possible d'effectuer une analyse du réseau sur un réseau de transport sur le Web ou en hébergeant des services d'analyse réseau sur ArcGIS Server. Cela inclut la recherche des ressources les plus proches, du meilleur itinéraire pour un véhicule et des meilleurs itinéraires pour une flotte de véhicules par emplacement-allocation, le calcul d'une matrice de coût OD et la génération de zones de desserte. Ce didacticiel vous guide à travers le processus de création d'une carte pouvant être utilisée pour l'analyse de réseau et vous montre comment la publier comme service d'analyse du réseau. Il vous renvoie ensuite à différentes rubriques d'aide sur l'utilisation du service d'analyse du réseau dans ArcMap et une application Web. Pour en savoir plus sur les différents types d'analyses de réseau et leurs fonctions, reportez-vous à la rubrique Types d'analyses de réseau dans l'aide d'ArcGIS.
Avant de commencer ce didacticiel
Si vous venez d'installer ArcGIS Server, vous devez réaliser certaines étapes préparatoires avant de pouvoir vous connecter au serveur et publier des services.
- Pour plus d'informations sur la façon de configurer le site ArcGIS Server, consultez la rubrique Démarrage après l'installation du système d'aide.
- Pour savoir comment mettre à disposition du serveur les données référencées par la ressource GIS, consultez la rubrique Rendre vos données accessibles à ArcGIS Server.
Données du didacticiel
Les données nécessaires pour suivre ce didacticiel sont installées avec ArcGIS Server et se trouvent à l'emplacement suivant : <répertoire d'installation d'ArcGIS for Server>\help\samples\data\network_analyst.
Vous pouvez également essayer de suivre les étapes en utilisant vos propres données.
Création du document ArcMap
Un service d'analyse du réseau nécessite un service de carte contenant une ou plusieurs couches d'analyse de réseau. En d'autres termes, la carte publiée sur le serveur doit contenir une ou plusieurs couches d'analyse de réseau créées avec les outils de la barre d'outils Network Analyst. Les services d'analyse du réseau prennent en charge la couche d'analyse d'itinéraires, la couche d'analyse des ressources les plus proches et la couche d'analyse de la zone de desserte.
Suivez ces étapes pour créer une carte unique capable d'effectuer ces trois types d'analyse du réseau :
- Démarrez ArcMap et ouvrez une nouvelle carte vide.
- Cliquez sur Personnaliser > Extensions et cochez la case Network Analyst pour activer l'extension Network Analyst.
- Cliquez sur Personnaliser > Barres d'outils > Network Analyst pour afficher la barre d'outils Network Analyst.
- Ajoutez un jeu de données réseau, qui doit être inclus dans la carte pour créer une couche d'analyse de réseau, en cliquant sur Ajouter des données. de la barre d'outils standard. Accédez au jeu de données réseau Streets_ND figurant dans la base de données SanFrancisco. Lorsque vous êtes invité à ajouter à la carte toutes les classes d'entités qui participent à Streets_ND, cliquez sur Non.
-
Ajoutez une couches d'analyse d'itinéraire à votre carte en cliquant sur le menu déroulant Network Analyst dans la barre d'outils Network Analyst et en sélectionnant Nouvel itinéraire.
Lorsqu'une couche d'analyse réseau est créée dans ArcMap, elle est automatiquement liée au jeu de données de réseau actif. Comme le réseau San Francisco était actif lorsque vous avez créé la couche d'analyse d'itinéraire, les deux sont donc liés. Comme la couche d'analyse de réseau référence en outre le jeu de données de réseau auquel elle est liée par le chemin de fichier, ArcMap n'a ainsi plus besoin de la couche de jeu de données de réseau.
- Cliquez avec le bouton droit sur Streets_ND ou sur le nom de la couche de jeu de données de réseau, puis cliquez sur Supprimer. Même si la carte est vide, la couche d'analyse du réseau est présente et elle peut être publiée en tant que service. Lorsque vous ajoutez éventuellement le service d'analyse réseau publié à une carte, il n'affiche aucune entité au départ, jusqu'à ce qu'il génère des résultats. Pour fournir davantage de contexte lorsque vous utilisez un service d'analyse du réseau, vous pouvez aussi utiliser un service de carte mis en cache, tel que celui fourni par ArcGIS Online.
- Cliquez sur Fichier > Enregistrer sous pour enregistrer la carte.
Publication du service d'analyse du réseau
Une fois que votre carte est dotée d'une couche d'analyse de réseau, vous êtes prêt à la publier comme service d'analyse du réseau. Vous allez publier la carte comme service et activer la fonction d'analyse de réseau, ce qui créera un service d'analyse de réseau du même nom.
Pour configurer votre carte et la publier sur ArcGIS Server à l'aide d'ArcMap, procédez comme suit :
- Dans ArcMap, sélectionnez Fichier > Partager en tant que > Service dans le menu principal.
- Dans la fenêtre Partager en tant que service, sélectionnez Publier un service. Cliquez sur Suivant.
- Dans la boîte de dialogue Publier un service, cliquez sur Connecter à ArcGIS Server pour créer une connexion au serveur.
- Dans la fenêtre Ajouter un serveur ArcGIS, sélectionnez Publier les services SIG. Cliquez sur Suivant.
- Pour l'URL du serveur, saisissez l'URL du site ArcGIS Server auquel vous souhaitez vous connecter. Par exemple : http://gisserver.domain.com:6080/arcgis.
- Dans la liste déroulante Type de serveur, sélectionnez ArcGIS for Server.
- Au cours du processus de publication, un fichier de définition de service est créé et stocké temporairement sur un disque local. A l'issue du processus, la définition de service est chargée sur le serveur et le fichier local est supprimé. Dans le cadre de ce didacticiel, acceptez le dossier par défaut et poursuivez.
- Si votre administrateur de serveur a activé la sécurité de votre site, entrez vos Nom d'utilisateur et Mot de passe. Cliquez sur Terminer.
- Facultativement, dans la fenêtre Publier un service, entrez un nouveau nom pour le service. Le nom ne doit pas dépasser 120 caractères et ne peut contenir que des caractères alphanumériques et des traits de soulignement. Cliquez sur Suivant.
- Par défaut, les services sont publiés sur le dossier racine (racine) d'ArcGIS Server. Les services peuvent être organisés dans des sous-dossiers du dossier racine. Choisissez le dossier où vous souhaitez publier le service, ou créez un dossier pour contenir le service. Cliquez sur Continuer.
- L'Editeur de services s'affiche. Dans l'Editeur de services, sélectionnez les opérations que les utilisateurs peuvent effectuer avec le service d'analyse de réseau. Vous pouvez contrôler en détails la manière dont le serveur exposera votre service. Cliquez sur l'onglet Fonctionnalités.
- Par défaut, Cartographie et KML sont activés. Cochez l'option Analyse de réseau.
- Dans le volet gauche de l'Editeur de services, cliquez sur l'onglet Analyse de réseau et vérifiez les opérations et les propriétés activées pour votre service d'analyse du réseau. Dans le cadre de ce didacticiel, vous pouvez accepter les valeurs par défaut et poursuivre. Si vous désirez en apprendre davantage cependant, reportez-vous à la rubrique Services d'analyse du réseau. Pour plus d'informations sur la procédure de configuration au mieux du service d'analyse réseau aux fins de déploiement, reportez-vous à la rubrique Optimisation et configuration des services.
- Cliquez sur Analyse . Cette fonction examine la carte pour voir si elle peut être publiée sur le serveur.Astuce:
Pour disposer d'une surface d'affichage plus grande lors de la configuration de votre service d'analyse réseau, cliquez sur le bouton Réduire en haut du Editeur de services.
- Le cas échéant, corrigez les erreurs dans la fenêtre Préparation avant de pouvoir publier. Vous pouvez éventuellement corriger les avertissements et les messages d'information pour améliorer davantage les performances et l'apparence de votre service d'analyse du réseau. Pour plus d'informations sur la résolution de ces problèmes, reportez-vous à la rubrique Analyse de votre ressource SIG.Remarque :
Vous pouvez enregistrer les dossiers et les géodatabases sur votre site ArcGIS Server et ainsi vous assurer que le serveur puisse reconnaître et utiliser vos données. Si vous effectuez les étapes suivantes, toutes les données référencées par votre carte qui proviennent d'un dossier ou d'une géodatabase non enregistré seront copiées sur le serveur au moment de la publication. Il s'agit d'une mesure de précaution visant à s'assurer que le serveur peut accéder à toutes les données utilisées par le service. Pour obtenir les instructions complètes d'inscription d'un dossier ou d'une géodatabase auprès de votre site ArcGIS Server, reportez-vous à la rubrique Inscription de vos données auprès d'ArcGIS Server à l'aide d'ArcGIS for Desktop.
- Une fois que vous avez corrigé les erreurs dans votre carte, cliquez sur Publier .
La publication de votre carte sur ArcGIS Server a pour effet de créer un service de carte et un service d'analyse réseau associé du même nom.
Utilisation du service d'analyse du réseau
Les clients d'ArcGIS Server, par exemple, ArcMap et les navigateurs Web peuvent utiliser les services d'analyse réseau. Dans ArcMap, le bouton Rechercher un itinéraire vous procure une fonctionnalité prête à l'emploi pour tirer parti des fonctionnalités de calcul d'itinéraire fournies par votre service d'analyse réseau. Dans les navigateurs Web, les services d'analyse du réseau sont utilisés par programme, par l'intermédiaire d'applications Web créées à l'aide des API Web ArcGIS pour JavaScript, Flex et Silverlight, et d'applications Web configurables, telles que ArcGIS Viewer for Flex et ArcGIS Viewer for Silverlight. Pour plus d'informations sur ces clients, consultez la section Utilisation du service de la rubrique Services d'analyse du réseau.
Pour savoir comment utiliser votre service d'analyse du réseau dans ArcGIS for Desktop ou dans une application Web simple créée à l'aide d'ArcGIS API for JavaScript, reportez-vous aux sections suivantes :
Utilisation d'un service de calcul d'itinéraire dans ArcMap
- Démarrez ArcMap et ouvrez une nouvelle carte ArcMap vide.
- Vous devez pouvoir vous connecter à ArcGIS Server en tant qu'éditeur, mais vous devez bénéficier d'une connexion utilisateur pour utiliser ce service dans ArcMap. Dans la fenêtre Catalogue, développez le nœud Serveurs SIG et double-cliquez sur Ajouter un serveur ArcGIS pour établir une connexion utilisateur. Pour obtenir des instructions détaillées sur la procédure de configuration de la connexion, reportez-vous à la rubrique Etablissement d'une connexion utilisateur à ArcGIS Server dans ArcGIS for Desktop.
- Dans la fenêtre Catalogue, développez le nœud Serveurs SIG et double-cliquez sur votre nouvelle connexion à ArcGIS Server qui se termine par "(user)".
- Dans votre connexion au serveur, repérez le service de carte qui contient votre service d'analyse réseau et faites-le glisser dans la table des matières.
- Bien que la couche soit présente dans la table des matières, la carte est toujours vide. Pour donner un contexte à la carte, ajoutez une couche de fond de carte à partir d'ArcGIS Online.
- Cliquez sur la flèche de liste déroulante à côté du bouton Ajouter des données dans la barre d'outils Standard et sélectionnez Ajouter un fond de carte.
- Double-cliquez sur un fond de carte, tel que Topographie.
- Effectuez un zoom avant sur la péninsule de San Francisco, qui se trouve du côté sud de la carte, car les arrêts que vous ajouterez doivent être à l'intérieur des limites du jeu de données réseau San Francisco que vous avez utilisé pour créer la couche d'analyse réseau. Si vous n'utilisez pas la base de données SanFrancisco fournie, vous pouvez ignorer cette étape.
- Dans la barre d'outils Outils, cliquez sur Rechercher un itinéraire. .
- Dans la boîte de dialogue Rechercher un itinéraire, cliquez sur l'onglet Options.
- Cliquez dans la liste déroulante Service de calcul d'itinéraire et sélectionnez Route <Layers\[nom de votre service de calcul d'itinéraire]>.
- Cliquez sur l'onglet Arrêts. Utilisez les contrôles et paramètres sous l'onglet Arrêts pour renseigner l'analyse de réseau.
- Lorsque vous êtes prêt à résoudre l'itinéraire, cliquez sur Rechercher un itinéraire.
Utilisation d'un service de calcul d'itinéraire dans une application Web simple
- Pour utiliser un service d'analyse réseau dans une application Web, vous devez en connaître l'URL. Dans un navigateur Web, accédez au Répertoire des services ArcGIS Server, par exemple http://gisserver.domain.com:6080/arcgis/rest/services.
- Dans la liste des services, cliquez sur votre service d'analyse réseau. Tous les services d'analyse de réseau sont suivis de (NAServer). Si votre service réside dans un dossier, accédez à ce dossier et sélectionnez le service.
- Une page contenant le nom et la description du service ainsi que la liste des couches disponibles s'affiche. Cliquez sur Itinéraire.
- Une page affiche les propriétés de la couche d'itinéraire. Dans la barre d'adresse du navigateur, copiez l'URL de cette page et collez-la dans un éditeur de texte. Il s'agit de l'URL REST de la tâche d'itinéraire de votre service d'analyse réseau. L'URL utilise le format http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/NAServer/Route
- Copiez et collez l'exemple de code ci-dessous dans un éditeur de texte, tel que le Bloc-notes.
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=7, IE=9, IE=10"> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"> <title>Simple Routing</title> <link rel="stylesheet" href="http://js.arcgis.com/3.6/js/dojo/dijit/themes/claro/claro.css"> <link rel="stylesheet" href="http://js.arcgis.com/3.6/js/esri/css/esri.css"> <script src="http://js.arcgis.com/3.6/"></script> <script> dojo.require("esri.map"); dojo.require("esri.tasks.route"); var map, routeTask, routeParams; var stopSymbol, routeSymbol, lastStop; function init() { map = new esri.Map("map", { basemap: "streets", center: [-122.44, 37.78], zoom: 12 }); dojo.connect(map, "onClick", addStop); routeTask = new esri.tasks.RouteTask("http://tasks.arcgisonline.com/ArcGIS/rest/services/NetworkAnalysis/ESRI_Route_NA/NAServer/Route"); //setup the route parameters routeParams = new esri.tasks.RouteParameters(); routeParams.stops = new esri.tasks.FeatureSet(); routeParams.outSpatialReference = {"wkid":102100}; dojo.connect(routeTask, "onSolveComplete", showRoute); dojo.connect(routeTask, "onError", errorHandler); //define the symbology used to display the route stopSymbol = new esri.symbol.SimpleMarkerSymbol().setStyle(esri.symbol.SimpleMarkerSymbol.STYLE_CROSS).setSize(15); stopSymbol.outline.setWidth(4); routeSymbol = new esri.symbol.SimpleLineSymbol().setColor(new dojo.Color([0,0,255,0.5])).setWidth(5); } //Adds a graphic when the user clicks the map. If 2 or more points exist, route is solved. function addStop(evt) { var stop = map.graphics.add(new esri.Graphic(evt.mapPoint, stopSymbol)); routeParams.stops.features.push(stop); if (routeParams.stops.features.length >= 2) { routeTask.solve(routeParams); lastStop = routeParams.stops.features.splice(0, 1)[0]; } } //Adds the solved route to the map as a graphic function showRoute(solveResult) { map.graphics.add(solveResult.routeResults[0].route.setSymbol(routeSymbol)); } //Displays any error returned by the Route Task function errorHandler(err) { alert("An error occured\n" + err.message + "\n" + err.details.join("\n")); routeParams.stops.features.splice(0, 0, lastStop); map.graphics.remove(routeParams.stops.features.splice(1, 1)[0]); } dojo.ready(init); </script> </head> <body class="claro"> <div id="map" style="width:600px; height:400px; border:1px solid #000;"></div> <p>Click on the map to add stops to the route. The route from the last stop to the newly added stop is calculated. If a stop is not reachable, it is removed and the last valid point is set as the starting point.</p> </body> </html>
- Repérez le paramètre routeTask = new esri.tasks.RouteTask et remplacez l'URL entre parenthèses par l'URL REST de votre tâche itinéraire de l'analyse du réseau.
- Enregistrez et fermez le document texte.
- Remplacez l'extension de fichier native du document par .html. Par exemple, changez Route.txt en Route.html.
- Ouvrez le document HTML dans un navigateur Web. Suivez les instructions dans l'application Web pour utiliser votre service d'analyse réseau.