Le jeu de données constitue l’entrée la plus courante d’un outil. Vous pouvez, bien entendu, toujours naviguer vers le jeu de données sur le disque, mais vous pouvez également utiliser des couches ou des vues tabulaires en entrée.
- Une couche est ce qui apparaît dans la table des matières de ArcMap. Elle contient le chemin d'accès du jeu de données, ainsi que les informations de symbologie et les informations de sélection d'entité ou d'enregistrement.
- Les vues tabulaires sont l'équivalent des tables d'une couche. Il s’agit de tables stockées en mémoire qui sont identiques à la vue tabulaire créée lorsqu’une table est ajoutée dans ArcMap. Pour afficher les tables, cliquez sur le bouton List By Source (Répertorier par source) situé en haut de la table des matières, comme illustré ci-dessous.
Lorsque vous ouvrez la boîte de dialogue d’un outil dans ArcMap ou que vous saisissez un nom d’outil dans la fenêtre Python, voici ce qui se produit :
- ArcGIS examine les paramètres de l’outil pour déterminer ceux qui utilisent un jeu de données ou une table en entrée. Le cas échéant, il examine plus en détail le type du jeu de données en entrée. S’agit-il d’une classe d’entités ponctuelles ? D’un TIN ? D’un réseau ? D'une table ?
- La table des matières de ArcMap est ensuite analysée et filtrée pour savoir si des couches correspondent au type de jeu de données du paramètre. Le cas échéant, la liste des couches correspondantes est créée et présentée sous la forme d’une liste déroulante dans le contrôle du paramètre. Vous pouvez sélectionner l'une de ces couches ou vues tabulaires comme entrée.
L’illustration suivante présente l’outil Zone tampon ainsi que le menu déroulant des couches qu’il a créées pour le paramètre Input Features (Entités en entrée).
Certains outils acceptent uniquement des couches ou des fichiers de couche comme entrée ou sortie. Si c’est le cas de l’outil que vous utilisez, le nom d’affichage du paramètre contient le mot couche (par exemple, Couche d’entités en entrée à la place de Entités en entrée).
Il est plus naturel et intuitif d’utiliser une couche qu’accéder à un jeu de données sur le disque. L'utilisation des couches peut être nettement plus riche qu'une utilisation comme simple raccourci vers un jeu de données sur le disque.
- Les couches et les vues tabulaires peuvent contenir une sélection d'entités ou d'enregistrements et les outils de géotraitement s'exécuteront uniquement sur les entités ou les enregistrements sélectionnés.
- La table des matières de ArcMap ne doit pas être votre seule source de couches et de vues tabulaires. Vous pouvez en créer avec des outils de géotraitement de manière à pouvoir les utiliser dans ArcCatalog.
- Les couches sont éphémères ; vous devez en être conscient lors de l'écriture de scripts et de modèles, car la couche peut ne pas exister lorsque le script ou le modèle est exécuté ultérieurement.
Les outils de type « Générer une couche » (par exemple, Générer une couche raster) créent une couche à partir des données en entrée. Cette couche est stockée temporairement en mémoire (elle n’est pas enregistrée sur le disque) et est disponible uniquement pendant la session en cours. Une fois la session fermée, la couche est supprimée. Les couches créées dans ArcCatalog ne peuvent pas être utilisées dans ArcMap, et inversement. ArcCatalog n’affiche pas les couches créées, mais il est possible de les utiliser comme entrées pour d’autres outils de géotraitement dans la session dans laquelle vous travaillez.
Sélections
Une couche ou une vue tabulaire contient une sélection, parfois appelée un ensemble de sélection. Une sélection est un sous-ensemble d’entités d’une classe d’entités ou un sous-ensemble de lignes d’une table. Il existe plusieurs façons de sélectionner des entités dans ArcMap. Vous pouvez dessiner une forme sur l’affichage cartographique pour sélectionner toutes les entités de la forme ou utiliser une expression logique. Vous pouvez également sélectionner des entités et des lignes à l’aide des outils de géotraitement du jeu d’outils Couches et vues tabulaires, appartenant aux outils de gestion des données. Dans ArcMap, vous pouvez afficher le nombre d’entités ou de lignes en cliquant sur le bouton List By Selection (Répertorier par sélection) situé en haut de la table des matières, comme illustré ci-dessous.
La plupart des outils de géotraitement fonctionnent uniquement sur l’ensemble de sélection d’entités ou de lignes. Par exemple, l’outil Découper utilise uniquement les entités actuellement sélectionnées dans les entités en entrée et dans les jeux de classes d’entités de découpage. L’outil Résumés statistiques calcule des statistiques limitées à la sélection. En fait, il est rare qu’un outil ne fonctionne pas sur des ensembles de sélection d’entités. Si l'outil n'utilise pas l'ensemble sélectionné, la page de référence de l'outil déclare explicitement qu'il n'utilise pas l'ensemble sélectionné.
Couches temporelles
Si l’entrée d’un outil est une couche temporelle, seules les entités relevant de la période définie dans la fenêtre Time Slider (Curseur temporel) sont traitées. Avec des couches temporelles, vous pouvez assimiler le curseur temporel à un moyen de sélectionner des entités pour poursuivre leur traitement.
Couches internes
Il est possible de créer des couches sans ArcMap. Vous pouvez utiliser l’outil Générer une couche d’entités du jeu d’outils Couches et vues tabulaires pour créer une couche interne en mémoire d’une classe d’entités dans ArcCatalog.
Lorsque vous créez une couche ou une vue tabulaire à l’aide d’outils de géotraitement, la nouvelle couche ou vue tabulaire est stockée dans une liste de couches interne qui est différente de la liste de la table des matières de ArcMap. Cela signifie que le géotraitement garde en fait deux listes de couches et de vues tabulaires :
- la liste des couches de la table des matières ArcMap ;
- la liste des couches internes créées par les outils de géotraitement.
Quel que soit l’emplacement de stockage de la couche, les couches sont présentées dans la même liste déroulante de la boîte de dialogue de l’outil.
Si vous exécutez de l’outil Générer une couche d’entités dans ArcMap, vous pouvez activer l’option Add results of geoprocessing operations to the display (Ajouter les résultats des opérations de géotraitement à l’affichage) de sorte que la couche soit ajoutée automatiquement à la table des matières de ArcMap.
Utilisation des couches dans les modèles et les scripts
Lorsque vous quittez une application ArcGIS Desktop, toutes les couches sont supprimées de la mémoire. Un problème est couramment observé lors de la création d’un modèle ou d’un script qui utilise une couche comme variable. Le modèle ou le script fonctionne correctement dans la session en cours, mais il ne fonctionne plus dans les sessions suivantes en raison de la suppression de la couche au terme de la session. Par exemple, un script peut inclure l'extrait de code suivant :
landuse_layer = "Zoning"
Dans cet exemple, la variable landuse_layer est codée sur Zoning. Plus loin dans le script, la variable landuse_layer est utilisée. C’est alors que le script renvoie une erreur, car il n’existe aucune couche portant le nom Zoning dans l’application actuelle. Le script fonctionne dès lors qu’il est exécuté dans ArcMap et que la couche Zoning figure dans la table des matières. En revanche, le script ne fonctionne pas lorsqu’il est exécuté dans ArcCatalog, ou lorsque cette couche n’existe pas.
Un cas semblable se présente dans un modèle. Vous créez un modèle dans lequel la couche Zoning est utilisée, et le modèle ne fonctionne pas car il n’existe aucune couche avec ce nom dans l’application.
Dans les deux cas, vous pouvez effectuer l'une des opérations suivantes :
- faire du nom de la couche un paramètre d'outil de façon à ce que l'utilisateur puisse spécifier le nom de la couche lors de l'exécution de votre outil,
- créer la couche avant d'exécuter l'outil,
- créer la couche dans le modèle ou le script.
Utilisation des fichiers de couches
Les couches peuvent être enregistrées sur le disque sous forme de fichier de couche (fichier avec l’extension .lyr), puis utilisées comme entrée pour tout outil qui accepte une couche.
Un fichier de couche contient les mêmes informations qu’une couche interne (par exemple, une couche de la table des matières de ArcMap), y compris la sélection des entités.
Pour créer un fichier de couche, vous pouvez faire appel à l'outil Enregistrer dans un fichier de couche. Dans ArcMap, vous pouvez cliquer avec le bouton droit sur la couche dans la table des matières et sélectionner Save As Layer File (Enregistrer comme fichier de couche).
Pour tout outil qui accepte une couche, vous pouvez accéder à un fichier de couche (.lyr) sur le disque comme vous accéderiez à un jeu de données sur le disque. Toutefois, lorsque vous accédez à un fichier de couche, certains outils sont incapables de déterminer le type des données contenues dans le fichier de couche si bien qu’ils vous montrent tous les fichiers de couche. Si vous sélectionnez un fichier de couche inapproprié, l'outil affiche une erreur ou un avertissement.
Noms de couches dupliqués – utilisation des groupes de couches
Dans ArcMap, vous avez la possibilité de créer plusieurs couches du même nom dans la table des matières. Un outil de géotraitement ne supprime pas les noms de couche en double pendant l’analyse de la table des matières pour créer la liste des couches. Ainsi, toutes les couches sont répertoriées dans la liste déroulante de couches, qu’il existe ou non des noms en double.
La meilleure façon de contourner ce problème consiste à utiliser des groupes de couches et à placer les couches en double dans des groupes de couches différents. L’illustration suivante présente deux groupes de couches dans la table des matières ArcMap, chacun contenant une couche du même nom. Dans la boîte de dialogue de l’outil Ajouter un champ, la présentation des groupes de couches dans une arborescence facilite la sélection de la couche appropriée.
Verrouillage des données en langage Python
Si vous êtes confronté à un verrouillage de données ayant pour origine une couche de la source de données concernée, exécutez l’outil Supprimer sur la couche pour lever le verrouillage.