You are here: Wiki>Geoprocessing Web>2015-03-11-FOSSGIS-Workshop (11 Mar 2015, BenjaminPross)Edit Attach

FOSSGIS 2015 WPS Workshop


Introduction

FOSSGIS 2015 WPS Workshop Hands-on Aufgaben

Vorbereitungen

  • Starten Sie die Console LXTerminal.png und geben Sie folgenden Befehl ein:

     sudo sh Downloads/commands.sh
     
Das Passwort lautet user

Prozess Ergebnis in GeoServer Instanz speichern

Der Weg ist im Quickstart beschrieben:

http://live.osgeo.org/de/quickstart/52nWPS_quickstart.html

Hinweis: Leider hat sich im Quickstart ein Fehler eingeschlichen. Um das Beispiel korrekt ausführen zu können, muss der WFSGenerator angepasst und aktiviert werden.

Öffnen Sie dazu die WPS Admin Console: http://localhost:8080/52nWPS/webAdmin/index.jsp

Nutzername: wps
Passwort: wps

Öffnen Sie das Generators-Tab und scrollen Sie zum WFSGenerator. Setzen Sie einen Haken bei Active und editieren Sie den GeoServer _port. Dieser lautet 8082. Nach einem Klick auf Save and Activate Configuration wird der WPS neu gestartet. Danach können Sie das Quickstart-Beispiel ausführen.

Java Prozess hochladen

Öffnen Sie die WPS Admin Console: http://localhost:8080/52nWPS/webAdmin/index.jsp

Nutzername: wps
Passwort: wps

Klicken Sie auf den Button Upload Process

Fügen Sie den folgenden Text in das Textfeld ein:

org.n52.wps.server.algorithm.jts.JTSBufferAlgorithm

Upload_process2.png

Klicken Sie anschließend auf Browse und öffnen Sie die JTSBufferAlgorithm.java Datei, die im Download -Verzeichnis liegt:

Upload_process3.png

Klicken Sie auf Submit Query, der Prozess wird nun hochgeladen und kompiliert. Öffnen Sie in der Admin Console den Tab Algorithm Repositories und scrollen Sie zum LocalAlgorithmRepository.

2015-03-11-045505_800x600_scrot.png

Fügen Sie den neuen Prozess hinzu add.png.

2015-03-11-045522_800x600_scrot.png

Speichern Sie save.png. Nach einem Klick auf Save and Activate Configuration oben in der Admin Console wird der Prozess aktiviert.

Hochgeladenen Prozess testen

Wenn Sie möchten, können Sie den Prozess nun testen. Öffnen Sie dazu das OpenLayers-Beispiel:

http://localhost:8080/openlayers-example/wps.html

2015-03-11-045651_800x600_scrot.png

In der Prozess-Liste sollte der JTSBufferAlgorithm erscheinen. Wählen Sie ihn aus.

2015-03-11-045800_800x600_scrot.png

Nun erstellen Sie eine beliebige Geometrie auf der OpenLayers-Karte.

2015-03-11-045837_800x600_scrot.png

Markieren Sie die Geometrie anschließend (Klicken Sie zuerst auf das rechte Stift-Symbol und anschließend auf die Geometrie).

Klicken Sie in die data-Textbox. Die Geometrie sollte daraufhin dort im WKT-Format erscheinen. Füllen Sie die anderen Inputs aus, endCapStyle und distance (in Metern) sind hierbei notwendig.

2015-03-11-045900_800x600_scrot.png

Nach einem Klick auf Execute sollte die gepufferte Geometrie auf der Karte erscheinen.

2015-03-11-045909_800x600_scrot.png

R backend einrichten

Öffnen Sie die Console: LXTerminal.png Geben Sie die folgenden Kommandos ein:
sudo R

Passwort: user

install.packages("Rserve")

Mirror auswählen, z.B. Germany(Münster)

InstallRserve.png

install.packages("sos4R")

install.packages("xts")

library(Rserve)

Rserve()

Öffnen Sie die WPS Admin Console: http://localhost:8080/52nWPS/webAdmin/index.jsp

Nutzername: wps
Passwort: wps

Algorithm Repositories Tab öffnen und zum LocalRAlgorithmRepository scrollen.

RRepo.png

Setzen Sie den Haken bei Active. Nach einem Klick auf Save and Activate Configuration wird der WPS neugestartet. Anschließend sind die WPS4R Prozesse verfügbar.

Rufen Sie die Capabilities des WPS auf, die R Prozesse sollten angezeigt werden:

http://localhost:8080/52nWPS/WebProcessingService?Request=GetCapabilities&Service=WPS

Sie können sich den Prozess org.n52.wps.server.r.demo.timeseriesPlot ansehen:

http://localhost:8080/52nWPS/WebProcessingService?request=DescribeProcess&service=WPS&version=1.0.0&identifier=org.n52.wps.server.r.demo.timeseriesPlot

Das dem Prozess zugrundeliegende R-Skript kann unter folgender Adresse betrachtet werden:

http://localhost:8080/52nWPS/R/scripts/demo_timeseries-plot.R

Öffnen Sie die R Timeseries Demo:

http://localhost:8080/52nWPS/R/demo/ImageRendering.html

EIn Kick auf den Knopf "create time series plot" fragt den PegelOnline SOS an und erstellt ein Diagram, das den Wasserstand sowie eine angepasste Regressionslinie enthält.

2015-03-11-052209_800x600_scrot.png

GRASS 7 backend einrichten

Öffnen Sie die WPS Admin Console: http://localhost:8080/52nWPS/webAdmin/index.jsp

Nutzername: wps
Passwort: wps

Öffen Sie den Tab Algorithm Repositories und scrollen Sie zum GrassRepository. Setzen Sie den Haken bei Active und modifizieren Sie die Properties des Repositories wie folgt:

  • Property "GISRC_Dir" = /home/user/grassdata/.grassrc70
  • Property "Grass_Home" = /usr/lib/grass70
  • Property "ModuleStarter_Home" = /home/user/wps-grass-bridge-patched/gms
  • Property "Python_Home" = /usr/bin
  • Property "Python_Path" = /usr/lib/python2.7
  • Property "TMP_Dir" = /tmp/grass_tmp
GrasRepo.png

Nach einem Klick auf Save and Activate Configuration wir der WPS neugestartet. Anschließend sind die GRASS 7 Prozesse verfügbar.

GRASS 7 WPS Prozess mit QGIS ausführen

Öffnen Sie die Datei elev_srtm_30m.tif aus der heruntergeladenen Zip-Datei mit QGIS.

2015-03-11-052954_800x600_scrot.png

In QGIS, Menüpunkt Plugins anklicken -> Manage and Install Plugins...

QGIS8.png

Installieren Sie das WPS Client Plugin

QGIS2.png

WPS Client Plugin sollte unten Links in QGIS erscheinen. Andernfalls Klicken Sie auf den Menü-Punkt Web -> WPS-Client -> WPS-Client.

QGIS3.png

Klicken Sie auf connect. Klicken Sie anschließend auf New um einen neuen WPS Server anzulegen.

Name z.B: 52nWPS

URL: http://localhost:8080/52nWPS/WebProcessingService

2015-03-11-053045_800x600_scrot.png

Nach einem auf Ok und anschließend Connect sollten die Prozesse des lokalen WPS angezeigt werden.

QGIS7.png

Den r.watershed Prozess auswählen, durch Doppelklick rufen Sie den Dialog für diesen Prozess auf.

2015-03-11-053359_800x600_scrot.png

Für den Input elevation das voreingestellte elev_srtm_30m Rasterlayer nehmen. Die anderen Rasterinputs (depression, flow, disturbed_land, blocking) auf <None> setzen. Für den Parameter threshold z.B. 1000 eingeben. Alle Prozessoutputs bis auf basin auf <None> setzen.

Ein Klick auf Run startet den WPS Prozess.

2015-03-11-053432_800x600_scrot.png
I Attachment Action Size Date Who Comment
2015-03-11-045505_800x600_scrot.pngpng 2015-03-11-045505_800x600_scrot.png manage 107 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045522_800x600_scrot.pngpng 2015-03-11-045522_800x600_scrot.png manage 111 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045540_800x600_scrot.pngpng 2015-03-11-045540_800x600_scrot.png manage 87 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045651_800x600_scrot.pngpng 2015-03-11-045651_800x600_scrot.png manage 262 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045704_800x576_scrot.pngpng 2015-03-11-045704_800x576_scrot.png manage 249 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045800_800x600_scrot.pngpng 2015-03-11-045800_800x600_scrot.png manage 240 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045837_800x600_scrot.pngpng 2015-03-11-045837_800x600_scrot.png manage 275 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045844_800x600_scrot.pngpng 2015-03-11-045844_800x600_scrot.png manage 254 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045900_800x600_scrot.pngpng 2015-03-11-045900_800x600_scrot.png manage 249 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-045909_800x600_scrot.pngpng 2015-03-11-045909_800x600_scrot.png manage 285 K 11 Mar 2015 - 04:42 BenjaminPross  
2015-03-11-051936_800x600_scrot.pngpng 2015-03-11-051936_800x600_scrot.png manage 116 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-052209_800x600_scrot.pngpng 2015-03-11-052209_800x600_scrot.png manage 165 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-052954_800x600_scrot.pngpng 2015-03-11-052954_800x600_scrot.png manage 185 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053022_800x600_scrot.pngpng 2015-03-11-053022_800x600_scrot.png manage 48 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053045_800x600_scrot.pngpng 2015-03-11-053045_800x600_scrot.png manage 67 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053050_800x600_scrot.pngpng 2015-03-11-053050_800x600_scrot.png manage 49 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053349_800x600_scrot.pngpng 2015-03-11-053349_800x600_scrot.png manage 97 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053359_800x600_scrot.pngpng 2015-03-11-053359_800x600_scrot.png manage 96 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053429_800x600_scrot.pngpng 2015-03-11-053429_800x600_scrot.png manage 184 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053432_800x600_scrot.pngpng 2015-03-11-053432_800x600_scrot.png manage 140 K 11 Mar 2015 - 04:43 BenjaminPross  
2015-03-11-053533_800x600_scrot.pngpng 2015-03-11-053533_800x600_scrot.png manage 95 K 11 Mar 2015 - 04:43 BenjaminPross  
GrasRepo.pngpng GrasRepo.png manage 79 K 11 Mar 2015 - 05:03 BenjaminPross  
InstallRserve.pngpng InstallRserve.png manage 111 K 11 Mar 2015 - 07:55 BenjaminPross  
LXTerminal.pngpng LXTerminal.png manage 1 K 10 Mar 2015 - 13:33 BenjaminPross  
QGIS1.pngpng QGIS1.png manage 87 K 11 Mar 2015 - 04:57 BenjaminPross  
QGIS2.pngpng QGIS2.png manage 101 K 11 Mar 2015 - 04:57 BenjaminPross  
QGIS3.pngpng QGIS3.png manage 96 K 11 Mar 2015 - 04:57 BenjaminPross  
QGIS7.pngpng QGIS7.png manage 123 K 11 Mar 2015 - 05:08 BenjaminPross  
QGIS8.pngpng QGIS8.png manage 285 K 11 Mar 2015 - 05:12 BenjaminPross  
RRepo.pngpng RRepo.png manage 77 K 11 Mar 2015 - 04:58 BenjaminPross  
Upload_process2.pngpng Upload_process2.png manage 28 K 11 Mar 2015 - 03:51 BenjaminPross  
Upload_process3.pngpng Upload_process3.png manage 27 K 11 Mar 2015 - 03:51 BenjaminPross  
add.pngpng add.png manage 703 bytes 11 Mar 2015 - 04:57 BenjaminPross  
save.pngpng save.png manage 821 bytes 11 Mar 2015 - 04:57 BenjaminPross  
Topic revision: r6 - 11 Mar 2015, BenjaminPross
Legal Notice | Privacy Statement


This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Wiki? Send feedback