Exemple de service de géotraitement : réseau hydrographique
Dossier |
StreamNet |
Objet |
Crée un réseau hydrographique à partir des données de flux et d'accumulation. |
Services |
|
Tâche de géotraitement |
Créer un réseau hydrographique |
Entrées |
Surface de drainage minimale en amont en hectares |
Sortie |
Réseau hydrographique |
Données |
Utilise des données altimétriques numériques (raster), ainsi que d'autres données se trouvant dans le didacticiel Spatial Analyst. |
Extension |
Spatial Analyst |
A remarquer |
Utilise un service de carte obtenu pour dessiner le réseau. |
Dossier correspondant
C:\arcgis\ArcTutor\GP Service Examples\StreamNet contient l'intégralité du modèle et des données.
A propos de la tâche Créer un réseau hydrographique
L'objectif principal de la tâche Créer un réseau hydrographique est de produire un réseau hydrographique à des fins d'affichage cartographique. Deux résultats sont illustrés ci-dessous, en utilisant un ombrage de la zone d'étude (la ville de Stowe, Vermont) comme fond de carte. Ce service a essentiellement pour objectif de permettre à l'utilisateur de produire plusieurs réseaux différents et de sélectionner celui qui est le mieux adapté à ses besoins cartographiques.
La tâche crée un réseau hydrographique défini par une surface minimale. Plus la surface est petite, plus nombreux sont les segments de cours d'eau produits. Une valeur, basée sur le nombre de segments de cours d'eau en amont, est attribuée à chaque segment de cours d'eau. Cette valeur permet de déterminer l'épaisseur de ligne représentant chaque segment de cours d'eau.
Le nombre de segments de cours d'eau produits dépend de la surface minimale utilisée. Pour une entrée d'un hectare, environ 32 000 segments de cours d'eau sont produits. Pour 45 hectares, environ 600 segments de cours d'eau sont produits.
L'une des décisions à prendre lors de la création d'un service de géotraitement est la détermination du nombre maximal d'enregistrements et d'entités qui peuvent être renvoyées par le serveur au client. La valeur par défaut est 1000, mais vous pouvez l'augmenter jusqu'à plusieurs milliards. Cependant, transporter de grands nombres d'entités via Internet est onéreux et lent. Lorsqu'un service est susceptible de produire un grand nombre d'entités en sortie, vous devez envisager d'utiliser un service de carte obtenu pour créer une carte du résultat et permettre à ArcGIS Server de transporter cette carte sur le Web au lieu des entités. Comme le nombre de segments de cours d'eau produits par la tâche Créer un réseau hydrographique dépend de la surface de drainage minimale et, si vous substituez vos propres données, de la taille et de la topographie de la zone d'étude, cet exemple utilise un service de carte obtenu pour dessiner les résultats au lieu de transférer les entités via Internet au client.
Données
Données
Les données de cet exemple proviennent de C:\arcgis\ArcTutor\GP Service Examples\Watershed. Ces données sont elles-mêmes dérivées de C:\arcgis\ArcTutor\Spatial Analyst. Pour savoir comment les données du dossier Watershed ont été créées, consultez l'exemple d'utilisation de l'outil Bassins versants.
Fond de carte
Dans cet exemple, le fond de carte (StoweHillshade.mxd) ne possède qu'une couche (Hillshade), comme illustré ci-dessous. La couche Ombrage est dessinée avec une transparence de 55 %.
StoweHillshade.mxd est publié en tant que service de carte.
Boîte à outils et carte
La boîte à outils du service de géotraitement est StoweStreamNet, tandis que la carte source du service est StoweStreamNet.mxd. StoweStreamNet.mxd contient deux couches de données sources : Direction de flux (raster de flowdir) et Accumulation de flux (raster d'accumulation).
Modèle
Vue d'ensemble des modèles
Le modèle Créer un réseau hydrographique est illustré ci-dessous. Il existe une variable en entrée : Surface minimale en amont en hectares. Cette variable est une variable double et correspond à la surface de drainage minimale nécessaire à la création d'un segment de cours d'eau. Des surfaces inférieures créent davantage de segments de cours d'eau.
Le modèle calcule le nombre de cellules raster pour la surface en entrée, puis il utilise l'outil Con pour effectuer une évaluation conditionnelle if-else sur chacune des cellules en entrée du raster Accumulation de flux. Comme la valeur de la cellule figurant dans le raster Accumulation de flux correspond au nombre de cellules en amont qui s'écoulent dans la cellule, toute cellule possédant une surface en amont supérieure à la valeur limite est sélectionnée. Dans le raster en sortie, la valeur 1 est affectée aux cellules sélectionnées qui forment des segments de cours d'eau.
L'outil Ordre d'écoulement affecte une valeur d'ordre numérique à un raster qui représente les branches d'un réseau linéaire (sortie de l'outil Con, par exemple). En général, les cours d'eau avec un ordre élevé ont des écoulements supérieurs. L'ordre d'écoulement peut donc être utilisé comme substitut pour la largeur du cours d'eau. La sortie du modèle est symbolisée de telle sorte que les segments possédant des valeurs d'ordre élevées soient dessinés avec des lignes plus épaisses.
L'outil Ecoulement vers entité convertit le Raster d'ordre d'écoulement en classe d'entités linéaires en sortie. Cette classe d'entités sera dessinée par le service de carte obtenu à l'aide de la symbologie définie dans ce dernier.
Le modèle est détaillé ci-dessous.
Données de projet
Les variables Accumulation de flux et Direction de flux sont des couches issues de la carte source (StoweStreamNet.mxd). Ces variables sont appelées données de projet, car il s'agit de données en entrée autres que des paramètres.
Calcul du nombre de cellules pour la surface minimale
Les rasters Accumulation de flux et Direction de flux ont projeté les coordonnées State Plane du Vermont en utilisant les mètres comme unité linéaire. La cellule mesure 30 par 30 mètres. Pour déterminer la référence spatiale et la taille de la cellule d'un raster, effectuez l'une des opérations suivantes :
- Dans la fenêtre Catalogue, cliquez avec le bouton droit sur le raster et sélectionnez Propriétés.
- Dans la table des matières d'ArcMap, cliquez avec le bouton droit sur une couche raster, cliquez sur Propriétés, puis cliquez sur l'ongletSource.
L'outil Calculer une valeur divise les hectares en entrée par la taille d'une cellule en hectares (30 x 30 mètres = 900 mètres carrés = 0,09 hectares) pour obtenir le nombre de cellules correspondant à la surface en amont minimale. Les paramètres de l'outil Calculer une valeur (illustrés ci-dessous) utilisent la substitution de variable. Entourez un nom de variable de symboles de pourcentage (%) pour remplacer le contenu de la variable par la valeur.
La variable Surface minimale en amont en hectares est un type de données double, créé comme suit :
- Cliquez avec le bouton droit sur la zone d'affichage ModelBuilder, puis cliquez sur Créer une variable.
- Dans la boîte de dialogue Créer une variable, sélectionnez Double comme type de données.
- Cliquez sur OK.
- Renommez la variable que vous venez de créer en Surface minimale en amont en hectares.
- Double-cliquez sur la variable et entrez une valeur par défaut. Pour la superficie de la ville de Stowe, 45 est une valeur par défaut raisonnable.
La variable Surface minimale en amont en hectares est une précondition à l'exécution de Calculer une valeur. Une précondition indique qu'une variable doit contenir une valeur avant l'exécution de Calculer une valeur. Vous peut définir des préconditions comme suit :
- Cliquez avec le bouton droit sur Calculer une valeur.
- Cliquez sur Propriétés.
- Cliquez sur l'onglet Pré-conditions.
- Cochez Surface minimale en amont en hectares.
Processus Con
L'outil Con effectue une évaluation conditionnelle if/else sur chacune des cellules en entrée du raster Accumulation de flux.
Notez que l'expression utilise la substitution de variable. Dans l'expression, toutes les cellules possédant une valeur supérieure au nombre minimal de cellules sont sélectionnées. (La valeur d'une cellule du raster Accumulation de flux est le nombre de cellules qui s'écoulent dans une cellule individuelle.)
Le paramètre Raster vrai ou valeur constante en entrée a pour valeur 1. Il doit être affecté à chaque cellule sélectionnée. Si vous créez entièrement ce modèle, procédez comme suit :
- Double-cliquez sur l'outil Con.
- Affectez au paramètre Raster vrai ou valeur constante en entrée la valeur 1.
- Cliquez sur OK.
La variable de modèle Raster vrai ou valeur constante en entrée est automatiquement créée et connectée à l'outil Con.
Processus d'ordre d'écoulement
L'outil Ordre d'écoulement calcule une valeur numérique pour les cellules qui représentent des branches d'un réseau hydrographique. Les valeurs des paramètres pour Ordre d'écoulement sont indiquées ci-dessous.
Le raster en sortie contient l'ordre d'écoulement Shreve de chaque cellule représentant un cours d'eau.
Processus Ecoulement vers entité
L'outil Ecoulement vers entité crée un fichier de formes pour les segments de cours d'eau qui figurent dans le Raster d'ordre d'écoulement.
Notez que la sortie est écrite dans %scratchworkspace%. Cet emplacement se trouve dans l'environnement d'espace de travail temporaire qui est défini et utilisé par ArcGIS Server.
Couche d'outils
La couche d'outils de StoweStreamNet.mxd définit la symbologie de la carte obtenue. Pour créer la couche d'outils et la symbologie appropriée, procédez comme suit :
- Dans ArcMap, faites glisser l'outil Créer un réseau hydrographique de la boîte à outils StoweStreamNet vers la table des matières d'ArcMap pour créer la couche d'outils Créer un réseau hydrographique.
- Cliquez avec le bouton droit sur la couche d'outils Créer un réseau hydrographique et cliquez sur Ouvrir pour ouvrir la boîte de dialogue de l'outil.
- Utilisez 45 (valeur par défaut) comme surface minimale.
- Cliquez sur OK pour exécuter l'outil. Notez que la symbologie par défaut pour le réseau hydrographique est une ligne unique.
Dans les étapes ci-dessous, vous modifierez la symbologie en symboles linéaires gradués. Cliquez avec le bouton droit sur la sous-couche Réseau hydrographique, cliquez sur Propriétés, puis cliquez sur l'onglet Symbologie.
- Cliquez sur Symboles gradués sous la catégorie Quantités.
- Sélectionnez GRID_CODE comme champ de valeur.
- Cliquez sur Classer.
- Dans la boîte de dialogue Classification, sélectionnez Manuel comme méthode de classification.
- Vous pouvez définir une classification manuelle avec des bornes ayant pour valeur 100, 250, 500, 750 et 10 000. Dans le volet Valeurs des bornes, cliquez sur la dernière valeur de la liste. Cela vous permet de modifier la valeur. Entrez l'une des valeurs des bornes (10 000, par exemple). La liste s'actualise et les valeurs sont triées.
Poursuivez la modification et la définition des valeurs de borne jusqu'à ce que la liste s'affiche comme illustré ci-dessous.
- Cliquez sur OK.
L'onglet Symbologie doit maintenant se présenter comme illustré ci-dessous. Pour changer la couleur en bleu, cliquez sur Modèle, puis sélectionnez une couleur bleue adaptée.
- Cliquez sur OK.
La légende de la sous-couche Réseau hydrographique affiche GRID_CODE comme champ de classification, ce qui laissera perplexe l'utilisateur de votre service. Pour le modifier, cliquez sur GRID_CODE dans la légende, appuyez sur la touche F2 et entrez un texte plus descriptif (Ordre de Shreve ou Ordre d'écoulement, par exemple).
Publication
StoweHillshade.mxd est publié en tant que service de carte.
Pour publier StoweStreamNet.mxd en tant que service de géotraitement avec un service de carte obtenu, procédez comme suit :
- Dans la fenêtre Catalogue, cliquez avec le bouton droit sur StoweStreamNet.mxd et cliquez sur Publier sur un serveur ArcGIS.
- Acceptez toutes les valeurs par défaut.
Utilisation
Pour utiliser les services, démarrez ArcMap et ajoutez le service de carte StoweHillshade et le service de géotraitement StoweStreamNet. N'ajoutez pas le service de carte StoweStreamNet, car il s'agit d'un service de carte obtenu et il contient les couches Accumulation de flux et Direction de flux qui n'ont rien à voir avec les résultats.