QGIS API Documentation 3.32.0-Lima (311a8cb8a6)
qgslabelingresults.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslabelingresults.h
3 -------------------
4 begin : February 2021
5 copyright : (C) Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSLABELINGRESULTS_H
17#define QGSLABELINGRESULTS_H
18
19#include "qgis_core.h"
20#include "qgis_sip.h"
21#include "qgslabelposition.h"
22#include "qgscalloutposition.h"
23
24#include <memory>
25
26class QgsMapSettings;
28
34class CORE_EXPORT QgsLabelingResults
35{
36 public:
39
44
50 QList< QgsLabelPosition > allLabels() const;
51
55 QList<QgsLabelPosition> labelsAtPosition( const QgsPointXY &p ) const;
56
60 QList<QgsLabelPosition> labelsWithinRect( const QgsRectangle &r ) const;
61
67 QList<QgsLabelPosition> groupedLabelPositions( long long groupId ) const;
68
76 QList<QgsCalloutPosition> calloutsWithinRectangle( const QgsRectangle &rectangle ) const;
77
82 void setMapSettings( const QgsMapSettings &settings );
83
84 private:
85#ifdef SIP_RUN
87#endif
88
89 std::unique_ptr< QgsLabelSearchTree > mLabelSearchTree;
90
91 friend class QgsPalLabeling;
94};
95
96#endif // QGSLABELINGRESULTS_H
A class to query the labeling structure at a given point (small wrapper around pal RTree class)
Class that stores computed placement from labeling engine.
QgsLabelingResults(const QgsLabelingResults &)=delete
QgsLabelingResults cannot be copied.
QgsLabelingResults & operator=(const QgsLabelingResults &rh)=delete
QgsLabelingResults cannot be copied.
The QgsMapSettings class contains configuration for rendering of the map.
PAL labeling utilities.
A class to represent a 2D point.
Definition: qgspointxy.h:59
A rectangle specified with double values.
Definition: qgsrectangle.h:42
The QgsVectorLayerDiagramProvider class implements support for diagrams within the labeling engine.
The QgsVectorLayerLabelProvider class implements a label provider for vector layers.