Exercise 3c: Using source attributes to separate data

Complexité : Avancé Exigences en matière de données : Données du didacticiel ArcGIS for Desktop Chemin des données : C:\arcgis\ArcTutor\Data Interoperability\ Objectif : Apprenez à utiliser les valeurs attributaires source dans FME Workbench pour séparer les données et générer de nouvelles entités.

Cet exercice présente deux méthodes de séparation des données en fonction des valeurs attributaires. Les valeurs attributaires peuvent servir à créer des outils ETL spatiaux qui classent les données source et génèrent des entités ayant des valeurs communes.

La première méthode consiste à séparer les données au sein de l'espace de travail en utilisant le module de transformation ValueMapper comme table de recherche et à acheminer les données vers des définitions de bloc AutoCAD spécifiques. La deuxième méthode consiste à séparer les données au moment de l'écriture à l'aide du paramètre du module d'écriture Répartir par attribut pour un jeu de données GML et à générer des types d'entités uniques à la volée.

A l'aide de Workbench, réalisez les tâches suivantes :

Créer une boîte à outils et un outil ETL spatial

Conditions préalables :

L'extension Data Interoperability doit être activée.

Etapes :
  1. Démarrez ArcMap.
  2. Cliquez sur le bouton Fenêtre Catalogue Catalogue dans la barre d'outils Standard.
  3. Saisissez C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\ dans la zone de texte Emplacement et appuyez sur ENTREE.

    L'emplacement est ajouté à l'arborescence du Catalogue.

  4. Cliquez avec le bouton droit sur le dossier birds_eggs et cliquez sur Nouveau > Boîte à outils. Boite à outils.
  5. Cliquez avec le bouton droit sur la boîte à outils, cliquez sur Renommer et saisissez nests.
  6. Cliquez avec le bouton droit sur la boîte à outils nests et cliquez sur Nouveau > Outil ETL spatial.
    Création d'un outil ETL spatial

    Assistant Créer l'espace de travail de conversion s'ouvre.

Créer l'espace de travail de conversion

Choix du module de lecture FME

Etapes :
  1. Cliquez sur le bouton de navigation Format.

    Accueil de l'assistant

    La boîte de dialogue Bibliothèque du module de lecture FME s'affiche.

  2. Saisissez gdb dans la zone de texte Rechercher.
  3. Cliquez sur une ligne répertoriant le format Géodatabase Esri (fichier) et cliquez sur OK.

    Bibliothèque de modules de lecture FME

    La boîte de dialogue Bibliothèque du module de lecture FME se ferme.

  4. Cliquez sur Suivant.

Spécification de la source de données

Etapes :
  1. Cliquez sur le bouton de navigation Localiser les données source.

    La boîte de dialogue Sélectionnez la géodatabase s'ouvre.

    Localiser la source de données

  2. Accédez au dossier C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\.
  3. Cliquez sur le dossier nests.gdb, puis sur Ouvrir.

    La boîte de dialogue Sélectionnez la géodatabase se ferme.

  4. Cliquez sur Suivant pour accepter les paramètres par défaut pour la géodatabase.

Choix du module d'écriture FME

Etapes :
  1. Cliquez sur le bouton de navigation Format.
    Sélectionner le format de destination

    La boîte de dialogue Bibliothèque du module d'écriture FME s'affiche.

  2. Saisissez dwg dans la zone de texte Rechercher.
  3. Cliquez sur une ligne répertoriant le format Autodesk AutoCAD DWG/DXF et cliquez sur OK.
    Bibliothèque de modules d'écriture FME

    La boîte de dialogue Bibliothèque du module d'écriture FME se ferme.

  4. Cliquez sur Suivant.
  5. Cliquez sur Suivant pour accepter les paramètres par défaut du format DWG d'AutoCAD.

Création de l'espace de travail

Etapes :
  1. Cliquez sur Terminer.

    L'assistant traite les informations et démarre Workbench.

  2. Développez le type d'entité du module de lecture NESTS et le type d'entité du module d'écriture NESTS. Observez que les attributs des entités source sont appariés directement au jeu de données AutoCAD de destination.

    Appariement par défaut

Ajouter un module de transformation AttributeValueMapper

Le module de transformation AttributeValueMapper affecte des valeurs attributaires en fonction d'autres attributs et stocke la valeur recherchée dans un nouvel attribut.

Appariez les valeurs attributaires COVER spécifiques aux noms de bloc AutoCAD et stockez les valeurs de recherche dans un attribut nommé block_name.

Etapes :
  1. Dans la fenêtre Transformations, saisissez valuem dans la zone de recherche, puis appuyez sur ENTREE.
  2. Double-cliquez sur AttributeValueMapper.

    Un module de transformation AttributeValueMapper est ajouté à la zone d'affichage.

  3. Cliquez avec le bouton droit sur le module de transformation AttributeValueMapper, puis cliquez sur Insérer avant dans le menu contextuel.
    L'assistant Workbench démarre.
    Insérer avant
  4. Cliquez sur Suivant.

    Le module de transformation est connecté aux types d'entités du module d'écriture et du module de lecture.

    ValueMapper

  5. Cliquez sur le bouton Propriétés dans la fenêtre du module de transformation ValueMapper.

    La boîte de dialogue Paramètres AttributeValueMapper s'ouvre.

  6. Cliquez sur la flèche Attribut source et choisissez l'attribut COVER.
  7. Dans la zone de texte Nouveau nom d'attribut, saisissez block_name.
    Paramètres AttributeValueMapper

Importation de valeurs uniques

Vous pouvez saisir manuellement les valeurs source en entrée ou utiliser l'assistant d'importation. Cette section vous indique comment utiliser l'assistant d'importation. Lorsque les valeurs de destination ne sont pas disponibles, comme dans ce cas, vous pouvez sélectionner les mêmes attributs pour les attributs Key et Value et créer un appariement 1:1. Vous pouvez ensuite modifier les valeurs de destination pour qu'elles correspondent aux noms de bloc AutoCAD stockés dans le fichier de gabarit (.dwg).

Etapes :
  1. Cliquez sur Importer.

    L'assistant Workbench démarre.

    Assistant Workbench

  2. Vérifiez que Jeu de données est défini sur la source de données C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\nests.gdb. Vous pouvez cliquer sur le bouton Modifier pour consulter les paramètres, puis cliquer sur le bouton Annuler pour fermer la boîte de dialogue.
  3. Cliquez sur Suivant.
  4. Dans la boîte de dialogue Sélectionner les types d'entités, cliquez sur le type d'entité NEST, puis sur Suivant.
  5. Dans la boîte de dialogue Attribut de clé, cliquez sur l'attribut COVER, puis sur Suivant.
  6. Dans la boîte de dialogue Attribut de valeur, cliquez sur l'attribut de valeur COVER, puis sur Suivant.
  7. Dans la boîte de dialogue Valeurs d'attributs d'analyse, cliquez sur Terminer à la fin de l'analyse des données.

    Workbench affiche le message : 5 entrées de recherche lues. Cliquez sur OK.

  8. Dans la zone de texte Valeur par défaut, saisissez LOVSK.

    Au cours de l'exécution, la valeur par défaut est utilisée si l'outil rencontre une valeur attributaire qui n'est pas répertoriée dans la table de recherche ValueMapper. Au cours de cet exercice, vous allez spécifier un nom de bloc AutoCAD stocké dans le dessin de modèle.

  9. Double-cliquez sur chaque valeur à droite de la colonne et remplacez-la par un nom de bloc AutoCAD stocké dans le dessin de modèle.
    Appariements AttributeValueMapper
  10. Vous pouvez également couper et coller les valeurs de la table suivante :

    Attribut COVER

    Nom de bloc AutoCAD

    rockKRYSS
    willowBARRTR
    coniferSTOMPKT
    bareLOVTR
  11. Cliquez sur OK.

    La boîte de dialogue Paramètres AttributeValueMapper se ferme.

Présenter les propriétés de bloc d'AutoCAD

La présentation des propriétés de bloc spécifiques d'AutoCAD pour le type d'entité du module d'écriture vous permet de contrôler la façon dont les références de bloc sont insérées dans le fichier AutoCAD (.dwg) en sortie.

Etapes :
  1. Cliquez sur le bouton Propriétés sur le type d'entité du module d'écriture NEST.

    La boîte de dialogue Propriétés du type d'entité s'ouvre.

    Propriétés du type d'entité

  2. Cliquez sur l'onglet Attributs de format.
  3. Cochez les cases autocad_block_name, autocad_entity et autocad_rotation.
  4. Cliquez sur OK.

    La boîte de dialogue Propriétés du type d'entité se ferme.

Connexion en entrée pour les attributs de format présenté

Etapes :
  1. Développez la liste des attributs pour le module de transformation ValueMapper et le type d'entité du module d'écriture NESTS. Accédez au bas des listes et créez les connexions suivantes :

    Connexions ValueMapper

  2. Connectez l'attribut ROTATION à l'attribut de format autocad_rotation.

    Cette opération transmet les valeurs de rotation des données source au bloc AutoCAD.

  3. Connectez l'attribut block_name à l'attribut de format autocad_block_name.

    Cette opération transmet les valeurs block_name que vous avez appariées dans la table de recherche AttributeValueMapper au module d'écriture DWG.

  4. Cliquez avec le bouton droit sur la flèche en entrée (rouge) autocad_entity , puis cliquez sur Joindre une constante dans le menu contextuel.

    Une nouvelle constante est connectée en entrée.

  5. Double-cliquez sur Nouvelle constante et saisissez autocad_insert.

    Lorsque vous spécifiez une entité AutoCAD comme autocad_insert, une référence de bloc est insérée pour chaque entité en sortie. La géométrie (ou la symbologie) est définie par les définitions de bloc stockées dans le fichier modèle d'AutoCAD (.dwg) que vous spécifiez dans la prochaine section.

    RemarqueRemarque :

    Tous les attributs utilisateurs qui sont transmis au type d'entité du module d'écriture DWG sont insérés en tant qu'attributs de bloc avec la référence de bloc de chaque entité. Ce résultat est obtenu en définissant le paramètre Attribut en sortie du module d'écriture DWG sur Ignorer. Cela en effet ignore les définitions d'attributs trouvées au sein des définitions de bloc dans le fichier modèle et permet à l'outil ETL spatial de contrôler les attributs qui sont écrits dans le fichier de dessin.

Spécifier le fichier de gabarit AutoCAD

Le fichier modèle AutoCAD contient les définitions de bloc que vous avez spécifiées dans table de recherche ValueMapper.

Faites pointer le chemin d'accès au fichier modèle sur le fichier template.dwg qui se trouve dans le dossier du didacticiel.

Etapes :
  1. Dans la fenêtre Navigateur, développez le type d'entité du module d'écriture [ACAD] et développez le nœud Paramètres.
  2. Cliquez avec le bouton droit sur Fichier modèle, puis cliquez sur Modifier un paramètre.

    La boîte de dialogue Modifier un paramètre s'ouvre.

  3. Cliquez sur le bouton Parcourir (...) et accédez au dossier C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\template.dwg.
    Paramètres du fichier modèle
  4. Dans la boîte de dialogue Sélectionnez un fichier modèle, cliquez sur template.dwg, puis sur Ouvrir.
  5. Dans la boîte de dialogue Modifier un paramètre, cliquez sur OK.

Enregistrer et renommer l'outil

Enregistrez votre travail, quittez Workbench, puis renommez l'outil dans la fenêtre Catalogue.

Etapes :
  1. Cliquez sur Fichier > Enregistrer pour enregistrer l'outil.
  2. Cliquez sur Fichier > Quitter pour fermer Workbench.
  3. Cliquez avec le bouton droit sur le nouvel outil ETL spatial dans la fenêtre Catalogue, cliquez sur Renommer, puis saisissez Nests to AutoCAD.

Ouvrir et exécuter l'outil

Ouvrez l'outil, définissez le paramètre du fichier de destination, puis exécutez l'outil.

Etapes :
  1. Dans la fenêtre Catalogue, développez la boîte à outils Nests. Boite à outils.
  2. Double-cliquez sur l'outil Nests to AutoCAD.

    La boîte de dialogue Nests to AutoCAD s'ouvre.

    Nests to AutoCAD

  3. Cliquez sur le bouton Parcourir du dossier et accédez au dossier C:\arcgis\ArcTutor\Data Interoperability\birds_eggs.
  4. Dans la boîte de dialogue Enregistrer sous, saisissez nests dans la zone de texte Nom de fichier et cliquez sur Enregistrer. Le module d'écriture FME ajoute l'extension de fichier nécessaire à la sortie.
  5. Cliquez sur OK pour exécuter l'outil.

    L'outil exécute la conversion à l'arrière-plan. Une barre de progression en bas de la carte affiche le nom de l'outil. A l'issue de l'exécution de l'outil, une notification contextuelle apparaît sur la barre d'état système. Vous pouvez analyser les détails de la conversion dans la fenêtre Résultats.

Ajouter les données dans ArcMap

Etapes :
  1. Dans la fenêtre Catalogue, développez le jeu de données DWG nests et faites glisser la classe d'entité ponctuelle dans ArcMap pour vérifier vos résultats.

    Résultats Nest to AutoCAD

Copier et renommer l'outil

Copiez l'outil et utilisez-le comme base pour un second outil qui génère à la fois un fichier de dessin et un jeu de données GML à l'aide du paramètre Répartir par attribut.

Etapes :
  1. Dans la fenêtre Catalogue, cliquez avec le bouton droit sur l'outil ETL spatial Nests to AutoCAD et cliquez sur Copier dans le menu contextuel.
  2. Cliquez avec le bouton droit sur la boîte à outils Nests, puis cliquez sur Coller.
  3. Cliquez avec le bouton droit sur l'outil Nests to AutoCAD (2), cliquez sur Renommer, puis saisissez Nests to AutoCAD and GML.
  4. Cliquez avec le bouton droit sur l'outil Nests to AutoCAD and GML et cliquez sur Mettre à jour.

    Workbench démarre.

Ajouter un module d'écriture pour GML

Ajoutez un second module d'écriture qui créer des jeux de données GML et connectez-le au module de transformation ValueMapper en sortie.

Etapes :
  1. Dans le menu principal, cliquez sur Auteurs > Ajouter un auteur.

    La boîte de dialogue Ajouter un auteur s'ouvre.

    Ajouter un auteur

  2. Cliquez sur le bouton de navigation Format et choisissez GML (Geography Markup Language) dans Bibliothèque du module d'écriture FME.
  3. Cliquez sur le bouton de navigation Jeu de données et accédez au dossier C:\arcgis\ArcTutor\Data Interoperability\birds_eggs.
  4. Dans la boîte de dialogue Sélectionner un fichier, saisissez nests dans la zone de texte Nom de fichier et cliquez sur Enregistrer. Le module d'écriture FME ajoute l'extension de fichier nécessaire à la sortie.
  5. Accédez au dossier C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\template.dwg, saisissez nests dans la zone de texte Nom de fichier, puis cliquez sur Enregistrer.
  6. Cliquez sur OK.

    Workbench vous invite à créer un type d'entité.

  7. Cliquez sur Non.
  8. Au lieu de créer entièrement un type d'entité, copiez le type d'entité AutoCAD et modifiez les paramètres.
  9. Cliquez avec le bouton droit sur le type d'entité AutoCAD en sortie NESTS et cliquez sur Dupliquer dans le menu contextuel.
  10. Connectez le module ValueMapper OUTPUT à l'entrée du nouveau type d'entité de destination.

    Entités de destination pour GML

  11. Cliquez sur le bouton Propriétés sur le type d'entité de destination dupliqué NEST. Lorsque vous avez terminé de modifier les paramètres, l'info-bulle affiche des informations similaires à celles du graphique ci-dessus.

    La boîte de dialogue Propriétés du type d'entité s'ouvre.

    Paramètres généraux NESTS

  12. Dans la zone de texte Nom du type d'entité, saisissez NESTS_gml.
  13. Cochez la case Répartir par attribut, cliquez sur la flèche, puis choisissez l'attribut COVER.

    Le paramètre de répartition divise les données en sortie en fonction de la valeur d'un attribut. Les données sont divisées au moment de l'exécution au lieu d'être générées au sein de l'espace de travail. Cet exercice les utilise pour générer une sortie basée sur la valeur du champ d'attribut COVER.

  14. Cliquez sur la flèche Jeu de données et choisissez nests [GML].
  15. Cliquez sur OK.

    La boîte de dialogue Propriétés du type d'entité se ferme.

Définir le paramètre de destination des jeux de données DWG

Un paramètre publié est un paramètre que l'utilisateur peut modifier lorsqu'il exécute l'outil. Les paramètres apparaissent sous forme de zones de texte dans la boîte de dialogue de l'outil ETL spatial, tout comme les outils de géotraitement. Dans la fenêtre Navigateur, ils sont désignés par une icône violette.

Lorsque vous avez ajouté le module d'écriture GML, vous avez défini ce paramètre avec un chemin de destination et un nom de fichier par défaut. Cette section définit ce paramètre pour les jeux de données DWG avec un chemin et un nom de fichier par défaut.

Etapes :
  1. Dans la fenêtre Navigateur, développez le type d'entité du module d'écriture [ACAD] et développez le nœud Paramètres.
    Paramètres publiés pour les jeux de données DWG
  2. Cliquez avec le bouton droit sur Destination, puis cliquez sur Modifier un paramètre.

    La boîte de dialogue Modifier les paramètres publiés s'ouvre.

  3. Cliquez sur le bouton Parcourir (...) et accédez au dossier C:\arcgis\ArcTutor\Data Interoperability\birds_eggs.
  4. Dans la zone de texte Nom de fichier, saisissez nests et cliquez sur Enregistrer.
  5. Cliquez sur OK pour fermer la boîte de dialogue Modifier les paramètres publiés.

Enregistrer et exécuter l'outil

Etapes :
  1. Cliquez sur Fichier > Enregistrer pour enregistrer l'outil.
  2. Cliquez sur Fichier > Quitter pour fermer Workbench.
  3. Dans la fenêtre Catalogue, développez la boîte à outils Nests. Boite à outils.
  4. Double-cliquez sur l'outil Nests to AutoCAD and GML.

    La boîte de dialogue Nests to AutoCAD and GML s'ouvre.

    Nests to AutoCAD and GML

  5. Cliquez sur OK.

    L'outil exécute la conversion à l'arrière-plan. Une barre de progression en bas de la carte affiche le nom de l'outil. A l'issue de l'exécution de l'outil, une notification contextuelle apparaît sur la barre d'état système. Vous pouvez analyser les détails de la conversion dans la fenêtre Résultats.

Ajouter les données dans ArcMap

Etapes :
  1. Dans la fenêtre Catalogue, faites glisser le jeu de données GML nests dans ArcMap et vérifiez vos résultats.

    Résultats Nests to AutoCAD and GML

Cela termine l'exercice.

Thèmes connexes

9/12/2013