Book Image

Mastering QGIS

Book Image

Mastering QGIS

Overview of this book

Table of Contents (18 chapters)
Mastering QGIS
Credits
Foreword
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Interacting with the map canvas


A plugin will commonly interact with the map canvas to get some useful information. This information could be, for example, point coordinates or features identified by these coordinates. We can use them to draw geometry entities like points, lines, or polygons.

Getting the map canvas

The QgsMapCanvas class is the class that represents a QGIS canvas. There can be different canvas instances, but the main canvas instance can be referenced with the following code snippet:

mapCanvas = iface.mapCanvas()

The QgsMapCanvas class generates some useful events to support location-based plugins. For example, xyCoordinates() sends point locations based on canvas coordinates and the keyPressed() event allows us to know which mouse button has been clicked on the canvas.

Explaining Map Tools

The most powerful method to interact with a map canvas class is to set one of the predefined Map Tools or create a custom one that is derived from the predefined Map Tools classes.

In this chapter...