Beispiel für GV-Service: Fahrzeitpolygone
Ordner |
DriveTimePolygons |
Zweck |
Erstellt Fahrzeitpolygone um Eingabepunkte für die angegebenen Fahrzeitwerte. |
Services |
|
Geoverarbeitungs-Task |
Calculate Drive Time Polygons |
Eingaben |
Ein digitalisierter Punkt und eine durch Leerzeichen getrennte Liste von Fahrzeitwerten in Minuten. |
Ausgaben |
Ein Fahrzeitpolygon, das an allen Punkten jeweils einem Eingabe-Fahrzeitwert entspricht. |
Daten |
Verwendet ein Straßennetz-Dataset für den Bereich San Francisco, das im Ordner "ToolData" bereitgestellt wird. |
Erweiterungen |
|
Hinweis |
Veranschaulicht grundlegende Schritte, die für einen Netzwerkanalyse-Workflow erforderlich sind. |
Entsprechender Ordner
C:\arcgis\ArcTutor\GP Service Examples\DriveTimePolygons enthält das fertige Modell und die fertigen Daten.
Der Task "Calculate Drive Time Polygons"
Der Hauptzweck des Tasks "Calculate Drive Time Polygons" ist das Erstellen von Fahrzeitpolygonen um vom Benutzer angegebene Punkte. Ein Fahrzeitpolygon ist ein Bereich, der alle zugänglichen Straßen umfasst, die innerhalb einer angegebenen Fahrzeit von diesem Punkt aus erreicht werden können. Mit Fahrzeitpolygonen kann die Erreichbarkeit eines Punktes in Bezug auf einige andere Merkmale überprüft werden. Beispielsweise lässt sich mit Fahrzeitpolygonen von einer, zwei und drei Minuten um den Standort eines Einzelhandelsgeschäfts bestimmen, welche Personen mit hoher Wahrscheinlichkeit in diesem Geschäft einkaufen.
Daten
Die Daten für dieses Beispiel stammen aus C:\arcgis\ArcTutor\GP Service Examples\DriveTimePolygons.
Netzwerk-Dataset
Der Ordner "ToolData" enthält die File-Geodatabase SanFrancisco.gdb. Diese Geodatabase enthält im Feature-Dataset "Transportation" das Netzwerk-Dataset Streets_ND. Dieses Netzwerk-Dataset bildet das Straßennetz des Bereichs San Francisco ab. Es stellt (unter anderem) das Netzwerkattribut TravelTime bereit, das die Fahrzeit zu jedem Straßenabschnitt in Minuten angibt.
Grundkarte
Der Grundkarten-Layer in SanFranciscoBasemap.mxd verfügt über den Layer "Streets" (siehe Abbildung unten). Dieser Layer stellt die Ausdehnung des Netzwerk-Datasets dar. Dies bedeutet, dass mit diesem Task nur Fahrzeitpolygone in dieser Ausdehnung bestimmt werden können.
SanFranciscoBaseMap.mxd wird als Karten-Service veröffentlicht.
Toolbox und Kartendokument
Die Toolbox für den Geoverarbeitungs-Service lautet DriveTimePolygonsService, und das Quellkartendokument für den Service lautet DriveTimePolygonsService.mxd. DriveTimePolygonsService.mxd enthält den Quelldaten-Layer "Streets_ND" (das Netzwerk-Dataset).
Modell
Überblick über das Modell
Das Modell "Calculate Drive Time Polygons" wird weiter unten dargestellt. Es gibt zwei Eingabevariablen:
- Bei Input Facilities handelt es sich um den Mittelpunkt der zu generierenden Fahrzeitpolygone. (In der Netzwerkanalyse bezeichnet eine Einrichtung oder "Facility" eine feste Position im Netzwerk, z. B. ein Gebäude oder den aktuellen Standort.)
- Drive Time Values ist eine durch Leerzeichen getrennte Liste von Fahrzeitwerten in Minuten.
Das Modell erstellt einen Netzwerkanalyse-Layer für das Einzugsgebiet, fügt die vom Benutzer digitalisierten Punkte als Einrichtungen hinzu und führt eine Berechnung aus, um die Fahrzeitpolygone zu bestimmen.
Element |
Type |
Beschreibung |
---|---|---|
Streets_ND |
Netzwerk-Dataset-Layer |
Der Netzwerk-Dataset-Layer. |
Drive Time Values |
Zeichenfolge, Eingabeparameter |
Eine durch Leerzeichen getrennte Liste von Fahrzeitwerten in Minuten. |
Werkzeug |
Erstellt einen Netzwerkanalyse-Layer für das Einzugsgebiet. Dieser Layer enthält Daten und Eigenschaften, die bestimmen, wie Einzugsgebiete berechnet werden, sowie die Berechnungsergebnisse. |
|
Service Area |
Netzwerkanalyse-Layer |
Einzugsgebiets-Layer. |
Input Facilities |
Feature-Set (Punkte), Eingabeparameter |
Punkt-Features, von denen ausgehend die Fahrzeitpolygone bestimmt werden. |
Werkzeug |
Fügt dem Einzugsgebiets-Layer die Eingabepunkte als Einrichtungen hinzu. |
|
Service Area (2) |
Netzwerkanalyse-Layer |
Einzugsgebiets-Layer mit Einrichtungen. |
Werkzeug |
Berechnet die Fahrzeitpolygone. |
|
Service Area (3) |
Netzwerkanalyse-Layer |
Einzugsgebiets-Layer mit den berechneten Fahrzeitpolygonen. |
SolveSucceeded | Boolesch | Die abgeleitete Ausgabe aus dem Werkzeug Berechnen, die angibt, ob die Berechnung erfolgreich war. |
Werkzeug |
Wählt den Sublayer "Polygons" aus dem Einzugsgebiets-Layer aus. |
|
Polygone |
Feature-Layer, Ausgabeparameter |
Der Layer "Polygons" aus dem Netzwerkanalyse-Layer "Service Area (3)". |
Workflow bei der Netzwerkanalyse
Dieses Modell veranschaulicht die vier Schritte des Workflows, der bei der Ausführung von Netzwerkanalysen üblich ist.
- Erstellen Sie einen Netzwerkanalyse-Layer.
- Fügen Sie einer oder mehreren Netzwerkanalyseklassen Standorte hinzu.
- Berechnen Sie den Netzwerkanalyse-Layer.
- Verwenden Sie nach dem Berechnen die Ergebnisse.
Verwenden des Netzwerk-Layers
Das Netzwerk-Dataset für das Gebiet San Francisco wird dem Kartendokument DriveTimePolygonsService.mxd als Netzwerk-Layer (Streets_ND) hinzugefügt. Dieser Layer wird im Modell als Eingabevariable für das Werkzeug Einzugsgebiets-Layer erstellen verwendet. Durch die Verwendung eines Netzwerk-Layers wird die Gesamtausführungszeit des Modells wesentlich verringert, da durch den Netzwerk-Layer eine Verbindung mit dem Netzwerk-Dataset offen gehalten wird. Wenn hingegen auf das Netzwerk-Dataset von dessen Speicherort auf der Festplatte verwiesen wird, wird bei jeder Ausführung des Modells eine Verbindung mit dem Netzwerk-Dataset hergestellt. Hierdurch wird die Performance des mit dem Modell erstellten Geoverarbeitungs-Services verringert.
Modellprozesse
Mit dem Werkzeug Einzugsgebiets-Layer erstellen wird der neue Network Analyst-Layer (NA) ServiceArea erstellt, in dem die Analyse-Eigenschaften gespeichert werden, der auf den für die Analyse verwendeten Netzwerk-Dataset-Layer Streets_ND verweist und in dem die Eingabe-Einrichtungen und Ausgabepolygone gespeichert werden. Das Netzwerk-Dataset verfügt über das Netzwerkkostenattribut TravelTime, das die zum Durchfahren der einzelnen Straßenabschnitte erforderliche Fahrzeit angibt. Dieses Attribut wird als Impedanz-Attribut verwendet. Die Standard-Unterbrechungswerte werden als durch Leerzeichen getrennte Werteliste aus der Variablen Drive Time Values gelesen.
Für diesen Service wurden mit der Option "NO_MERGE" überlappende Polygone pro Einrichtung erstellt, die nicht zusammengeführt werden. Es wurde die Option "RINGS" verwendet, sodass die Polygone für jeden Fahrzeitwert als Ringe dargestellt werden. Hierdurch werden die Polygone erzeugt, die die Fläche von der vorherigen Unterbrechung bis zum Grenzwert für die Unterbrechung umfassen und nicht die Fläche der kleineren Unterbrechungen enthalten.
Mit dem Werkzeug Standorte hinzufügen werden dem Einzugsgebiets-Layer die vom Benutzer digitalisierten Punkte als Einrichtungen hinzugefügt. Der Parameter Input Facilities ist vom Datentyp "Feature-Set", sodass das Modell die vom Benutzer digitalisierten Punkte interaktiv als Einrichtungen übernehmen kann. Das Schema und die Symbologie für das Feature-Set werden aus der Datei InputFacilities.lyr im Ordner "ToolData" abgeleitet.
Das Werkzeug Berechnen berechnet das Einzugsgebiet auf der Grundlage der im Eingabe-Einzugsgebiets-Layer angegebenen Optionen und generiert die Fahrzeitpolygone. Die berechneten Polygone werden in den Sublayer "Polygons" des Ausgabe-Einzugsgebiets-Layers geschrieben.
Network Analyst-Layer sind keine unterstützten Ausgabeparameter-Datentypen für ArcGIS Server-Clients. Daher wird der Sublayer "Polygons" mit dem Werkzeug Daten auswählen aus dem Einzugsgebiets-Layer abgerufen. Der Sublayer "Polygons" ist vom Datentyp "Feature-Layer".
Werkzeug-Layer
Der Werkzeug-Layer Calculate Drive Time Polygons wird erstellt, indem das Modell in das Inhaltsverzeichnis von ArcMap gezogen wird. Testen Sie das Modell vor dem Veröffentlichen wie folgt:
- Erstellen Sie den Werkzeug-Layer.
- Klicken Sie mit der rechten Maustaste auf den Werkzeug-Layer, und klicken Sie auf Öffnen. Das Werkzeugdialogfeld wird geöffnet.
- Geben Sie einen Punkt und Entfernungen für die Fahrzeit ein, z. B. 1 2 3, und klicken Sie auf OK.
Die Fahrzeitpolygone werden dem Werkzeug-Layer als Sublayer hinzugefügt.
Die Ausgabe des Modells Calculate Drive Time Polygons ist ein Feature-Layer. Bei der Ausgabe eines Feature- oder Raster-Layers durch ein Modell wird der Ausgabe-Layer dem Werkzeug-Layer ohne Änderungen hinzugefügt, d. h., die von Ihnen im Werkzeug-Sublayer definierte Symbologie wird ignoriert. Um dies zu überprüfen, können Sie das folgende Experiment ausführen:
- Nachdem Sie den Werkzeug-Layer geöffnet und ausgeführt haben, klicken Sie mit der rechten Maustaste auf den Sublayer "Polygons", und klicken Sie auf Eigenschaften.
- Klicken Sie auf die Registerkarte Symbologie.
- Ändern Sie die Symbologie in ein einzelnes Symbol (beispielsweise eine blaue Polygonfüllung).
Der Sublayer "Polygons" wird jetzt mit einer Einzelfarbe statt mit abgestuften Farben dargestellt.
- Öffnen Sie den Werkzeug-Layer, und führen Sie ihn aus.
Der Sublayer "Polygons" wird erneut mit abgestuften Farben dargestellt.
Wie unter dem Thema Definieren der Ausgabesymbologie für Geoverarbeitungs-Tasks erläutert, hat bei der Ausgabe eines Layers durch ein Modell die Symbologie im Layer Vorrang vor der Symbologie des Werkzeug-Layers. Der Grund für diese Regel ist, dass einige Werkzeuge, z. B. Einzugsgebiets-Layer erstellen, Layer ausgeben, die benutzerdefinierte Symbologie enthalten. Wenn Sie die benutzerdefinierte Symbologie beibehalten möchten, wird die Symbologie im Werkzeug-Sublayer ignoriert. Wenn Sie die Symbologie der Fahrzeitpolygone ändern möchten, muss das Modell "Calculate Drive Time Polygons" statt eines Feature-Layers eine Feature-Class ausgeben. Dies lässt sich einfach erreichen, indem dem Modell das Werkzeug Features kopieren hinzugefügt und die Variable Polygone als Eingabe für Features kopieren verwendet wird.
Veröffentlichen
SanFranciscoBaseMap.mxd wird als Karten-Service veröffentlicht. DriveTimePolygonsService.mxd wird wie folgt als Geoverarbeitungs-Service ohne Karten-Service des Ergebnisses veröffentlicht:
- Klicken Sie im Fenster Katalog mit der rechten Maustaste auf SanFranciscoBaseMap.mxd, und klicken Sie auf Mit ArcGIS Server veröffentlichen.
- Übernehmen Sie alle Standardeinstellungen.
- Navigieren Sie im Fenster Katalog zur Anmeldung als Administrator beim Server unter dem Knoten GIS-Server, klicken Sie mit der rechten Maustaste, und wählen Sie dann Neuen Service hinzufügen aus. Weisen Sie dem Service den Namen DriveTimePolygonsService zu, und wählen Sie als Typ Geoverarbeitungs-Service aus.
- Klicken Sie auf Weiter.
- Wählen Sie im nächsten Fenster Asynchron als Ausführungstyp aus. Wählen Sie für Die vom Geoverarbeitungs-Service bereitgestellten Werkzeuge sind gespeichert in die Option Einer Karte aus, und geben Sie DriveTimePolygonsService.mxd als Kartendokument an. Da Sie den Service testen, aktivieren Sie Meldungen anzeigen.
- Klicken Sie auf Weiter. Von nun an können Sie die vom Assistenten angegebenen Standardwerte übernehmen und den Service erstellen.
Verwenden
- Starten Sie ArcMap mit einem leeren Dokument.
- Erstellen Sie eine Benutzerverbindung zu ArcGIS Server im Fenster Katalog, wenn noch keine besteht.
- Fügen Sie dem Inhaltsverzeichnis von ArcMap den Karten-Service SanFranciscoBaseMap hinzu.
- Erweitern Sie im Fenster Katalog unter dem Knoten GIS-Server der Benutzerverbindung die Toolbox DriveTimePolygonsService, und öffnen Sie das Werkzeug "Calculate Drive Time Polygons", indem Sie darauf doppelklicken. In der Abbildung unten wird das Ergebnis dieser Schritte dargestellt:
- Fügen Sie einen Punkt hinzu, um einen Einrichtungsstandort zu erstellen. Geben Sie als Fahrzeitwerte 2 3 4 an, und klicken Sie auf OK, um den Task auszuführen.
Nach dem Ausführen des Tasks enthält das Inhaltsverzeichnis wie unten dargestellt den Ausgabe-Layer "Polygons".
- Nehmen Sie die Gelegenheit wahr, im Fenster Ergebnisse das Ergebnis des Tasks zu überprüfen (siehe Abbildung unten).