Übung 3c: Verwenden von Quellattributen zum Trennen von Daten.

Komplexität: Experten Datenanforderung: ArcGIS Tutorial Data for Desktop Datenpfad: C:\arcgis\ArcTutor\Data Interoperability\ Ziel: Erfahren Sie, wie Sie Quellattributwerte in FME Workbench zum Trennen von Daten und zum Generieren neuer Features verwenden.

Im Rahmen dieser Übung werden zwei Methoden zur Verwendung von Attributwerten zur Trennung von Daten basierend auf Attributwerten vorgestellt. Sie können zum Erstellen von Spatial ETL-Werkzeugen zum Kategorisieren von Daten und zum Generieren von Feature-Sätzen mit gemeinsamen Werten verwendet werden.

Mit der ersten Methode werden die Daten im Workspace mit dem ValueMapper-Transformer als Suchtabelle getrennt und die Daten an bestimmte AutoCAD-Blockdefinitionen weitergeleitet. Mit der zweiten Methode werden die Daten beim Schreibvorgang mit dem Fanout By Attribute-Writer-Parameter für ein GML-Dataset getrennt und werden eindeutige Feature-Typen "on-the-fly" generiert.

Führen Sie mit Workbench die folgenden Tasks aus:

Erstellen Sie eine Toolbox und ein Spatial ETL-Werkzeug

Voraussetzung:

Die Erweiterung "Data Interoperability" muss aktiviert sein.

Schritte:
  1. Starten Sie ArcMap.
  2. Klicken auf die Schaltfläche Fenster "Katalog". Katalog auf der Werkzeugleiste Standard.
  3. Geben Sie im Textfeld Verzeichnis C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\ ein, und drücken Sie die EINGABETASTE.

    Das Verzeichnis wird dem Kataloginhaltsverzeichnis hinzugefügt.

  4. Klicken Sie mit der rechten Maustaste auf den birds_eggs-Ordner, und klicken Sie dann auf Neu > Toolbox. Toolbox.
  5. Klicken Sie mit der rechten Maustaste auf die Toolbox und anschließend auf Umbenennen. Geben Sie dann nests ein.
  6. Klicken Sie mit der rechten Maustaste auf die Toolbox nests, und klicken Sie dann auf Neu > Spatial ETL-Werkzeug.
    Erstellen eines neuen Spatial ETL-Werkzeugs

    Der Assistent zum Erstellen des Translation-Workspace wird aufgerufen.

Erstellen des Translation-Workspace

Auswählen des FME-Writer

Schritte:
  1. Klicken Sie auf die Schaltfläche Durchsuchen für das Format.

    Assistentenbegrüßung

    Das Dialogfeld FME-Reader-Galerie wird geöffnet.

  2. Geben Sie gdb in das Textfeld Suchen ein.
  3. Klicken Sie in die Zeile mit dem Format Esri Geodatabase (dateibasiert), und klicken Sie dann auf OK.

    FME-Reader-Galerie

    Das Dialogfeld FME-Reader-Galerie wird geschlossen.

  4. Klicken Sie auf Weiter.

Angeben der Datenquelle

Schritte:
  1. Klicken Sie auf die Suchschaltfläche Quelldaten suchen.

    Das Dialogfeld Geodatabase auswählen wird geöffnet.

    Suchen von Quelldaten

  2. Navigieren Sie zum Ordner C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\.
  3. Klicken Sie auf den Ordner "nests.gdb" und dann auf Öffnen.

    Das Dialogfeld Geodatabase auswählen wird geschlossen.

  4. Klicken Sie auf Weiter, um die Standard-Reader-Parameter für die Geodatabase zu bestätigen.

Auswählen des FME-Writer

Schritte:
  1. Klicken Sie auf die Schaltfläche Durchsuchen für das Format.
    Auswählen des Zielformats

    Das Dialogfeld FME-Writer-Galerie wird geöffnet.

  2. Geben Sie dwg in das Textfeld Suchen ein.
  3. Klicken Sie in die Zeile mit dem Inhalt Autodesk AutoCAD DWG/DXF, und klicken Sie dann auf OK.
    FME-Writer-Galerie

    Das Dialogfeld FME-Writer-Galerie wird geschlossen.

  4. Klicken Sie auf Weiter.
  5. Klicken Sie auf Weiter, um die Standardparameter für das AutoCAD-DWG-Format zu bestätigen.

Erstellen des Workspace

Schritte:
  1. Klicken Sie auf Fertig stellen.

    Der Assistent verarbeitet die Informationen und ruft Workbench auf.

  2. Erweitern Sie den Reader-Feature-Typ NESTS und den Writer-Feature-Typ NESTS. Beobachten Sie, dass die Quell-Feature-Attribute direkt dem Ziel-AutoCAD-Dataset zugeordnet werden.

    Standardzuordnung

Hinzufügen eines AttributeValueMapper-Transformers

Mit dem AttributeValueMapper-Transformer werden Attributwerte basierend auf anderen Attributen zugewiesen und wird der Suchwert in einem neuen Attribut gespeichert.

Zuordnen bestimmter COVER-Attributwerte zu AutoCAD-Blocknamen und Speichern der Suchwerte in einem Attribut mit dem Namen block_name.

Schritte:
  1. Geben Sie im Fenster Transformers valuem in das Suchtextfeld ein, und drücken Sie die EINGABETASTE.
  2. Doppelklicken Sie auf AttributeValueMapper.

    Der Zeichenfläche wird ein AttributeValueMapper-Transformer hinzugefügt.

  3. Klicken Sie mit der rechten Maustaste auf den AttributeValueMapper-Transformer, und klicken Sie im Kontextmenü auf Einfügen vor.
    Der Workbench-Assistent wird aufgerufen.
    Einfügen vor
  4. Klicken Sie auf Weiter.

    Der Transformer wird mit den Reader- und Writer-Feature-Typen verknüpft.

    ValueMapper

  5. Klicken Sie im ValueMapper-Transformer-Fenster auf die Schaltfläche Eigenschaften.

    Das Dialogfeld AttributeValueMapper-Parameter wird geöffnet.

  6. Klicken Sie auf den Pfeil für Quellattribut, und wählen Sie das Attribut COVER.
  7. Geben Sie im Textfeld Neuer Attributname block_name ein
    AttributeValueMapper-Einstellungen

Importieren von Einzelwerten

Sie können die Quelleingabewerte manuell eingeben oder mit dem Importassistenten arbeiten. In diesem Abschnitt wird die Verwendung des Importassistenten beschrieben. Sind die Zielwerte nicht verfügbar (wie in diesem Fall), können Sie dieselben Attribute für die Schlüssel- and Wertattribute wählen und eine 1:1-Zuordnung erstellen. Anschließend können Sie die Zielwerte bearbeiten, damit diese den in der Vorlagendatei (.dwg) gespeicherten AutoCAD-Blocknamen entsprechen.

Schritte:
  1. Klicken Sie auf Importieren.

    Der Workbench-Assistent wird aufgerufen.

    Der Workbench-Assistent

  2. Vergewissern Sie sich, dass für Dataset die Datenquelle "C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\nests.gdb" angegeben ist. Sie können auf die Schaltfläche Ändern klicken, um die Einstellungen anzuzeigen, und anschließend auf die Schaltfläche Abbrechen klicken, um das Dialogfeld zu schließen.
  3. Klicken Sie auf Weiter.
  4. Klicken Sie im Dialogfeld +++Feature-Typen auswählen auf den Feature-Typ NEST und dann auf Weiter.
  5. Klicken Sie im Dialogfeld Schlüsselattribut auf das Attribut COVER und dann auf Weiter.
  6. Klicken Sie im Dialogfeld Schlüsselattribut auf das Wertattribut COVER und dann auf Weiter.
  7. Klicken Sie im Dialogfeld +++Prüfe Attributwerte auf OK, wenn die Datenprüfung abgeschlossen ist.

    Workbench zeigt folgende Meldung an: 5 Sucheinträge gelesen. Klicken Sie auf OK.

  8. Geben Sie in das Textfeld Standardwert den Wert LOVSK ein.

    Während der Ausführung wird der Standardwert verwendet, wenn das Werkzeug feststellt, dass ein Attributwert nicht in der ValueMapper-Suchtabelle aufgeführt ist. Im Rahmen dieser Übung geben Sie einen in Vorlagenzeichnung gespeicherten AutoCAD-Blocknamen an.

  9. Doppelklicken Sie auf die einzelnen Werte in der rechten Spalte, und ersetzen Sie sie durch einen in der Vorlagenzeichnung gespeicherten AutoCAD-Blocknamen.
    AttributeValueMapper-Zuordnungen
  10. Sie können die Werte aus der folgenden Tabelle ausschneiden und einfügen:

    COVER-Attribut

    AutoCAD-Blockname

    rockKRYSS
    willowBARRTR
    coniferSTOMPKT
    bareLOVTR
  11. Klicken Sie auf OK.

    Das Dialogfeld AttributeValueMapper-Parameter wird geschlossen.

Verfügbarmachen der AutoCAD-Blockeigenschaften

Mit der Verfügbarmachung bestimmter AutoCAD-Blockeigenschaften für den Writer-Feature-Typ können Sie steuern, wie die Blockreferenzen in die Ausgabe-AutoCAD-Datei (.dwg) eingefügt werden.

Schritte:
  1. Klicken Sie auf die Schaltfläche Eigenschaften des Writer-Feature-Typs NESTS.

    Das Dialogfeld Feature-Typ-Eigenschaften wird geöffnet.

    Feature-Typ-Eigenschaften

  2. Klicken Sie auf die Registerkarte Formatattribute.
  3. Aktivieren Sie die Optionen für autocad_block_name, autocad_entity und autocad_rotation.
  4. Klicken Sie auf OK.

    Das Dialogfeld Feature-Typ-Eigenschaften wird geschlossen.

Verknüpfen von Eingaben für die verfügbar gemachten Formatattribute

Schritte:
  1. Erweitern Sie die Attributliste für den ValueMapper-Transformer und den Writer-Feature-Typ NESTS. Wechseln Sie zum Ende der Listen, und nehmen Sie die folgenden Verknüpfungen vor:

    ValueMapper-Verknüpfungen

  2. Verknüpfen Sie das ROTATION-Attribut mit dem autocad_rotation-Formatattribut.

    Dieses übergibt die Drehungswerte von den Quelldaten an den AutoCAD-Block.

  3. Verknüpfen Sie das block_name-Attribut mit dem autocad_block_name-Formatattribut.

    Hiermit werden die in der AttributeValueMapper-Suchtabelle mit dem DWG-Writer zugeordneten block_name-Werte übergeben.

  4. Klicken Sie mit der rechten Maustaste auf den Eingabepfeil (rot) für autocad_entity , und klicken Sie im Kontextmenü auf +++Konstante anhängen.

    Eine neue Konstante wird als Eingabe verknüpft.

  5. Doppelklicken Sie auf +++Neue Konstante, und geben Sie autocad_insert ein.

    Mit der Angabe der AutoCAD-Entität als autocad_insert wird eine Blockreferenz für jedes Ausgabe-Feature eingefügt. Die Geometrie (oder Symbologie) wird von den in der AutoCAD-Vorlagendatei (.dwg) gespeicherten Blockdefinitionen gespeichert, die Sie im nächsten Abschnitt angeben.

    HinweisHinweis:

    Alle an den DWG-Writer-Feature-Typ übergebenen Benutzerattribute werden als Blockattribute mit der Blockreferenz für jedes Feature eingefügt. Dies ist das Ergebnis, wenn der DWG-Writer-Parameter Attributausgabe auf Ignorieren festgelegt ist. Hiermit werden tatsächlich alle Attributdefinitionen ignoriert, die in den Blockdefinitionen in der Vorlagendatei gefunden wurden, und wird unterstützt, dass das Spatial ETL-Werkzeug steuert, welche Attribute in die Zeichnungsdatei geschrieben werden.

Festlegen der AutoCAD-Vorlagendatei

Die AutoCAD-Vorlagendatei enthält die von Ihnen in der ValueMapper-Suchtabelle angegebenen Blockdefinitionen.

Geben Sie den Vorlagendateipfad so an, dass er auf die template.dwg-Datei im Lernprogrammordner verweist.

Schritte:
  1. Erweitern Sie im Navigatorfenster den [ACAD]-Writer-Feature-Typ und den Parameter-Knoten.
  2. Klicken Sie mit der rechten Maustaste auf Vorlagendatei, und klicken Sie dann im Kontextmenü auf Parameter bearbeiten.

    Das Dialogfeld Parameter bearbeiten wird geöffnet.

  3. Klicken Sie auf die Schaltfläche Durchsuchen (...), und navigieren Sie zum Ordner "C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\template.dwg".
    Vorlagendateiparameter
  4. Klicken Sie im Dialogfeld Vorlagendatei auswählen auf template.dwg und dann auf Öffnen.
  5. Klicken Sie im Dialogfeld Parameter bearbeiten auf OK.

Werkzeug speichern und umbenennen

Speichern Sie Ihre Arbeit, beenden Sie Workbench, und benennen Sie dann das Werkzeug im Fenster Catalog um.

Schritte:
  1. Klicken Sie auf Datei > Speichern, um das Werkzeug zu speichern.
  2. Klicken Sie auf Datei > Beenden, um Workbench zu schließen.
  3. Klicken Sie mit der rechten Maustaste auf das neue Spatial ETL-Werkzeug im Fenster Katalog, klicken Sie auf Umbenennen, und geben Sie dann +++Verschachtelt mit AutoCAD ein.

Öffnen und Ausführen des Werkzeugs

Öffnen Sie das Werkzeug, legen Sie die Zieldateiparameter fest, und führen Sie das Werkzeug aus.

Schritte:
  1. Erweitern Sie im Fenster Katalog die Toolbox "+++Nests". Toolbox.
  2. Doppelklicken Sie auf das Werkzeug +++Verschachtelt mit AutoCAD.

    Das Dialogfeld +++Verschachtelt mit AutoCAD wird geöffnet.

    +++Verschachtelt mit AutoCAD

  3. Klicken Sie auf die Schaltfläche Durchsuchen für den Ordner, und navigieren Sie zum Ordner "C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\".
  4. Geben Sie im Dialogfeld Speichern unter +++nests in das Textfeld Dateiname ein, und klicken Sie auf Speichern. Der FME-Writer hängt die entsprechende Dateierweiterung an die Ausgabe an.
  5. Klicken Sie auf OK, um das Werkzeug auszuführen.

    Das Werkzeug führt die Konvertierung im Hintergrund aus. In der Fortschrittsleiste am unteren Rand der Karte wird der Name des Werkzeugs angezeigt. Sobald das Werkzeug die Ausführung beendet hat, wird eine Popup-Benachrichtigung in der Taskleiste angezeigt. Sie können die Details der Konvertierung im Fenster Ergebnisse überprüfen.

Hinzufügen der Daten zu ArcMap

Schritte:
  1. Erweitern Sie im Fenster Katalog das DWG-Dataset nests, ziehen Sie die Punkt-Feature-Class in ArcMap, um Ihre Ergebnisse zu überprüfen.

    Verschachteln mit AutoCAD-Ergebnissen

Kopieren und Umbenennen des Werkzeugs

Kopieren Sie das Werkzeug, und verwenden Sie es als Grundlage für ein zweites Werkzeug, mit dem eine Zeichnungsdatei und ein GML-Dataset mit dem Fanout By Attribute-Parameter generiert werden soll.

Schritte:
  1. Klicken Sie im Fenster Katalog mit der rechten Maustaste auf das Spatial ETL-Werkzeug +++Verschachtelt mit AutoCAD, und klicken Sie im Kontextmenü auf Kopieren.
  2. Klicken Sie mit der rechten Maustaste auf die Toolbox "Nests", und wählen Sie Einfügen.
  3. Klicken Sie mit der rechten Maustaste auf das Werkzeug +++Verschachtelt mit AutoCAD (2), klicken Sie auf Umbenennen, und geben Sie dann +++Verschachtelt mit AutoCAD und GML ein.
  4. Klicken Sie mit der rechten Maustaste auf das Werkzeug +++Verschachtelt mit AutoCAD und GML, und klicken Sie auf Bearbeiten.

    Workbench wird aufgerufen.

Hinzufügen eines Writers für GML

Fügen Sie einen zweiten Writer hinzu, der GML-Datasets erstellt, und verknüpfen Sie ihn mit der ValueMapper-Transformer-Ausgabe.

Schritte:
  1. Klicken Sie im Hauptmenü auf Writer > Writer hinzufügen.

    Das Dialogfeld Writer hinzufügen wird geöffnet.

    +++Writer hinzufügen

  2. Klicken Sie auf die Schaltfläche Durchsuchen für das Format, und wählen Sie GML (Geography Markup Language) aus der FME-Writer-Galerie.
  3. Klicken Sie auf die Schaltfläche Durchsuchen für das Dataset, und navigieren Sie zum Ordner "C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\".
  4. Geben Sie im Dialogfeld +++Datei wählen nests in das Textfeld Dateiname ein, und klicken Sie auf Speichern. Der FME-Writer hängt die entsprechende Dateierweiterung an die Ausgabe an.
  5. Navigieren Sie zum Ordner "C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\", geben Sie nests in das Testfeld Dateiname ein, und klicken Sie dann auf Speichern.
  6. Klicken Sie auf OK.

    Workbench fordert Sie zur Erstellung eines neuen Feature-Typs auf.

  7. Klicken Sie auf Nein.
  8. Anstatt einen Feature-Typ vollständig neu zu erstellen, kopieren Sie den AutoCAD-Feature-Typ und bearbeiten die Einstellungen.
  9. Klicken Sie mit der rechten Maustaste auf den AustoCAD-Ausgabe-Feature-Typ mit der Bezeichnung +++NESTS, und wählen Sie im Kontextmenü dann die Option Duplizieren.
  10. Verknüpfen Sie die ValueMapper-AUSGABE mit der Eingabe des neuen Ziel-Feature-Typs.

    Ziele-Features für GML

  11. Klicken Sie auf die Schaltfläche Eigenschaften des duplizierten Ziel-Feature-Typs NESTS. Nach Abschluss der Bearbeitung der Einstellungen, werden mit der QuickInfo Informationen ähnlich der voranstehenden Grafik angezeigt.

    Das Dialogfeld Feature-Typ-Eigenschaften wird geöffnet.

    Allgemeine Parameter für NESTS

  12. Geben Sie im Textfeld Feature-Typ-Name NESTS_gml ein.
  13. Aktivieren Sie das Kontrollkästchen Fanout By Attribute, klicken Sie auf den Pfeil und wählen Sie COVER.

    Mit der Fanout-Einstellung Ausgabedaten basierend auf dem Wert eines Attributs getrennt. Die Daten werden zur Laufzeit getrennt anstatt im Workspace generiert zu werden. In dieser Übung wird hiermit Ausgabe basierend auf dem Wert im COVER-Attributfeld generiert.

  14. Klicken Sie auf den Pfeil für Dataset, und wählen Sie nests [GML] aus.
  15. Klicken Sie auf OK.

    Das Dialogfeld Feature-Typ-Eigenschaften wird geschlossen.

Festlegen des Zielparameters für DWG-Datasets

Ein veröffentlichter Parameter ist ein Parameter (eine Einstellung), der (die) bei der Ausführung des Werkzeugs für die Änderung durch den Benutzer zur Verfügung gestellt wurde. Parameter werden im Spatial-ETL-Werkzeug-Dialogfeld als Textfelder angezeigt wie bei den meisten Geoverarbeitungswerkzeugen auch. Im Navigatorfenster sind sie mit einem purpurfarbenen Symbol gekennzeichnet.

Beim Hinzufügen des GML-Writer haben Sie diesen Parameter mit einem Standardzielpfad und -dateinamen festgelegt. In diesem Abschnitt wird dieser Parameter für DWG-Datasets mit einem Standardpfad und -dateinamen festgelegt.

Schritte:
  1. Erweitern Sie im Navigatorfenster den [ACAD]-Writer-Feature-Typ und den Parameter-Knoten.
    Veröffentlichter Parameter für DWG-Datasets
  2. Klicken Sie mit der rechten Maustaste auf Ziel, und klicken Sie dann im Kontextmenü auf Parameter bearbeiten.

    Das Dialogfeld +++Veröffentlichten Parameter bearbeiten wird geöffnet.

  3. Klicken Sie auf die Schaltfläche Durchsuchen (…), und navigieren Sie zum Ordner "C:\arcgis\ArcTutor\Data Interoperability\birds_eggs\".
  4. Geben Sie im Textfeld Dateiname nests ein, und klicken Sie auf Speichern.
  5. Klicken Sie auf OK, um das Dialogfeld Veröffentlichten Parameter bearbeiten zu schließen.

Öffnen und Ausführen des Werkzeugs

Schritte:
  1. Klicken Sie auf Datei > Speichern, um das Werkzeug zu speichern.
  2. Klicken Sie auf Datei > Beenden, um Workbench zu schließen.
  3. Erweitern Sie im Fenster Katalog die Toolbox "+++Nests". Toolbox.
  4. Doppelklicken Sie auf das Werkzeug +++Verschachtelt mit AutoCAD und GML.

    Das Dialogfeld +++Verschachtelt mit AutoCAD und GML wird geöffnet.

    +++Verschachtelt mit AutoCAD und GML

  5. Klicken Sie auf OK.

    Das Werkzeug führt die Konvertierung im Hintergrund aus. In der Fortschrittsleiste am unteren Rand der Karte wird der Name des Werkzeugs angezeigt. Sobald das Werkzeug die Ausführung beendet hat, wird eine Popup-Benachrichtigung in der Taskleiste angezeigt. Sie können die Details der Konvertierung im Fenster Ergebnisse überprüfen.

Hinzufügen der Daten zu ArcMap

Schritte:
  1. Ziehen Sie im Fenster Katalog das GML-Dataset nests in ArcMap, um Ihre Ergebnisse zu überprüfen.

    +++Verschachtelt mit AutoCAD und GML-Ergebnissen

Hiermit ist die Übung abgeschlossen.

Verwandte Themen

9/11/2013