El proyecto gvpy

Artículo escrito en colaboración con Óscar Martínez.

El proyecto gvpy es un proyecto promovido por Óscar Martínez de másquesig.com que ha comenzado en Mayo de 2014, gracias a la Beca Google Summer of Code 2014! El proyecto lleva el nombre “Acceso a los geoprocesos desde el módulo de Scripting en gvSIG Desktop 2.x”. También gracias al apoyo de OsGEO y gvSIG

En el proyecto gvpy se trata de desarrollar un nueva librería en Jython para gvSIG 2.x que permitirá lanzar geoprocesos desde cualquiera de nuestros scripts. Podremos ejecutar los Geoprocessos de gvSIG y SEXTANTE. Accediendo a estos geoprocesos con una simple linea, nuestros scripts se convertirán en herramientas mucho más potentes. Por ejemplo:

>>> gvpy.runalg(“gvSIG-xyshift”, LAYER=currentLayer(), X=150, Y=150, CHECK=False)

Además, un extra de la librería ‘gvpy’, es que simplificará el código necesario para programar scripts. Por ejemplo, si queremos añadir una columna a nuestra capa, será suficiente con:

>>> addField(currentLayer(), “Name”, “STRING”, 30)

El proyecto gvpy da respuesta a la necesidad de mejorar el módulo de Scripting de gvSIG 2 para realizar análisis espacial, con menos código y con acceso a toda la potencia de los geoprocesos ya existentes, tales como SEXTANTE, de uso muy común entre los usuarios.

Al permitir ejecutar SEXTANTE, se abre un nuevo camino a automatizar flujos de trabajo de una forma diferente al Modelizador de Procesos. Con gvpy, se podrán exportar estos procesos que los usuarios ya tienen creados, de formato .model a formato de script.

de modelizador a script

En la práctica, permitirá reducir y facilitar mucho la programación de scripts para gvSIG 2, además de aumentar su potencial al poder ejecutar SEXTANTE cuando queramos. Te permitirá ejecutar funciones de este tipo así de fácil:

layer1 = newLayer(layer,"C:/gvsig/point_shape.shp", 1) 
addFeature(layer1, "point", "01", [50,80]) 
modifyFeatures(layer1, "field1", "Points_gsoc") 
addField(layer1,"Name")
removeField(layer1,"Name")

O crear la imagen de abajo con un click ejecutando un script. Esta imagen, es el resultado de ejecutar el test_import_gvpy.py que explicaremos cómo ejecutar a continuación. No necesitas descargar ninguna capa de prueba, tan solo ejecutarás el script:

test_import_gvpy

Óscar ha creado esta web donde explica mejor su proyecto, para aquellos que desconozcan tanto gvSIG como el Módulo de Scripting.

Podrás encontrar el código en el que se está trabajando y la información más actualizada, así como las instrucciones para utilizarla aquí: https://github.com/oscar9/gvpy

Guía sobre cómo usar el módulo de ejecutar geoprocesos de SEXTANTE con una “gvpy: Guía de uso”. Con todas las opciones disponibles para lanzar geoprocesos desde el Módulo de Scripting.

¿Cómo comenzar a trabajar con gvpy?

  1. Necesitamos disponer de gvSIG 2.X con la extensión de scripting instalada.
  2. Descarga gvpy.py
  3. En Windows debes poner este archivo en la carpeta: C:\Users\[your name]\gvSIG\plugins\org.gvsig.scripting.app.extension\lib
  4. Abre gvSIG 2 Desktop, y ve al módulo de Scripting (menú superior Herramientas > Scripting > Scripting  Composer)
  5. Escribe delante de tus scripts: import gvpy

Ahora vamos a utilizarlo:

  1. Puedes descargar: src / test_import_gvpy.py 
  2. Abrir gvSIG 2.x. Ve al menú superior Herramientas > Scripting > Scripting  Composer.
  3. Crea una vista nueva.
  4. Copia el texto del archivo test_import_gvpy.py y pégalo dentro de un nuevo script.
  5. Hay comentarios en cada línea de código del script para ayudarnos a entender cómo funciona.

scripting composer

Apoyo

Si alguien quiere colaborar de cualquier forma, dándole consejos o ayudándole, estará encantado de escucharos. El proyecto aún se encuentra en fase de desarrollo y se va mejorando día a día.

Más información en el blog masquesig.com

Los comentarios sobre la herramienta en el email: masquesig@gmail.com

Los comentarios están cerrados.