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.
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:
Ó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
¿Cómo comenzar a trabajar con gvpy?
- Necesitamos disponer de gvSIG 2.X con la extensión de scripting instalada.
- Descarga gvpy.py
- En Windows debes poner este archivo en la carpeta: C:\Users\[your name]\gvSIG\plugins\org.gvsig.scripting.app.extension\lib
- Abre gvSIG 2 Desktop, y ve al módulo de Scripting (menú superior Herramientas > Scripting > Scripting Composer)
- Escribe delante de tus scripts: import gvpy
Ahora vamos a utilizarlo:
- Puedes descargar: src / test_import_gvpy.py
- Abrir gvSIG 2.x. Ve al menú superior Herramientas > Scripting > Scripting Composer.
- Crea una vista nueva.
- Copia el texto del archivo test_import_gvpy.py y pégalo dentro de un nuevo script.
- Hay comentarios en cada línea de código del script para ayudarnos a entender cómo funciona.
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
Licenciado en Geografía. Máster en Sistemas de Información Geográfica. Consultor GIS desde el año 2004. En MappingGIS desde el año 2012 para ayudarte a impulsar tu perfil GIS y diferenciarte de la competencia. Echa un vistazo a todos nuestros cursos de SIG online.
Los comentarios están cerrados.