Beispiel für GP-Service: Wasserlaufnetz (Fortsetzung)

Komplexität: Einsteiger Erforderliche Daten: ArcGIS Tutorial Data Setup

Ordner

StreamNet2

Zweck

Benutzer können ein bereits berechnetes Netz herunterladen oder ein eigenes Netz erstellen.

Services

StoweStreamNetworksBasemap (Karten-Service) StoweStreamNetworkTasks (Geoverarbeitungs-Service).

Geoverarbeitungs-Tasks

Get Precomputed Stream Network, Create Stream Network.

Eingaben

Für den Task Get Precomputed Stream Network gibt der Benutzer einen Layer-Namen ein. Für Create Stream Network gibt der Benutzer die Mindest-Flussaufwärtsfläche in Hektar ein.

Ausgaben

Wasserlaufnetz

Daten

In diesem Beispiel werden digitale Höhendaten (Raster) und weitere Daten aus dem Spatial Analyst-Lernprogramm verwendet.

Erweiterungen

Spatial Analyst.

Hinweis

Layer-Symbologiedateien (.lyr) liefern der Client-Anwendung Informationen zum Darstellen der Ausgabe-Wasserlaufnetzwerke, wie unter Beispiel für GV-Service: Wassereinzugsgebiet beschrieben.

Besonderheiten dieses Beispiels

Entsprechender Ordner

C:\arcgis\ArcTutor\GP Service Examples\StreamNet2 enthält das fertige Modell und die fertigen Daten.

Besonderheiten dieses Beispiels

Grundlage dieses Beispiels ist der Task "Create Stream Network", der im Beispiel für GV-Service: Wasserlaufnetz erstellt wurde. Wie in diesem Beispiel erläutert, war der Hauptzweck des Tasks das Erzeugen eines Wasserlaufnetzes für die kartografische Anzeige, wobei es dem Benutzer ermöglicht wurde, mehrere unterschiedliche Netze zu erzeugen und schließlich ein Netz auszuwählen, das seinen Anforderungen entspricht. Im Task "Create Stream Network" wurden die Ergebnisse mit einem Karten-Service des Ergebnisses angezeigt.

In diesem Beispiel werden Wasserlaufnetz-Features auf den Client übertragen, um sie anzuzeigen. Da die Features an die Client-Anwendung übertragen werden, ist kein Karten-Service des Ergebnisses erforderlich. Der Service enthält zwei Tasks: einen Task zum Abrufen der bereits berechneten Netze und einen Task zum Erstellen eines neuen Netzes.

In der folgenden Abbildung werden das letztlich resultierende Inhaltsverzeichnis des Karten-Services StoweStreamNetworksBasemap und die Geoverarbeitungs-Tasks im Geoverarbeitungs-Service StoweStreamNetworkTasks dargestellt.

Grundkarte mit Geoverarbeitungs-Service

Mit dem Grundkarten-Service können Sie fünf bereits berechnete Netze anzeigen, deren Größenbereich 10 bis 50 Hektar beträgt. Es gibt zwei Geoverarbeitungs-Services:

Grundkarte

Unten ist das Inhaltsverzeichnis von StoweStreamNetworksBasemap.mxd zusammen mit der Toolbox StoweStreamNetworkTasks abgebildet, wie in der Ansicht Katalog dargestellt.

Kartendokument "Stowe Stream Networks"

Die fünf Wasserlaufnetz-Layer wurden mit dem Modell "Precompute a Stream Network" erstellt. Dies ist ein Hilfswerkzeug und keine Komponente des Geoverarbeitungs-Services. "Precompute a Stream Network" entspricht "Create Stream Network", mit folgenden Unterschieden:

Modell "Precompute a Stream Network"

Modelle

Der Inhalt von StoweStreamNetworkTasks.mxd ist unten abgebildet.

Kartendokument "Stowe Stream Network Tasks"

Das Inhaltsverzeichnis enthält dieselben bereits berechneten Wasserlaufnetz-Layer wie "StoweStreamNetworksBasemap.mxd". Diese Layer wurden wie folgt erstellt:

  1. Jeder Wasserlaufnetz-Layer in StoweStreamNetworksBasemap.mxd wurde im Verzeichnis "ToolData" als Layer-Datei gespeichert.
  2. Mit Daten hinzufügen Daten hinzufügen in StoweStreamNetworkTasks.mxd wurden dem Inhaltsverzeichnis die einzelnen weiter oben erstellten Layer-Dateien hinzugefügt.

"Get Precomputed Stream Network" ist ein einfaches Modell, das den Inhalt eines Feature-Layers in den Scratch-Workspace kopiert.

Modell "Get Precomputed Stream Network"

Die Eingabevariable Network to download ist vom Datentyp "Feature-Layer". Wenn der Task ausgeführt wird, werden alle auf Features basierenden Layer aufgelistet, und der Benutzer wählt einen Layer aus. (Die Raster-Layer werden nicht aufgelistet, weil sie keine Features sind. Auch werden keine Sublayer der Werkzeug-Layer aufgelistet, weil ArcGIS Server Werkzeug-Layer und ihre Sublayer automatisch aus der Liste der Feature-Layer ausfiltert.) Anschließend werden die zugrunde liegenden Features in den Scratch-Workspace kopiert und mit der in ToolData/Stream Network.lyr definierten Symbologie dargestellt, wenn sie zurück auf den Client übertragen werden.

Der Task "Create Stream Network" entspricht dem Task in Beispiel für GV-Service: Wasserlaufnetz, mit einem beachtenswerten Unterschied: Die Eigenschaft "Layer-Symbologie" der Ausgabevariablen Stream Network ist auf Stream Network.lyr festgelegt (siehe Abbildung unten).

Änderung des Modells "Create Stream Network"

Veröffentlichen

StoweStreamNetworksBasemap.mxd wird als Karten-Service veröffentlicht.

StoweStreamNetworkTasks.mxd wird als Geoverarbeitungs-Service veröffentlicht:

  1. Navigieren Sie im Fenster Katalog zum GIS-Server, klicken Sie mit der rechten Maustaste, und wählen Sie Neuen Service hinzufügen aus. Weisen Sie dem Service den Namen StoweStreamNetworkTasks zu, und wählen Sie als Typ Geoverarbeitungs-Service aus.
  2. Klicken Sie auf Weiter.
  3. Wählen Sie StoweStreamNetworkTasks.mxd als Quelle für den Service aus.
    • Ändern Sie die Maximale Anzahl der vom Server zurückgegebenen Datensätze auf 10000. Diese Änderung ist erforderlich, weil kein Karten-Service des Ergebnisses zum Darstellen der Ergebnisse vorhanden ist und die Features zurück auf den Client übertragen werden. Wenn Sie den Standardwert 1000 für die Anzahl der Datensätze beibehalten, wird von keinem der Tasks das gesamte Dataset zurückgegeben, weil alle Tasks mehr als 1000 Datensätze generieren.
    • Aktivieren Sie für Testzwecke Meldungen anzeigen.
  4. Klicken Sie auf Weiter. Von nun an können Sie die vom Assistenten angegebenen Standardwerte übernehmen.

Verwenden

Wenn Sie den Service verwenden möchten, starten Sie ArcMap mit einem leeren Dokument, und fügen Sie den Karten-Service StoweStreamNetworksBasemap sowie den Geoverarbeitungs-Service StoweStreamNetworkTasks hinzu. Öffnen Sie beide Tasks, und führen Sie sie aus. Wenn Sie von keinem der Tasks Ergebnisse erhalten, haben Sie wahrscheinlich den Parameter Maximale Anzahl der vom Server zurückgegebenen Datensätze nicht wie oben beschrieben auf eine große Zahl festgelegt.

Verwenden eines Bereichsfilters

Modellwerkzeugparameter können Filter aufweisen, mit denen Parameterwerte überprüft werden. Sie können für "Create Stream Network" den Parameter "Minimum upstream area in hectares" mit einem Bereichsfilter überprüfen. Mit Mindestflächen von unter 5 Hektar werden Tausende von Wasserlaufsegmenten erzeugt, sodass die Ausgabe unbrauchbar ist (zumindest für die kartografische Anzeige). Mit einem Filter können Sie verhindern, dass Werte unter 5 Hektar verarbeitet werden.

So legen Sie einen Bereichsfilter fest

  1. Klicken Sie im Fenster "Katalog" mit der rechten Maustaste auf das Werkzeug "Create Stream Network", und wählen Sie Eigenschaften aus. Alternativ können Sie, während "Create Stream Network" in ModelBuilder geöffnet ist, im Hauptmenü von ModelBuilder auf Modell und dann auf Modelleigenschaften klicken.
  2. Klicken Sie im Dialogfeld Eigenschaften auf die Registerkarte Parameter.
  3. Klicken Sie in den Parametern Minimum upstream area in hectares auf die Zelle Filter, und wählen Sie Bereich aus. Das Dialogfeld Bereich wird automatisch geöffnet.
  4. Geben Sie im Dialogfeld Bereich den Minimal- und Maximalwert ein.
Anwenden eines Bereichsfilters

Nachdem Sie diese Änderung am Modell "Create Stream Network" vorgenommen haben, müssen Sie den Service neu starten, damit die Änderung wirksam wird.

Nach diesen Änderungen wird immer eine Fehlermeldung angezeigt, wenn ein Wert kleiner als 5 eingegeben wird. Damit die Meldung für den Benutzer angezeigt wird, muss im Service Meldungen anzeigen aktiviert sein.

Verwandte Themen


3/6/2012