Creación de un Plugin en Python para QGIS. Tutorial

Documentos relacionados
Transformación al sistema ETRS89 de ortofotos con rejilla NTv2 para la Comunidad Valenciana con Quantum GIS 2.2.0

a- En una vista con la proyección local (EPSG: 22185) añadir la capa (archivo shapefile). Figura 1 Capa de Departamentos en un vista EPSG:22185

Novedades gvsig Desktop 2.3

1. Descomprimir el archivo Datos Práctico 2.rar en C:\ Datos Práctico 2.

Práctica 2 Digitalización y uso del Google Earth Profesora: M. en B. Alma Delia Toledo Guzmán

MANUAL PARA LA TRANSFORMACION DE FORMATOS GIS A CAD CON CAMBIO DE SISTEMA DE REFERENCIA MEDIANTE QUANTUM GIS

MANUAL PARA LA TRANSFORMACION DE FORMATOS GIS A CAD CON CAMBIO DE SISTEMA DE REFERENCIA MEDIANTE LIBRERIAS GDAL

Curso online QGIS 2.18 'Las Palmas

Curso online PyQGIS (Python para QGIS)

MODULO 1. DESCARGA E INTERFAZ QGIS

Curso online QGIS 2.18 'Las Palmas

Curso online ArcGIS Pro y QGIS: las herramientas de mayor proyección

Cómo compilar un programa utilizando el Digital Visual Fortran Compiler? Seminario de Computación 2009 Juan Ruiz y Carlos Zotelo

cts=0&d=1

INSTALACIÓN DE GREENSTONE EN SISTEMAS LINUX

Georreferenciaciónn Con GIS y los complementos GeoCoding y OpenLayers Plugin

Curso online ArcGIS Pro y QGIS: las herramientas de mayor proyección

Curso online PyQGIS (Python para QGIS)

Curso online Experto en Sistemas de Información Geográfica: ArcGIS y QGIS

Curso online Experto en Sistemas de Información Geográfica: ArcGIS, gvsig y QGIS

Curso de Python en qgis. Cursos. grupo GIS. Formación. .com

Introducción. CURSO QSIG AEIG

ACCESO Y VISUALIZACIÓN DE DATOS

CURSO SIG Jueves 19 y Viernes 20 de Noviembre 2009 Dictado por la Ing. María del Huerto Mancilla, Ing. Marcelo Ledesma y Téc.

gvsig -Guía 2 Usamos el procedimiento habitual, cuidando que la proyección sea WGS 84 o sea EPSG 4326:

Sistemas de Información Geográfica Nivel Básico (4 ECTS)

PRÁCTICA: PROCEDIMIENTO DE IMÁGENES SATELITALES Y AÉREAS

Creando mapas en la web y visualizando información geospacial con CartoDB

pyqgis python para qgis 55 horas

EXTENSIÓN: Kosmo Desktop v2.0. Origen de datos KML

CURSO. Software a usar: Quantum GIS Fecha: Junio 24-27, 2014 Instructor: Ing. Leonardo Ruiz Lugar: Guadalajara Duración: 40 horas INVERSION: TEMARIO

ANÁLISIS ESPACIAL, SISTEMAS DE INFORMACIÓN GEOGRÁFICA Y ELABORACIÓN DE MAPAS EPIDEMIOLÓGICOS EN SALUD PÚBLICA

Curso online Aplicaciones GIS en la nube

Santa Marta, Colombia.

Curso online QGIS 2.10 Pisa

En el ejercicio actual se va a obtener un shapefile polígono de esta dirección:

INTRODUCCIÓN A LA MATEMÁTICA DISCRETA PRÁCTICA 1

Curso de Introducción a los SIG: Nivel 1 Orientado al uso de Sistemas de Navegación por Satélite (GNSS)

Desarrollo de un Sistema de Información Geográfico para la Gestión de Pólizas de Seguro Agrícola

CL 9 CLASE 9 SIG 5: TRANSFORMACIÓN DE FORMATOS CONTENIDO

NODO AMBIENTE INSTRUCTIVO DE USO COMO DIGITALIZAR EN GOOGLE CONVERSION A SHAPE CON GLOBAL MAPPER

Entrada/Salida. Introducción a la computación. Juan Manuel Pérez. (en base a slides de Maximiliano Geier) 04/05/2016

Creación de Shell Scripts

TEMARIO: SISTEMA DE INFORMACIÓN GEOGRÁFICA CON QGIS 2.18

MANUAL PARA LA TRANSFORMACION DE FORMATOS GIS A CAD CON CAMBIO DE SISTEMA DE REFERENCIA MEDIANTE ARCGIS

Tutorial de NetCDF. Copyright Esri All rights reserved.

CURSO DE Q GIS y GRASS NIVEL USUARIO

T U T O R I A L CÓMO TRANSFORMAR UN ARCHIVO DWG EN SHAPEFILE

El espacio geográfico puede ser representado por medio de dos grandes componentes:

ACCESO Y VISUALIZACIÓN DE DATOS OBIS y QGIS Venus Lorena Rocha

Curso online Aplicaciones GIS en la nube

Cursos. Grupo GIS. Formación. .com

Curso online de ArcGIS Pro

Ministerio del Poder Popular. Instituto Geográfico de Venezuela Simón Bolívar

GEOREFERENCIACIÓN DE IMAGEN CON QGIS Copiapó

Curso: Aplicación de QGIS en el medio ambiente

Es un lenguaje multiplataforma, ya que no solo se usa en Windows, sino que también se puede usar en Linux, MAC, etc.

Creación de Aplicaciones gráficas sencillas

DEMOSTRACION DE UNA APLICACIÓN N-CAPASCON JAVA- POSTGRESQL

Introducción a PyQt. Diego Sarmentero Software Freeeeedom Day!!

Laboratorio Virtual. Guía básica de uso Dirección de Informática Semestre Enero mayo 2016

Tratamiento geoespacial del recorrido de los trenes y tramos ferroviarios

ArcGIS. Medio Ambiente. aplicado al. Curso: 01 al 04 de Agosto de 2017 Ciudad de México, CDMX. Introducción. Objetivos.

Curso online PyQGIS (Python para QGIS)

Microsoft DOS. Manual de Usuario Básico. Luís Luzardo Marcos Patrón 1º SK Reparación PC. Microsoft DOS (Manual de Usuario Básico)

Facultad de Ingeniería Civil y Ambiental Herramientas para el manejo de información geográfica (vectorial).

Manual operativo para la utilización del sistema de información geográfica Quantum GIS 1.8

TEMARIO CURSO VIRTUAL Fundamentos básicos del Sistema de Información Geográfica ArcGIS

GCC para plataforma Windows

En esta clase crearemos los métodos que nos permitan establecer la comunicación, llevar información y buscar en la base de datos.

Guia Calles SRL Guiacalles.com / / Manual rápido del Software GIS Libre QUANTUM GIS

Tutorial: Python + Soap Web Service. Daniel Montenegro Cordero

Auxiliar GRASS GIS.

Manual para crear Llaves Privadas y Públicas en Windows.

INSTALACIÓN JDK. Guillermo Figueroa

Taller introducción base de datos geográfica

ArcGIS Centro de Recursos

GUÍA DOCENTE DE LA ASIGNATURA

Instrucciones para acceder a servicios WFS y GML Para ArcGIS, versión 9.3

GUIA PRACTICA PARA GEO REFERENCIAR IMÁGENES EN

Festival Latinoamericano de Instalación de Software Libre FLISOL. Autores: Esp. Luís Carlos Vargas Cogollo José Juan Hernández León

4.1 Conceptos Básicos de Matlab. Matlab es creado por The MathWorks, el cual es un idioma de alto rendimiento

Servicio FTP SERVICIOS DE RED

Programador Universitario en Informática UNSE FCEyT

Graphical User Interface (GUI)

Curso de Capacitación Básica en Sistemas de Información Geográfica

Servidores de Mapas con Mapserver. utilización n de software libre (Open Source)

MANUAL DE ADMINISTRACION DEL PLUGIN QGISSQL

Laboratorio de Geoinformación Departamento de Geofísica Facultad de Ciencias Físicas y Matemáticas Universidad de Chile

Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Topográfica

CURSO DE ESPECIALISTA EN QGIS Y GRASS MODALIDAD ONLINE. Cursos. Grupo GIS. Formación. .com

ANDRES LEONEL CESPEDES SISTEMA OPERATIVO II

Tutorial: Cómo descargar una imagen landsat 8?

Características. Interfaz Gráfica. Agenda. Agenda

Retículos y Álgebras de Boole

Tutorial Básico Cmake en Linux

CONEXIÓN A GEOSERVICIOS WMS y WFS MEDIANTE LA UTILIZACIÓN DE ArcGIS. MANUAL DE USUARIO (Versión 1.0)

AppStudio for ArcGIS

CL4 CLASE 4 MANEJO DE ARCGIS CONTENIDO

Word 2010 Manejo de archivos

Transcripción:

Creación de un Plugin en Python para QGIS. Tutorial TEC SIG ICO Malena Libman malena.libman@gmail.com

Dentro de la consola python, utilizamos algunas de las herramientas que ofrece GDAL/OGR para ciertos Geoprocesos como el cambio de proyección o la transformación de un tipo de archivo a otro.

1. Usamos el comando ogr2ogr para transformar un archivo del formato *.kml (Google Earth) a *.shp (ESRI Shape File) o para cambiar la proyección del archivo vectorial ogr2ogr -t_srs EPSG:32721 puntocel2.shp puntocel.shp ogr2ogr -f KML mypoints.kml sbpoints.shp sbpoints ogr2ogr -f "ESRI Shapefile" mypoints.shp sbpoints.kml ogr2ogr -f 'ESRI Shapefile' output.shp input.kml En lugar de utilizar el código EPSG, acá lo que se usó es la proyección desde un archivo de texto ogr2ogr -t_srs robisnon_ogcwkt.txt world_rob.shp world_wgs.shp

2. Utilizamos la función gdalwarp para modificar la proyección de imágenes (datos raster) gdalwarp -t_srs EPSG:4326 landsat5.tif landsat5_2.tif 3. Otra herramienta que encontramos útil fue, ogrinfo que nos sirvió para ver el sistema de coordenadas y proyección de una capa ogrinfo -al -so world_wgs.shp

En los primeros ejercicios de python, vimos las definiciones de operadores, variables, funciones y listas; a la vez que aprendimos a crear desde las funciones más básicas, como la cuadrática: def cuadratica (a, b, c, inicio, fin): x = inicio while x<= fin: y = a*x**2 + b*x + c print x, y x = x + 1 cuadratica (5, 4, 1, -1, 10) Hasta la realización de juegos mas complejos, que combinaban más de una función y la creación y operación de listas

GDAL es una librería traductora para el formato de datos Geoespaciales Raster y en conjunto con OGR, la librería de datos vectoriales, es utilizada como base para muchos programas SIG.

Uno de los ejemplos que trabajamos fue el de lectura de datos raster de una imagen satelital Landsat 5, en este caso leyendo una serie determinada de pixels para conocer su valor. import gdal, ogr, sys, os from gdalconst import * gdal.allregister() dataset = gdal.open("/home/malena/python/imsat/landsat5.tif", GA_ReadOnly) if dataset is None: print "Error abriendo el archivo" cuenta = dataset.rastercount print cuenta band = dataset.getrasterband (1) c = band.readasarray(0, 0, 10, 10) print c

Para poder utilizar las herramientas GDAL/OGR en el entorno de ArcMap 10.1, llevamos adelante los pasos detallados en el documento "Installing GDAL for Python on Windows. Luego se solucionaron una serie de problemas que surgieron de esa instalación. Lamentablemente, al intentar procesos complejos, como la creación de Buffers sobre polilíneas, el programa se quedaba una gran cantidad de tiempo intentando realizar la acción y nunca terminaba, hasta que Windows indicaba que debía cerrarse.

Como primer paso para crear nuestro propio Plugin para Quantum GIS desde el Sistema Operativo Windows 7, encontramos dos guías para desarrollar tal tarea. La primer guía que utilizamos es un documento en idioma inglés, que presentaba muchos errores. Presumiblemente ocasionados por fallas en la corrección del documento. A partir de ello utilizamos la guía publicada en el sitio oficial del programa Quantum GIS, llamada Cookbook.La guia oficial enlaza con dos sitios que a partir del ingreso de algunos datos sencillos (nombre, versión, etc.) genera la estructura básica de archivos necesaria para la creación de nuevos plugins (código fuente de la herramienta, icono de muestra, etc.). Una vez obtenidos los archivos de base, comenzamos a personalizarlos: Modificamos los datos básicos del plugin como su nombre y tambien creamos la función que va a hacer que se ejecute el plugin

GENERACIÓN DEL ÍCONO Para modificar el ícono que va a representar a nuestro plugin en el programa, guardamos la imagen que hayamos elegido en formato *.png en la carpeta de nuestro plugin con el nombre icon.png. Para poder compilar esta nueva imagen debemos utilizar el archivo resources.qrc. Este archivo *.qrc es necesario para utilizar la herramienta pyrcc4 que vectoriza la imagen en un archivo *.py, que contiene la ruta y nombre del archivo de imagen destinado a ser el ícono. Para ejecutar la herramienta pyrcc4 agregamos en las variables de entorno de Windows la ruta donde se encuentra pyrcc4.exe. Luego abrimos la consola de comandos de Windows. En el control de comandos tenemos que estar ubicados en la ruta donde se guarda la carpeta del Plugin. Allí ejecutamos el comando: pyrcc4 -o resources.py resources.qrc. Con ello ejecutamos la herramienta y le otorgamos el archivo de salida y el de entrada

FUNCIÓN PRINCIPAL El paso siguiente es agregar nuestro código a la función principal que va a estar en el archivo nombredelplugin.py, allí lo incorporamos a la función que corre el plugin. Para la implementación del plugin en cualquier máquina necesitamos modificar la ruta de localización del icono (cambia el nombre de usuario si sigue siendo windows7, pero si es otro SO hay que modificar la ruta completa) y crear en el disco D la carpeta python con los archivos de base o cambiar la ruta y el nombre de los mismo en caso que sean diferentes.

Su implementación en QGIS utilizando PyQT4 para la interfaz. Una herramienta muy útil para el diseño de interfaces y de pequeños widgets es el programa QT creator. El mismo nos permite crear la interfaz y almacenarla en lenguaje xml en un archivo *.ui. Para traducir este archivo al lenguaje Python utilizamos la herramienta PyQT4. Desde el archivo nombredelplugin.py detallamos a que acción corresponde cada elemento creado para la interfaz. Cuando terminamos de completar todas las acciones que deseamos que el plugin permita ejecutar, tenemos nuestra interfaz armada y nuestro plugin listo para ser utilizado.

Bibliografía y Recursos. Sistemas operativos, conceptos fundamentales. A. Silberschatz, J. Peterson, P. Galvin. Linux in a nutshell, a desktop quick reference. Ellen Siever 1999. Estructuras de datos. Cairó y Guardati. Algoritmos y estructura de datos. Niklaus Wirth Algoritmos, problemas resueltos y comentados. Joaquín Fernandez. 1992. Algoritmos y estructura de datos. Niklaus Wirth Geoprocessing with Python using Open Source GIS, http://www.gis.usu.edu/~chrisg/python/ OGR: OGRLayer Class Reference, http://www.gdal.org/ogr/classogrlayer.html GDAL: GDAL API Tutorial, http://www.gdal.org/gdal_tutorial.html GDAL: GDALRasterBand Class Reference, http://www.gdal.org/classgdalrasterband.html Estructuras de datos Tutorial de Python v2.7.0 documentation, http://docs.python.org.ar/tutorial/datastructures.html