Class: QgsMapMouseEvent¶
- class qgis.gui.QgsMapMouseEvent¶
Bases:
PyQt5.QtGui.QMouseEvent
A
QgsMapMouseEvent
is the result of a user interaction with the mouse on aQgsMapCanvas
. It is sent whenever the user moves, clicks, releases or double clicks the mouse. In addition to the coordinates in pixel space it also knows the coordinates in the mapcanvas’ CRS as well as it knows the concept of snapping.QgsMapMouseEvent(mapCanvas:
QgsMapCanvas
, event: QMouseEvent) Creates a newQgsMapMouseEvent
. Should only be required to be called from the QgsMapCanvas.- Parameters:
mapCanvas – The map canvas on which the event occurred
event – The original mouse event
QgsMapMouseEvent(mapCanvas:
QgsMapCanvas
, type: QEvent.Type, pos: QPoint, button: Qt.MouseButton = Qt.NoButton, buttons: Union[Qt.MouseButtons, Qt.MouseButton] = Qt.NoButton, modifiers: Union[Qt.KeyboardModifiers, Qt.KeyboardModifier] = Qt.NoModifier) Creates a newQgsMapMouseEvent
. Should only be required to be called from the QgsMapCanvas.- Parameters:
mapCanvas – The map canvas on which the event occurred
type – The type of the event
pos – The pixel position of the mouse
button – The pressed button
buttons – Further buttons that are pressed
modifiers – Keyboard modifiers
QgsMapMouseEvent(
QgsMapMouseEvent
)Methods
Returns
True
if there is a snapped point cached.mapPoint returns the point in coordinates
Returns the matching data from the most recently snapped point.
Returns the original, unmodified map point of the mouse cursor.
The unsnapped, real mouse cursor position in pixel coordinates.
The snapped mouse cursor in pixel coordinates.
Set the (snapped) point this event points to in map coordinates.
snapPoint will snap the points using the map canvas snapping utils configuration
Snaps the mapPoint to a grid with the given
precision
.- isSnapped(self) bool ¶
Returns
True
if there is a snapped point cached. Will only be useful after snapPoint has previously been called.- Return type:
bool
- Returns:
True
if there is a snapped point cached.
- mapPoint(self) QgsPointXY ¶
mapPoint returns the point in coordinates
- Return type:
- Returns:
the point in map coordinates, after snapping if requested in the event.
- mapPointMatch(self) QgsPointLocator.Match ¶
Returns the matching data from the most recently snapped point.
- Return type:
- Returns:
the snapping data structure
Note
This method returns the most recent snap match. It must follow a call to
snapPoint()
in order to have a recent snap result available.
- originalMapPoint(self) QgsPointXY ¶
Returns the original, unmodified map point of the mouse cursor.
- Return type:
- Returns:
The cursor position in map coordinates.
- originalPixelPoint(self) QPoint ¶
The unsnapped, real mouse cursor position in pixel coordinates. Alias to
pos()
- Return type:
QPoint
- Returns:
Mouse position in pixel coordinates
- pixelPoint(self) QPoint ¶
The snapped mouse cursor in pixel coordinates.
- Return type:
QPoint
- Returns:
The snapped mouse cursor position in pixel coordinates.
- setMapPoint(self, point: QgsPointXY)¶
Set the (snapped) point this event points to in map coordinates. The point in pixel coordinates will be calculated accordingly.
- Parameters:
point (QgsPointXY) – The point in map coordinates
- snapPoint(self) QgsPointXY ¶
snapPoint will snap the points using the map canvas snapping utils configuration
Note
if snapping did not succeeded, the map point will be reset to its original position
- Return type:
- snapToGrid(self, precision: float, crs: QgsCoordinateReferenceSystem)¶
Snaps the mapPoint to a grid with the given
precision
. The snapping will be done in the specifiedcrs
. If this crs is different from the mapCanvas crs, it will be reprojected on the fly.New in version 3.4.
- Parameters:
precision (float) –
crs (QgsCoordinateReferenceSystem) –