Book Image

Mastering Geospatial Development with QGIS 3.x - Third Edition

By : Shammunul Islam, Simon Miles, Kurt Menke, GISP, Richard Smith Jr., GISP, Luigi Pirelli, John Van Hoesen, GISP
Book Image

Mastering Geospatial Development with QGIS 3.x - Third Edition

By: Shammunul Islam, Simon Miles, Kurt Menke, GISP, Richard Smith Jr., GISP, Luigi Pirelli, John Van Hoesen, GISP

Overview of this book

QGIS is an open source solution to GIS and widely used by GIS professionals all over the world. It is the leading alternative to proprietary GIS software. Although QGIS is described as intuitive, it is also, by default, complex. Knowing which tools to use and how to apply them is essential to producing valuable deliverables on time. Starting with a refresher on the QGIS basics and getting you acquainted with the latest QGIS 3.6 updates, this book will take you all the way through to teaching you how to create a spatial database and a GeoPackage. Next, you will learn how to style raster and vector data by choosing and managing different colors. The book will then focus on processing raster and vector data. You will be then taught advanced applications, such as creating and editing vector data. Along with that, you will also learn about the newly updated Processing Toolbox, which will help you develop the advanced data visualizations. The book will then explain to you the graphic modeler, how to create QGIS plugins with PyQGIS, and how to integrate Python analysis scripts with QGIS. By the end of the book, you will understand how to work with all aspects of QGIS and will be ready to use it for any type of GIS work.
Table of Contents (18 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Index

Exploring iface and QGis


The iface class used in the preceding snippets is important in every PyQGIS code; it is used to access most graphical QGIS components, from displayed layers to the toolbar buttons.

Note

The iface class is a Python wrapper for the C++ class, QgisInterface, which is documented at http://qgis.org/api/classQgisInterface.html. Most QGIS classes have a Qgs prefix. Some special classes can have the Qgis or QGis prefixes. The Qgs is the Qt namespace registered by Gary Sherman, the QGIS creator, so Qt (Q) and Gary Sherman (gs).

The most common use of the iface class is to get a reference of the canvas where maps are displayed:

canvas = iface.mapCanvas()

The class can also be used as a shortcut to load raster or vector layers; for example, loading the raster, path/to/my/raster.tif, and naming it myraster in the legend panel. This can be done by typing the following command:

iface.addRasterLayer("path/to/my/raster.tif", "myraster")

Note

Pay attention when writing paths with Windows...