Class: QgsMapToolExtent

class qgis.gui.QgsMapToolExtent

Bases: QgsMapTool

A map tool that emits an extent from a rectangle drawn onto the map canvas.

New in version 3.0.

QgsMapToolExtent(canvas: QgsMapCanvas) constructor

Methods

activate

canvasMoveEvent

param e

canvasPressEvent

param e

canvasReleaseEvent

param e

childEvent

clearRubberBand

Removes the tool's rubber band from the canvas.

connectNotify

customEvent

deactivate

disconnectNotify

extent

Returns the current extent drawn onto the canvas.

flags

rtype

QgsMapTool.Flags

isSignalConnected

layer

Returns the map layer with the matching ID, or None if no layers could be found.

ratio

Returns the current fixed aspect ratio to be used when dragging extent onto the canvas.

receivers

sender

senderSignalIndex

setRatio

Sets a fixed aspect ratio to be used when dragging extent onto the canvas.

setToolName

Sets the tool's name.

timerEvent

toCanvasCoordinates

Transforms a point from map coordinates to screen coordinates.

toLayerCoordinates

Transforms a point from screen coordinates to layer coordinates.

toLayerCoordinatesV2

Transforms a point from map coordinates to layer coordinates.

toMapCoordinates

Transforms a point from screen coordinates to map coordinates.

toMapCoordinatesV2

Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used).

Signals

extentChanged

signal emitted on extent change [signal]

activate(self)
canvasMoveEvent(self, e: QgsMapMouseEvent)
Parameters

e (QgsMapMouseEvent) –

canvasPressEvent(self, e: QgsMapMouseEvent)
Parameters

e (QgsMapMouseEvent) –

canvasReleaseEvent(self, e: QgsMapMouseEvent)
Parameters

e (QgsMapMouseEvent) –

childEvent(self, QChildEvent)
clearRubberBand(self)

Removes the tool’s rubber band from the canvas.

New in version 3.20.

connectNotify(self, QMetaMethod)
customEvent(self, QEvent)
deactivate(self)
disconnectNotify(self, QMetaMethod)
extent(self) QgsRectangle

Returns the current extent drawn onto the canvas.

Return type

QgsRectangle

extentChanged

signal emitted on extent change [signal]

Parameters

extent (QgsRectangle) –

flags(self) QgsMapTool.Flags
Return type

QgsMapTool.Flags

isSignalConnected(self, QMetaMethod) bool
layer(self, id: str) QgsMapLayer

Returns the map layer with the matching ID, or None if no layers could be found.

This method searches both layers associated with the map canvas (see QgsMapCanvas.layers()) and layers from the QgsProject associated with the canvas. It can be used to resolve layer IDs to layers which may be visible in the canvas, but not associated with a QgsProject.

New in version 3.22.

ratio(self) QSize

Returns the current fixed aspect ratio to be used when dragging extent onto the canvas. If the aspect ratio isn’t fixed, the width and height will be set to zero.

Return type

QSize

receivers(self, PYQT_SIGNAL) int
sender(self) QObject
senderSignalIndex(self) int
setRatio(self, ratio: QSize)

Sets a fixed aspect ratio to be used when dragging extent onto the canvas. To unset a fixed aspect ratio, set the width and height to zero.

Parameters

ratio (QSize) – aspect ratio’s width and height

setToolName(self, name: str)

Sets the tool’s name.

See also

toolName()

New in version 3.20.

timerEvent(self, QTimerEvent)
toCanvasCoordinates(self, point: QgsPointXY) QPoint

Transforms a point from map coordinates to screen coordinates.

toLayerCoordinates(self, layer: QgsMapLayer, point: QPoint) QgsPointXY

Transforms a point from screen coordinates to layer coordinates.

toLayerCoordinates(self, layer: QgsMapLayer, point: QgsPointXY) -> QgsPointXY Transforms a point from map coordinates to layer coordinates.

toLayerCoordinates(self, layer: QgsMapLayer, rect: QgsRectangle) -> QgsRectangle Transforms a rect from map coordinates to layer coordinates.

toLayerCoordinatesV2(self, layer: QgsMapLayer, point: QgsPoint) QgsPoint

Transforms a point from map coordinates to layer coordinates.

Note

This method is available in the Python bindings as toLayerCoordinatesV2.

toMapCoordinates(self, point: QPoint) QgsPointXY

Transforms a point from screen coordinates to map coordinates.

toMapCoordinates(self, layer: QgsMapLayer, point: QgsPointXY) -> QgsPointXY Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used).

toMapCoordinatesV2(self, layer: QgsMapLayer, point: QgsPoint) QgsPoint

Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used).

Note

This method is available in the Python bindings as toMapCoordinatesV2.