Algunos datos sobre PyQGIS

Como es sabido, QGIS es un Sistema de Información Geográfica (GIS, por su referencia en inglés) de código libre para plataformas GNU/Linux, Unix, Mac OS y Microsoft Windows, que resulta amigable al usuario.

QGIS nos permite crear, visualizar y manejar datos de un mapa en el ordenador. Este software soporta formatos del tipo vector y ráster a través de las bibliotecas GDAL y OGR, así como bases de datos (que pueden ser extensibles p. ejm. desde PostgreSQL y PostGIS), al igual que algunos de los formatos comunes de datos espaciales (p. ejm.: ESRI ShapeFile, geotiff). Así mismo, QGIS nos permite ampliar las herramientas y capacidades estándar con las que cuenta a través del uso y desarrollo de complementos (plugins, en inglés).

QGIS está desarrollado en C++, usando la biblioteca Qt para su interfaz gráfica de usuario a través de los vínculos que le ofrecen PyQt y SIP, siendo esta última herramienta de software (SIP) la que permite la integración de complementos desarrollados tanto en C++ como en Python.

Como resultado de esta facilidad de integración nace PyQGIS, que es solo la mezcla de Python y QGIS, y hace referencia a la integración de estos componentes, como ya se ha explicado, para hacer factible el desarrollo de aplicaciones (complementos) en QGIS desde un lenguaje sencillo e ideal para la creación de scripts como es Python.

El desarrollo de complementos o aplicaciones personalizadas en PyQGIS está basado en el uso de la QGIS API (Interfaz de programación de aplicaciones de QGIS, por sus siglas en inglés), la misma que cuenta con diferentes métodos que se integran en clases, las que a su vez están comprendidas en 5 módulos.

La QGIS API  cuenta con los siguientes módulos:

1.    QGIS core library: Es la biblioteca central de QGIS y contiene toda la funcionalidad básica GIS.

Las clases de la biblioteca central de QGIS incluyen métodos para el diseño de vectores, edición de colores, identificación y almacenamiento de sistema de coordenadas, transformación del sistema referencial de coordenadas, entre otras funciones básicas de un GIS.

2.    QGIS gui library: Está construido en base a la biblioteca central y añade widgets de interfaz gráfica de usuario reutilizables.

Las clases de la biblioteca de interfaz gráfica de usuario de QGIS incluyen métodos para edición de características, edición de geometría (líneas, polígonos), visualización de caja de herramientas, selección de colores, visualización de cajas de diálogo, visualización de datos en el lienzo y en la leyenda, entre otras funciones relacionadas al desarrollo de una Interfaz Gráfica de Usuario en QGIS.

3.    QGIS analysis library: Construido en base a la biblioteca central, la biblioteca de análisis provee herramientas de alto nivel para llevar a cabo análisis espacial en datos ráster y vectoriales y rásters.

Las clases de la biblioteca de análisis de QGIS incluyen métodos para el análisis de la geometría de un vector (determinación del centroide, cálculo del área, creación de buffer, superposición de vectores, entre otros) y las funciones relacionadas al manejo de estos (creación de shapefiles, creación de polígono en función a características seleccionadas, entre otros)

4.    MapComposer

Las clases del módulo de composición de mapas de QGIS incluyen métodos para el renderizado (generación de imagen a través del motor de renderizado), creación de etiquetas, composición de leyenda, creación de grilla, visualización de archivos raster en el lienzo, visualización de caja de selección de colores y estilos, entre otros.

5.    QGIS network analysis library: La biblioteca de análisis de redes provee herramientas de alto nivel para construir la topología y analizarla.

Las clases de la biblioteca de análisis de redes incluyen métodos para la construcción de gráficas, la determinación de patrones en una imagen, la determinación de vértices, el conteo de vértices, implementación de bordes, entre otros.

Adicionalmente, puedes acceder a la biblioteca de Qt para el manejo de atributos y la edición de características de la interfaz gráfica de usuario.

A continuación te brindamos algunos enlaces donde podrás encontrar mayor información sobre los temas tratados en este infohatari:

Herramientas y softwares: http://www.riverbankcomputing.com
Bibliotecas y clases de la QGIS API: http://qgis.org/api/
Complementos para QGIS: http://plugins.qgis.org/
Qt: http://www.qt.io/about-us/
PyQt: https://wiki.python.org/moin/PyQt
SIP: http://pyqt.sourceforge.net/Docs/sip4/

Smiley face

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

Posted on April 30, 2015 .