Exemple de service de géotraitement : plus de réseau hydrographique
Dossier |
StreamNet2 |
Objet |
L'utilisateur peut télécharger un réseau précalculé ou en créer un. |
Services |
StoweStreamNetworksBasemap (service de carte) et StoweStreamNetworkTasks (service de géotraitement) |
Tâches de géotraitement |
Obtenir un réseau hydrographique précalculé, Créer un réseau hydrographique. |
Entrées |
Pour la tâche Obtenir un réseau hydrographique précalculé, l'utilisateur entre un nom de couche. Pour la tâche Créer un réseau hydrographique, l'utilisateur entre la surface en amont minimale en hectares. |
Sorties |
Réseau hydrographique |
Données |
Cet exemple utilise des données d'altitude numériques (raster) et d'autres données se trouvant dans le didacticiel Spatial Analyst. |
Extensions |
Spatial Analyst |
A remarquer |
Utilise des fichiers de symbologie des couches (.lyr) pour indiquer à l'application cliente comment représenter les réseaux hydrographiques en sortie (consultez la rubrique Exemple de service de géotraitement : bassin versant). |
Dossier correspondant
C:\arcgis\ArcTutor\GP Service Examples\StreamNet2 contient l'intégralité du modèle et des données.
A propos de cet exemple
Cet exemple repose sur la tâche Créer un réseau hydrographique générée dans Exemple de service de géotraitement : réseau hydrographique. Comme indiqué dans cet exemple, cette tâche à essentiellement pour objectif de produire un réseau hydrographique à des fins d'affichage cartographique, en permettant à l'utilisateur de produire plusieurs réseaux différents et de sélectionner au final celui qui est le mieux adapté à ses besoins cartographiques. La tâche Créer un réseau hydrographique a utilisé un service de carte obtenu pour afficher ses résultats.
Dans cet exemple, les entités de réseau hydrographique sont transférées au client à des fins d'affichage. Comme les entités sont transmises à l'application cliente, aucun service de carte obtenu n'est nécessaire. Le service contient deux tâches, l'une récupérant les réseaux précalculés et l'autre créant un nouveau réseau.
La table des matières du service de carte StoweStreamNetworksBasemap et les tâches du service de géotraitement StoweStreamNetworkTaskssont illustrées ci-dessous.
Le service de fond de carte vous permet d'afficher cinq réseaux précalculés, d'une surface comprise entre 10 à 50 hectares. Il y a deux services de géotraitement :
- Obtenir un réseau hydrographique précalculé - L'utilisateur sélectionne un réseau hydrographique précalculé et les entités sont renvoyées.
- Créer un réseau hydrographique - L'utilisateur crée un réseau en entrant une zone de drainage en amont. Il s'agit d'une version légèrement modifiée de la tâche Créer un réseau hydrographique abordée dans la rubrique Exemple de service de géotraitement : réseau hydrographique.
Fond de carte
La table des matières StoweStreamNetworksBasemap.mxd est représentée ci-dessous avec la boîte à outils StoweStreamNetworkTasks dans la fenêtre Catalogue.
Les cinq couches de réseaux hydrographiques ont été créées à l'aide du modèle Précalculer un réseau hydrographique. Il s'agit d'un outil utilitaire qui ne fait pas partie du service de géotraitement. Le modèle Précalculer un réseau hydrographique ressemble au modèle Créer un réseau hydrographique, à quelques différences près :
- La variable en entrée est nommée Area.
- Les variables de jeux de données raster accumulation et flowdir font référence aux jeux de données raster du dossier ToolData plutôt qu'aux couches de la table des matières d'ArcMap. Cela vous permet d'exécuter le modèle en l'absence de couches raster dans la table des matières d'ArcMap.
- La variable Réseau hydrographique possède un fichier de symbologie des couches.
Les étapes de base de la création et de l'utilisation d'un fichier de symbologie des couches sont les suivantes
- Exécutez le modèle Précalculer un réseau hydrographique dans la fenêtre Catalogue. Une nouvelle couche s'ajoute à ArcMap.
- Cliquez avec le bouton droit sur la nouvelle couche, sélectionnez Propriétés, puis cliquez sur l'onglet Symbologie.
- Convertissez la symbologie en Symboles gradués en utilisant GRID_CODE comme valeur. Utilisez une classification Seuils naturels (Jenks).
- Cliquez avec le bouton droit sur la couche dans la table des matières, puis sélectionnez Enregistrer comme fichier de couche. Effectuez l'enregistrement dans ToolData/Stream Network.lyr.
- Modifiez le modèle Précalculer un réseau hydrographique.
- Cliquez avec le bouton droit sur la variable en sortie Réseau hydrographique et cliquez sur Propriétés.
- Dans la boîte de dialogue Propriétés, cliquez sur l'onglet Symbologie des couches et entrez le fichier de couches créé ci-dessus.
Modèles
Le contenu de StoweStreamNetworkTasks.mxd est illustré ci-dessous.
La table des matières possède les mêmes couches de réseaux hydrographiques précalculés que celles de StoweStreamNetworksBasemap.mxd. Ces couches ont été créées comme suit :
- Chaque couche du réseau hydrographique de StoweStreamNetworksBasemap.mxd a été enregistrée en tant que fichier de couches dans le répertoire ToolData.
- Grâce à Ajouter des données dans StoweStreamNetworkTasks.mxd, chaque fichier de couches créé ci-dessus a été ajouté à la table des matières.
Le modèle Obtenir un réseau hydrographique précalculé est un modèle simple qui copie le contenu d'une couche d'entités dans l'espace de travail temporaire.
La variable en entrée, Network to download, est un type de données de couche d'entités. Lors de l'exécution de la tâche, toutes les couches basées sur une entité sont répertoriées et l'utilisateur en choisit une. (Notez que les couches raster ne sont pas répertoriées, car ce ne sont pas des entités. Par ailleurs, aucune des sous-couches des couches d'outils n'est répertoriée, car ArcGIS Server filtre automatiquement toutes les couches d'outils et leurs sous-couches de la liste de couches d'entités.) Les entités sous-jacentes sont donc copiées dans l'espace de travail temporaire et, lors de leur renvoi au client, sont représentées à l'aide de la symbologie définie dans ToolData/Stream Network.lyr.
La tâche Créer un réseau hydrographique est la même que celle qui se trouve dans Exemple de service de géotraitement : réseau hydrographique avec toutefois une exception notable : la propriété Symbologie des couches de la variable en sortie (Réseau hydrographique) est définie sur Stream Network.lyr, comme indiqué ci-dessous.
Publication
StoweStreamNetworksBasemap.mxd est publié en tant que service de carte.
StoweStreamNetworkTasks.mxd est publié en tant que service de géotraitement, comme suit :
- Dans la fenêtre Catalogue, accédez à votre serveur SIG, cliquez dessus avec le bouton droit et sélectionnez Ajouter un nouveau service. Nommez le service StoweStreamNetworkTasks et sélectionnez Service de géotraitement comme type.
- Cliquez sur Suivant.
- Sélectionnez StoweStreamNetworkTasks.mxd comme source pour votre service.
- Définissez le Nombre maximal d'enregistrements retournés par le serveur sur 10000. Vous devez le modifier, car il n'existe aucun service de carte obtenu pour dessiner les résultats et les entités sont renvoyées au client. Si vous conservez le nombre d'enregistrements par défaut (1000), aucune des tâches ne renvoie le jeu de données complet, car elles génèrent toutes plus de 1000 enregistrements.
- A des fins de test, cochez Afficher les messages.
- Cliquez sur Suivant. A partir de ce point, vous pouvez accepter les valeurs par défaut fournies par l'assistant.
Utilisation
Pour utiliser le service, lancez ArcMap avec un document vide et ajoutez le service de carte StoweStreamNetworksBasemap et le service de géotraitement StoweStreamNetworkTasks. Ouvrez et exécutez ces deux tâches. Si aucune de ces tâches ne donne de résultats, c'est probablement parce que vous n'avez pas défini le paramètre Nombre maximal d'enregistrements retournés par le serveur sur un nombre élevé comme indiqué ci-dessus.
Utilisation d'un filtre de plage
Les paramètres d'outil de modèle peuvent avoir des filtres, servant à valider des valeurs de paramètre. Dans le cas du modèle Créer un réseau hydrographique, vous pouvez utiliser un filtre de plage pour valider le paramètre Surface en amont minimale en hectares. Les surfaces minimales inférieures à 5 hectares produisent des milliers de segments de cours d'eau et génèrent des sorties inutilisables (du moins à des fins d'affichage cartographique). Vous pouvez utiliser un filtre pour empêcher le traitement des valeurs inférieures à 5 hectares.
Pour définir un filtre de plage
- Dans la fenêtre Catalogue, cliquez avec le bouton droit sur l'outil Créer un réseau hydrographique, puis cliquez sur Propriétés. Vous pouvez également ouvrir l'outil Créer un réseau hydrographique dans ModelBuilder, cliquer sur Modèle dans le menu principal de ModelBuilder, puis cliquer sur Propriétés du modèle.
- Dans la boîte de dialogue Propriétés, cliquez sur l'onglet Paramètres.
- Cliquez sur la cellule Filtre dans les paramètres Surface en amont minimale en hectares et sélectionnez Plage. La boîte de dialogue Plage s'ouvre automatiquement.
- Dans la boîte de dialogue Plage, entrez les valeurs minimales et maximales.
Après avoir apporté cette modification au modèle Créer un réseau hydrographique, vous devez redémarrer le service pour que cette modification prenne effet.
Avec ces modifications, à chaque entrée d'une valeur inférieure à 5, la tâche affichera une erreur dans ses messages. Pour que les messages correspondant à ce service s'affichent, l'option Afficher les messages doit être cochée.