Exercice 3b : Transformation des données et utilisation de Visualizer

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 : Découvrez les notions fondamentales de la transformation d'entités et d'attributs dans FME Workbench et apprenez à utiliser Visualizer pour vérifier la sortie.

Un module de transformation est un objet FME Workbench qui effectue une restructuration particulière des entités ou de la structure. Il s'agit d'un objet visuel que vous ajoutez à la zone d'affichage de votre espace de travail et connectez à des modules de lecture source, à des types de modules d'écriture d'entités ou à d'autres modules de transformation.

Cet exercice vous présente les notions de base de l'utilisation des transformateurs FME en les ajoutant à l'outil ETL spatial que vous avez créé dans "Exercice 3a : Prise en main d'ETL spatial". Vous créez un outil ETL spatial qui transforme les données de parcelle MGE, évalue les nouvelles entités avec une clause de test et génère une sortie en tant qu'entités réussies ou non. Enfin, vous inspectez la sortie de votre espace de travail sans générer de données avec Visualizer. Vous terminez l'exercice en exportant l'espace de travail dans un format personnalisé.

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

Démarrer ArcMap

Conditions préalables :

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

Avant de commencer cet exercice, vous devez avoir terminé l'exercice précédent, Exercice 3a : Prise en main d'ETL spatial.

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\parcels\ dans la zone de texte Emplacement et appuyez sur ENTREE.

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

    Fenêtre Catalogue

Copiez et renommez l'outil ETL spatial.

Etapes :
  1. Cliquez avec le bouton droit sur l'outil Import MGE Parcel, puis cliquez sur Copier dans le menu contextuel.
  2. Cliquez avec le bouton droit sur la boîte à outils, puis cliquez sur Coller dans le menu contextuel.
  3. Cliquez avec le bouton droit sur l'outil Import MGE Parcel (2), cliquez sur Renommer dans le menu contextuel, puis saisissez Custom Parcels.
  4. Cliquez avec le bouton droit sur l'outil Custom Parcels et cliquez sur Modifier.

    Workbench démarre.

Ajouter un module de transformation AreaBuilder

Le n module de transformation AreaBuilder crée des entités surfaciques topologiquement correctes à partir de lignes formant des formes fermées.

Connectez un module de transformation AreaBuilder au filtre GeometryFilter LOT_LINES.

Etapes :
  1. Confirmez que Bibliothèque des transformations est disponible.
    Pour ouvrir la fenêtre Transformations dans le menu principal, cliquez sur Affichage > Fenêtres > Bibliothèque des transformations.

    Affichage de la fenêtre Transformations

  2. Dans la fenêtre Transformations, saisissez areabuilder dans la zone de texte Rechercher, puis appuyez sur ENTREE.
  3. Double-cliquez sur AreaBuilder.

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

  4. Cliquez sur la ligne raccordant le filtre GeometryFilter LOT_LINES et l'entité de destination LOT_LINES, puis appuyez sur SUPPR.

    Le filtre GeometryFilter est déconnecté du type d'entité du module d'écriture LOT_LINES.

  5. Dans le filtre GeometryFilter LOT_LINES, cliquez sur la flèche jaune qui se trouve à côté de l'attribut en sortie LINE et faites glisser la flèche vers la flèche rouge qui se trouve à côté du module de transformation AreaBuilder en entrée.

    Le filtre GeometryFilter en sortie est raccordé au module de transformation AreaBuilder en entrée, et les flèches deviennent vertes.

    Ajout du module de transformation AreaBuilder

Ajouter un module de transformation PointOnAreaOverlayer

Le module de transformation PointOnAreaOverlayer superpose les entités ponctuelles sur les entités surfaciques et fusionne leurs attributs. Par conséquent, chaque entité surfacique acquiert des attributs de l'entité ponctuelle contenue au sein de sa limite. Les attributs de même nom ne sont pas remplacés.

Connectez un module de transformation PointOnAreaOverlayer au module de transformation LOT_LINES AreaBuilder et au filtre GeometryFilter LOT_POINTS.

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

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

  3. Dans le module de transformation AreaBuilder, cliquez sur la flèche jaune qui se trouve à côté de l'attribut en sortie AREA et faites glisser la flèche vers la flèche rouge qui se trouve à côté de l'attribut PointOnAreaOverlayer AREA en entrée.

    L'attribut PointOnAreaOverlayer AREA en sortie est raccordé à l'attribut PointOnAreaOverlayer AREA, et les flèches deviennent vertes.

    Ajout du module de transformation PointOnAreaOverlayer

  4. Cliquez sur le bouton Propriétés et consultez les paramètres.

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

    Attribut de nombre de superpositions

    Attribut de nombre de superpositions compte le nombre d'entités ponctuelles contenues dans chaque polygone. Cela est utile pour valider les données et envoyer les entités afin de séparer les sorties en vue d'autres traitements. Dans la prochaine section, vous allez connecter un module de transformation Tester pour évaluer ce nombre et la sortie directe en fonction.

  5. Cliquez sur OK.

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

  6. Cliquez sur la ligne raccordant le filtre GeometryFilter LOT_POINTS et le type d'entité du module d'écriture LOT_POINTS, puis appuyez sur SUPPR.

    Le filtre GeometryFilter est déconnecté du type d'entité du module d'écriture.

  7. Dans le filtre GeometryFilter LOT_POINTS, cliquez sur la flèche jaune qui se trouve à côté de l'attribut POINT en sortie et faites glisser la ligne vers la flèche rouge qui se trouve à côté de l'attribut PointOnAreaOverlayer POINT en entrée.

    Le filtre GeometryFilter POINT en sortie est raccordé à l'attribut PointOnAreaOverlayer POINT en entrée, et les flèches deviennent vertes.

Organisation de la mise en page de la zone d'affichage

Lorsque les connecteurs commencent à se croiser, vous pouvez organiser votre espace de travail de façon à faciliter le travail.

  • Pour organiser la mise en page de la zone d'affichage, cliquez sur Outils > Mise en forme automatique et faites glisser les objets sur la zone d'affichage comme dans l'image suivante :

Organisation de la mise en page

AstuceAstuce:

Vous pouvez également cliquer avec le bouton droit sur une ligne de connecteur, sélectionner Insérer un sommet sur le lien dans le menu contextuel et ajouter un ou plusieurs sommets, puis faites glisser chaque sommet pour acheminer le connecteur autour d'autres modules de transformation.

Ajouter un module de transformation Tester

Le module de transformation Tester évalue un ou plusieurs tests sur une entité et achemine l'entité selon le résultat des tests.

Connectez un module de transformation Tester au module de transformation PointOnAreaOverlayer. Ajoutez une clause de test qui évalue l'attribut du nombre de superpositions généré par le module de transformation PointOnAreaOverlayer. Envoyez les entités surfaciques contenant une entité ponctuelle vers la sortie PASSED (réussite) et toutes les autres vers la sortie FAILED (échec).

Etapes :
  1. Dans la fenêtre Transformations, saisissez Tester dans la zone de texte Rechercher, puis cliquez sur Rechercher.
  2. Double-cliquez sur Tester.

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

  3. Connectez la sortie PointOnAreaOverlayer AREA au module de transformation Tester INPUT.

    Ajout du module de transformation Tester

  4. Cliquez sur le bouton Propriétés du module de transformation Tester.

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

    Définition de la clause de test

  5. Double-cliquez sur la première cellule du champ Valeur de gauche, cliquez sur la flèche vers le bas, puis choisissez _overlaps.
  6. Double-cliquez sur la première cellule du champ Op., cliquez sur la flèche, puis choisissez =.
  7. Cliquez sur la première cellule du champ Valeur de droite et saisissez 1.
  8. Cliquez sur OK.

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

Reconfigurer le type d'entité du module d'écriture LOT_LINES

Renommez le type d'entité du module d'écriture LOT_LINES en problem_polys et configurez-le pour générer les entités surfaciques qui ne réussissent pas la clause de test que vous avez définie dans le module de transformation Tester. Ajoutez également un attribut utilisateur appelé num_points pour stocker les valeurs _overlap.

Etapes :
  1. Connectez la sortie FAILED sur le module de transformation Tester à INPUT sur l'entité de destination LOT_LINES.
  2. Cliquez sur le bouton Propriétés de l'entité de destination LOT_LINES.

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

    Configuration du type d'entité problem_polys

  3. Cliquez sur l'onglet Général.
  4. Dans la zone de texte Nom du type d'entité, saisissez problem_polys.
  5. Cliquez sur la flèche Géométries autorisées et sélectionnez geodb_polyline.
  6. Cliquez sur l'onglet Attributs utilisateur.
    Ajout d'un attribut utilisateur
  7. Sélectionnez tous les attributs et appuyez sur SUPPR.

    Les attributs LOT_LINES ne sont pas nécessaires.

  8. Cliquez sur la première cellule du champ Nom de l'attribut et saisissez num_points.

    L'attribut num_points permet de stocker les valeurs de l'attribut _overlay générées par le module de transformation Tester. Cette valeur représente la quantité de points superposés pour chaque entité ayant échoué.

  9. Cliquez sur la flèche Type de données et sélectionnez integer.
  10. Cliquez sur OK.

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

  11. Développez le module de transformation Tester et connectez _overlay en sortie à num_points sur le type d'entité problem_polys.

    Le module de transformation Tester et les connexions du type d'entité doivent ressembler à ceci :

    Connexion de Tester au type d'entité problem_polys

Reconfigurer le type d'entité du module d'écriture LOT_POINTS

Renommez le type d'entité du module d'écriture LOT_POINTS en parcels et configurez-le pour générer les entités surfaciques qui réussissent la clause de test que vous avez définie dans le module de transformation Tester.

Etapes :
  1. Connectez la sortie PASSED sur le module de transformation Tester à INPUT sur l'entité de destination LOT_POINTS.
  2. Cliquez sur le bouton Propriétés de l'entité de destination LOT_POINTS.

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

    Configuration du type d'entité parcels

  3. Cliquez sur l'onglet Général.
  4. Dans la zone de texte Nom du type d'entité, saisissez parcels.
  5. Cliquez sur la flèche Géométries autorisées et sélectionnez geodb_polyline.
  6. Cliquez sur l'onglet Attributs utilisateur.
    Suppression des attributs inutiles
  7. Sélectionnez uniquement les attributs dont les noms commencent par igds_ et appuyez sur SUPPR.

    Les attributs igds_ sont des noms symboliques créés par le module de lecture FME pour simplifier la conversion des types d'élément source IGDS en types d'entité FME. Il n'est pas nécessaire de les inclure avec les entités de destination.

  8. Cliquez sur OK.

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

    Le module de transformation Tester et les connexions du module d'écriture doivent ressembler à ceci :
    Connexion de Tester au type d'entité parcels

Vérifier la sortie de l'espace de travail avec Visualizer

Visualizer est une visionneuse dans la mémoire qui vous permet d'inspecter la sortie de votre espace de travail sans générer de données ou éventuellement remplacer les données existantes.

Redirigez la sortie de votre espace de travail vers Visualizer et vérifiez vos résultats.

Etapes :
  1. Dans la fenêtre Navigateur, développez Paramètres d'outil, cliquez avec le bouton droit sur Redirection de la destination, puis cliquez sur Modifier un paramètre dans le menu contextuel.

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

    Redirection de la sortie vers Visualizer

  2. Cliquez sur la flèche Redirection de la destination et choisissez Rediriger vers Visualizer.
  3. Cliquez sur OK.

    La boîte de dialogue Modifier un paramètre se ferme.

  4. Dans le menu principal, cliquez sur Fichier > Exécuter la traduction.

    Visualizer démarre.

    Vérification de la sortie vers Visualizer

  5. Développez les jeux de données dans Espace d'affichage.
  6. Cliquez sur l'outil Identifier de la barre d'outils, sélectionnez des entités, puis explorez les valeurs attributaires affichées dans la fenêtre Informations.
  7. Observez que l'espace de travail crée des polygones à partir d'éléments linéaires stockés dans les fichiers MicroStation DGN (.par) et acquiert les attributs des entités ponctuelles stockés dans la base de données parcels_attr.mdb. Observez également que le module de transformation Tester a acheminé des entités qui n'ont pas réussi la clause de test dans le type d'entité problem_polys.
  8. Quittez Visualizer.
  9. Dans le menu de Workbench, cliquez sur Fichier > Enregistrer.

Enregistrer l'outil ETL spatial sous un format personnalisé

Un format personnalisé est un espace de travail de conversion qui est exporté depuis FME Workbench sous forme de format et utilisé dans la bibliothèque des modules de lecture FME. Il est enregistré dans un fichier .fds externe et peut être importé dans des bibliothèques de modules de lecture sur d'autres bureaux.

La création d'un format personnalisé ajoute le format à la bibliothèque des modules de lecture FME. Une fois créé, les utilisations suivantes de la bibliothèque vous permettent de modifier le format dans FME Workbench ou de le supprimer de la liste. La suppression d'un format personnalisé supprime le fichier .fds de votre Bureau.

Etapes :
  1. Dans le menu de Workbench, cliquez sur Fichier > Exporter dans un format personnalisé.

    La boîte de dialogue Définir un nom de format personnalisé et une description s'ouvre.

    Exporter sous un format personnalisé

  2. Dans la zone de texte Nouveau nom de format personnalisé, saisissez Custom_parcels.
  3. Dans la zone de texte Nouvelle description de format personnalisé, saisissez Tutorial exercise 3b: transforming data.
  4. Cliquez sur OK.

    Par défaut, une seconde session Workbench démarre pour le format personnalisé (.fds). Vous n'avez rien à faire dans cet espace de travail.

  5. Cliquez sur Fichier > Quitter pour fermer l'espace de travail du format personnalisé.
  6. Cliquez sur Fichier > Quitter pour fermer l'espace de travail de transformation.

Le format personnalisé apparaît comme un choix dans la bibliothèque des modules de lecture FME la prochaine fois que vous ouvrez FME Workbench ou créez une connexion Interoperability.

Cela termine l'exercice.

Passez à l'exercice suivant : Exercice 3c : Utilisation des attributs source pour séparer les données.

Thèmes connexes

9/12/2013