PyWPS and external tools¶
GRASS GIS¶
PyWPS can handle all the management needed to setup temporal GRASS GIS
environemtn (GRASS DBASE, Location and Mapset) for you. You just need to
configure it in the pywps.Process
, using the parameter
grass_location
, which can have 2 possible values:
epsg:[EPSG_CODE]
- New temporal location is created using the EPSG code given. PyWPS will create temporal directory as GRASS Location and remove it after the WPS Execute response is constructed.
/path/to/grassdbase/location/
- Existing absolute path to GRASS Location directory. PyWPS will create temporal GRASS Mapset direcetory and remove it after the WPS Exceute response is constructed.
Then you can use Python - GRASS interfaces in the execute method, to make the work.
Note
Even PyWPS supports GRASS integration, the data still need to be
imported using GRASS modules v.in.*
or r.in.*
and also they have
to be exported manually at the end.
def execute(request, response):
from grass.script import core as grass
grass.run_command('v.in.ogr', input=request.inputs["input"][0].file,
...)
...
grass.run_command('v.out.ogr', input="myvector", ...)
Also do not forget to set gisbase
Configuration option.
OpenLayers WPS client¶
ZOO-Project¶
ZOO-Project provides both a server (C) and client (JavaScript) framework.