16#ifndef QGSMAPTOOLIDENTIFY_H
17#define QGSMAPTOOLIDENTIFY_H
60 DefaultQgsSetting = -1,
66 Q_ENUM( IdentifyMode )
75 AllLayers = VectorLayer | RasterLayer | MeshLayer | VectorTileLayer | PointCloudLayer
77 Q_DECLARE_FLAGS( LayerType, Type )
86 : mLayer( layer ), mFeature( feature ), mDerivedAttributes( derivedAttributes ) {}
88 IdentifyResult(
QgsMapLayer *layer,
const QString &label,
const QMap< QString, QString > &attributes,
const QMap< QString, QString > &derivedAttributes )
89 : mLayer( layer ), mLabel( label ), mAttributes( attributes ), mDerivedAttributes( derivedAttributes ) {}
92 : mLayer( layer ), mLabel( label ), mFields( fields ), mFeature( feature ), mDerivedAttributes( derivedAttributes ) {}
124 QList<QgsMapToolIdentify::IdentifyResult> identify(
int x,
int y,
const QList<QgsMapLayer *> &layerList = QList<QgsMapLayer *>(), IdentifyMode mode = DefaultQgsSetting,
const QgsIdentifyContext &identifyContext =
QgsIdentifyContext() );
137 QList<QgsMapToolIdentify::IdentifyResult> identify(
int x,
int y, IdentifyMode mode, LayerType layerType = AllLayers,
const QgsIdentifyContext &identifyContext =
QgsIdentifyContext() );
156 static void fromPointCloudIdentificationToIdentifyResults(
QgsPointCloudLayer *layer,
const QVector<QVariantMap> &identified, QList<QgsMapToolIdentify::IdentifyResult> &results )
SIP_SKIP;
164 void fromElevationProfileLayerIdentificationToIdentifyResults(
QgsMapLayer *layer,
const QVector<QVariantMap> &identified, QList<QgsMapToolIdentify::IdentifyResult> &results )
SIP_SKIP;
224 QMap< QString, QString > derivedAttributesForPoint(
const QgsPoint &point );
238 void setCanvasPropertiesOverrides(
double searchRadiusMapUnits );
245 void restoreCanvasPropertiesOverrides();
276 QString formatDistance(
double distance )
const;
283 QString formatArea(
double area )
const;
307 void closestPointAttributes(
const QgsAbstractGeometry &geometry,
const QgsPointXY &layerPoint, QMap< QString, QString > &derivedAttributes );
309 void formatCoordinate(
const QgsPointXY &canvasPoint, QString &x, QString &y )
const;
314 double mLastMapUnitsPerPixel;
318 int mCoordinatePrecision;
320 double mOverrideCanvasSearchRadius = -1;
DistanceUnit
Units of distance.
Abstract base class for all geometries.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Container of fields for a vector layer.
A geometry is the spatial representation of a feature.
A class for highlight features on the map.
Identify contexts are used to encapsulate the settings to be used to perform an identify action.
Map canvas is a class for displaying all GIS data types on a canvas.
Base class for all map layer types.
A QgsMapMouseEvent is the result of a user interaction with the mouse on a QgsMapCanvas.
Represents a mesh layer supporting display of data on structured or unstructured meshes.
Point cloud layer specific subclass of QgsMapLayerElevationProperties.
Represents a map layer supporting display of point clouds.
A class to represent a 2D point.
Point geometry type, with support for z-dimension and m-values.
Represents a raster layer.
A rectangle specified with double values.
Contains information about the context of a rendering operation.
Represents a vector layer which manages a vector based data sets.
Implements a map layer that is dedicated to rendering of vector tiles.
QList< QgsFeature > QgsFeatureList
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsField::ConfigurationFlags) CORE_EXPORT QDataStream &operator<<(QDataStream &out
Writes the field to stream out. QGIS version compatibility is not guaranteed.
Utility class for identifying a unique vertex within a geometry.