Subgroup: Map

Class: QgsMapToolIdentify

class qgis.gui.QgsMapToolIdentify(canvas: QgsMapCanvas)

Bases: qgis._gui.QgsMapTool

constructor

Map tool for identifying features in layers

after selecting a point, performs the identification: - for raster layers shows value of underlying pixel - for vector layers shows feature attributes within search radius (allows editing values when vector layer is in editing mode)

Methods

activate
canvasMoveEvent
canvasPressEvent
canvasReleaseEvent
childEvent
connectNotify
customEvent
deactivate
disconnectNotify
flags
formatChanged
identify Performs the identification.
identifyLayer Call the right method depending on layer type
identifyMenu Returns a pointer to the identify menu which will be used in layer selection mode this menu can also be customized
identifyRasterLayer
identifyVectorLayer
isSignalConnected
receivers
sender
senderSignalIndex
timerEvent
toCanvasCoordinates
toLayerCoordinates
toMapCoordinates
toMapCoordinatesV2

Signals

changedRasterResults changedRasterResults(self, Iterable[QgsMapToolIdentify.IdentifyResult]) [signal]
identifyMessage identifyMessage(self, str) [signal]
identifyProgress identifyProgress(self, int, int) [signal]

Attributes

ActiveLayer
AllLayers
DefaultQgsSetting
LayerSelection
RasterLayer
TopDownAll
TopDownStopAtFirst
VectorLayer
ActiveLayer = 0
AllLayers = 3
DefaultQgsSetting = -1
class IdentifyMode

Bases: int

baseClass

alias of QgsMapToolIdentify

class IdentifyResult

Bases: sip.wrapper

Constructor for IdentifyResult

QgsMapToolIdentify.IdentifyResult(layer: QgsMapLayer, feature: QgsFeature, derivedAttributes: Dict[str, str])

QgsMapToolIdentify.IdentifyResult(layer: QgsMapLayer, label: str, attributes: Dict[str, str], derivedAttributes: Dict[str, str])

QgsMapToolIdentify.IdentifyResult(layer: QgsMapLayer, label: str, fields: QgsFields, feature: QgsFeature, derivedAttributes: Dict[str, str])

QgsMapToolIdentify.IdentifyResult(QgsMapToolIdentify.IdentifyResult)

mAttributes
mDerivedAttributes
mFeature
mFields
mLabel
mLayer
mParams
LayerSelection = 3
class LayerType

Bases: sip.wrapper

QgsMapToolIdentify.LayerType(Union[QgsMapToolIdentify.LayerType, QgsMapToolIdentify.Type]) QgsMapToolIdentify.LayerType(QgsMapToolIdentify.LayerType)

baseClass

alias of QgsMapToolIdentify

RasterLayer = 2
TopDownAll = 2
TopDownStopAtFirst = 1
class Type

Bases: int

VectorLayer = 1
activate(self)
canvasMoveEvent(self, e: QgsMapMouseEvent)
canvasPressEvent(self, e: QgsMapMouseEvent)
canvasReleaseEvent(self, e: QgsMapMouseEvent)
changedRasterResults

changedRasterResults(self, Iterable[QgsMapToolIdentify.IdentifyResult]) [signal]

childEvent()
connectNotify()
customEvent()
deactivate(self)
disconnectNotify()
flags(self) → QgsMapTool.Flags
formatChanged(self, layer: QgsRasterLayer)
identify(self, x: int, y: int, layerList: Iterable[QgsMapLayer] = [], mode: QgsMapToolIdentify.IdentifyMode = QgsMapToolIdentify.DefaultQgsSetting) → List[QgsMapToolIdentify.IdentifyResult]

Performs the identification.

Parameters:
  • x – x coordinates of mouseEvent
  • y – y coordinates of mouseEvent
  • layerList – Performs the identification within the given list of layers. Default value is an empty list, i.e. uses all the layers.
  • mode – Identification mode. Can use Qgis default settings or a defined mode. Default mode is DefaultQgsSetting.
Returns:

a list of IdentifyResult*

identify(self, x: int, y: int, mode: QgsMapToolIdentify.IdentifyMode, layerType: Union[QgsMapToolIdentify.LayerType, QgsMapToolIdentify.Type] = QgsMapToolIdentify.AllLayers) -> List[QgsMapToolIdentify.IdentifyResult] Performs the identification. To avoid being forced to specify IdentifyMode with a list of layers this has been made private and two publics methods are offered

Parameters:
  • x – x coordinates of mouseEvent
  • y – y coordinates of mouseEvent
  • mode – Identification mode. Can use Qgis default settings or a defined mode.
  • layerType – Only performs identification in a certain type of layers (raster, vector). Default value is AllLayers.
Returns:

a list of IdentifyResult*

identify(self, geometry: QgsGeometry, mode: QgsMapToolIdentify.IdentifyMode, layerType: Union[QgsMapToolIdentify.LayerType, QgsMapToolIdentify.Type]) -> List[QgsMapToolIdentify.IdentifyResult] Performs identification based on a geometry (in map coordinates)

identify(self, geometry: QgsGeometry, mode: QgsMapToolIdentify.IdentifyMode, layerList: Iterable[QgsMapLayer], layerType: Union[QgsMapToolIdentify.LayerType, QgsMapToolIdentify.Type]) -> List[QgsMapToolIdentify.IdentifyResult] Performs identification based on a geometry (in map coordinates)

identify(self, x: int, y: int, mode: QgsMapToolIdentify.IdentifyMode, layerList: Iterable[QgsMapLayer], layerType: Union[QgsMapToolIdentify.LayerType, QgsMapToolIdentify.Type] = QgsMapToolIdentify.AllLayers) -> List[QgsMapToolIdentify.IdentifyResult] Performs the identification. To avoid being forced to specify IdentifyMode with a list of layers this has been made private and two publics methods are offered

Parameters:
  • x – x coordinates of mouseEvent
  • y – y coordinates of mouseEvent
  • mode – Identification mode. Can use Qgis default settings or a defined mode.
  • layerList – Performs the identification within the given list of layers.
  • layerType – Only performs identification in a certain type of layers (raster, vector).
Returns:

a list of IdentifyResult*

identifyLayer(self, results: Iterable[QgsMapToolIdentify.IdentifyResult], layer: QgsMapLayer, point: QgsPointXY, viewExtent: QgsRectangle, mapUnitsPerPixel: float, layerType: Union[QgsMapToolIdentify.LayerType, QgsMapToolIdentify.Type] = QgsMapToolIdentify.AllLayers) → bool

Call the right method depending on layer type

identifyMenu(self) → QgsIdentifyMenu

Returns a pointer to the identify menu which will be used in layer selection mode this menu can also be customized

identifyMessage

identifyMessage(self, str) [signal]

identifyProgress

identifyProgress(self, int, int) [signal]

identifyRasterLayer(self, results: Iterable[QgsMapToolIdentify.IdentifyResult], layer: QgsRasterLayer, point: QgsPointXY, viewExtent: QgsRectangle, mapUnitsPerPixel: float) → bool
identifyVectorLayer(self, results: Iterable[QgsMapToolIdentify.IdentifyResult], layer: QgsVectorLayer, point: QgsPointXY) → bool
isSignalConnected()
receivers()
sender()
senderSignalIndex()
timerEvent()
toCanvasCoordinates()
toLayerCoordinates()
toMapCoordinates()
toMapCoordinatesV2()