QGIS API Documentation  3.16.0-Hannover (43b64b13f3)
Public Types | Public Member Functions | List of all members
QgsLabelingEngineSettings Class Reference

Stores global configuration for labeling engine. More...

#include <qgslabelingenginesettings.h>

Public Types

enum  Flag {
  UseAllLabels = 1 << 1, UsePartialCandidates = 1 << 2, RenderOutlineLabels = 1 << 3, DrawLabelRectOnly = 1 << 4,
  DrawCandidates = 1 << 5, DrawUnplacedLabels = 1 << 6
}
 Various flags that affect drawing and placement of labels. More...
 
enum  PlacementEngineVersion { PlacementEngineVersion1, PlacementEngineVersion2 }
 Placement engine version. More...
 
enum  Search {
  Chain, Popmusic_Tabu, Popmusic_Chain, Popmusic_Tabu_Chain,
  Falp
}
 Search methods in the PAL library to remove colliding labels (methods have different processing speed and number of labels placed) More...
 

Public Member Functions

 QgsLabelingEngineSettings ()
 
void clear ()
 Returns the configuration to the defaults. More...
 
QgsRenderContext::TextRenderFormat defaultTextRenderFormat () const
 Returns the default text rendering format for the labels. More...
 
Flags flags () const
 Gets flags of the labeling engine. More...
 
double maximumLineCandidatesPerCm () const
 Returns the maximum number of line label candidate positions per centimeter. More...
 
double maximumPolygonCandidatesPerCmSquared () const
 Returns the maximum number of polygon label candidate positions per centimeter squared. More...
 
Q_DECL_DEPRECATED void numCandidatePositions (int &candPoint, int &candLine, int &candPolygon) const
 Gets number of candidate positions that will be generated for each label feature. More...
 
PlacementEngineVersion placementVersion () const
 Returns the placement engine version, which dictates how the label placement problem is solved. More...
 
void readSettingsFromProject (QgsProject *project)
 Read configuration of the labeling engine from a project. More...
 
Q_DECL_DEPRECATED Search searchMethod () const
 Which search method to use for removal collisions between labels. More...
 
void setDefaultTextRenderFormat (QgsRenderContext::TextRenderFormat format)
 Sets the default text rendering format for the labels. More...
 
void setFlag (Flag f, bool enabled=true)
 Sets whether a particual flag is enabled. More...
 
void setFlags (Flags flags)
 Sets flags of the labeling engine. More...
 
void setMaximumLineCandidatesPerCm (double candidates)
 Sets the maximum number of line label candidates per centimeter. More...
 
void setMaximumPolygonCandidatesPerCmSquared (double candidates)
 Sets the maximum number of polygon label candidates per centimeter squared. More...
 
Q_DECL_DEPRECATED void setNumCandidatePositions (int candPoint, int candLine, int candPolygon)
 Sets the number of candidate positions that will be generated for each label feature. More...
 
void setPlacementVersion (PlacementEngineVersion version)
 Sets the placement engine version, which dictates how the label placement problem is solved. More...
 
Q_DECL_DEPRECATED void setSearchMethod (Search s)
 Used to set which search method to use for removal collisions between labels. More...
 
void setUnplacedLabelColor (const QColor &color)
 Sets the color to use when rendering unplaced labels. More...
 
bool testFlag (Flag f) const
 Test whether a particular flag is enabled. More...
 
QColor unplacedLabelColor () const
 Returns the color to use when rendering unplaced labels. More...
 
void writeSettingsToProject (QgsProject *project)
 Write configuration of the labeling engine to a project. More...
 

Detailed Description

Stores global configuration for labeling engine.

Since
QGIS 3.0

Definition at line 30 of file qgslabelingenginesettings.h.

Member Enumeration Documentation

◆ Flag

Various flags that affect drawing and placement of labels.

Enumerator
UseAllLabels 

Whether to draw all labels even if there would be collisions.

UsePartialCandidates 

Whether to use also label candidates that are partially outside of the map view.

RenderOutlineLabels 

Whether to render labels as text or outlines. Deprecated and of QGIS 3.4.3 - use defaultTextRenderFormat() instead.

DrawLabelRectOnly 

Whether to only draw the label rect and not the actual label text (used for unit tests)

DrawCandidates 

Whether to draw rectangles of generated candidates (good for debugging)

DrawUnplacedLabels 

Whether to render unplaced labels as an indicator/warning for users.

Definition at line 34 of file qgslabelingenginesettings.h.

◆ PlacementEngineVersion

Placement engine version.

Since
QGIS 3.10.2
Enumerator
PlacementEngineVersion1 

Version 1, matches placement from QGIS <= 3.10.1.

PlacementEngineVersion2 

Version 2 (default for new projects since QGIS 3.12)

Definition at line 66 of file qgslabelingenginesettings.h.

◆ Search

Search methods in the PAL library to remove colliding labels (methods have different processing speed and number of labels placed)

Enumerator
Chain 
Popmusic_Tabu 
Popmusic_Chain 
Popmusic_Tabu_Chain 
Falp 

Definition at line 52 of file qgslabelingenginesettings.h.

Constructor & Destructor Documentation

◆ QgsLabelingEngineSettings()

QgsLabelingEngineSettings::QgsLabelingEngineSettings ( )

Definition at line 21 of file qgslabelingenginesettings.cpp.

Member Function Documentation

◆ clear()

void QgsLabelingEngineSettings::clear ( )

Returns the configuration to the defaults.

Definition at line 26 of file qgslabelingenginesettings.cpp.

◆ defaultTextRenderFormat()

QgsRenderContext::TextRenderFormat QgsLabelingEngineSettings::defaultTextRenderFormat ( ) const
inline

Returns the default text rendering format for the labels.

See also
setDefaultTextRenderFormat()
Since
QGIS 3.4.3

Definition at line 167 of file qgslabelingenginesettings.h.

◆ flags()

Flags QgsLabelingEngineSettings::flags ( ) const
inline

Gets flags of the labeling engine.

Definition at line 80 of file qgslabelingenginesettings.h.

◆ maximumLineCandidatesPerCm()

double QgsLabelingEngineSettings::maximumLineCandidatesPerCm ( ) const
inline

Returns the maximum number of line label candidate positions per centimeter.

See also
setMaximumLineCandidatesPerCm()
Since
QGIS 3.12

Definition at line 92 of file qgslabelingenginesettings.h.

◆ maximumPolygonCandidatesPerCmSquared()

double QgsLabelingEngineSettings::maximumPolygonCandidatesPerCmSquared ( ) const
inline

Returns the maximum number of polygon label candidate positions per centimeter squared.

See also
setMaximumPolygonCandidatesPerCmSquared()
Since
QGIS 3.12

Definition at line 108 of file qgslabelingenginesettings.h.

◆ numCandidatePositions()

Q_DECL_DEPRECATED void QgsLabelingEngineSettings::numCandidatePositions ( int &  candPoint,
int &  candLine,
int &  candPolygon 
) const
inline

Gets number of candidate positions that will be generated for each label feature.

Deprecated:
since QGIS 3.12 use maximumPolygonCandidatesPerCmSquared() and maximumLineCandidatesPerCm() instead.

Definition at line 122 of file qgslabelingenginesettings.h.

◆ placementVersion()

QgsLabelingEngineSettings::PlacementEngineVersion QgsLabelingEngineSettings::placementVersion ( ) const

Returns the placement engine version, which dictates how the label placement problem is solved.

See also
setPlacementVersion()
Since
QGIS 3.10.2

Definition at line 88 of file qgslabelingenginesettings.cpp.

◆ readSettingsFromProject()

void QgsLabelingEngineSettings::readSettingsFromProject ( QgsProject project)

Read configuration of the labeling engine from a project.

Definition at line 31 of file qgslabelingenginesettings.cpp.

◆ searchMethod()

Q_DECL_DEPRECATED Search QgsLabelingEngineSettings::searchMethod ( ) const
inline

Which search method to use for removal collisions between labels.

Deprecated:
since QGIS 3.10 - Chain is always used.

Definition at line 150 of file qgslabelingenginesettings.h.

◆ setDefaultTextRenderFormat()

void QgsLabelingEngineSettings::setDefaultTextRenderFormat ( QgsRenderContext::TextRenderFormat  format)
inline

Sets the default text rendering format for the labels.

See also
defaultTextRenderFormat()
Since
QGIS 3.4.3

Definition at line 178 of file qgslabelingenginesettings.h.

◆ setFlag()

void QgsLabelingEngineSettings::setFlag ( Flag  f,
bool  enabled = true 
)
inline

Sets whether a particual flag is enabled.

Definition at line 84 of file qgslabelingenginesettings.h.

◆ setFlags()

void QgsLabelingEngineSettings::setFlags ( Flags  flags)
inline

Sets flags of the labeling engine.

Definition at line 78 of file qgslabelingenginesettings.h.

◆ setMaximumLineCandidatesPerCm()

void QgsLabelingEngineSettings::setMaximumLineCandidatesPerCm ( double  candidates)
inline

Sets the maximum number of line label candidates per centimeter.

See also
maximumLineCandidatesPerCm()
Since
QGIS 3.12

Definition at line 100 of file qgslabelingenginesettings.h.

◆ setMaximumPolygonCandidatesPerCmSquared()

void QgsLabelingEngineSettings::setMaximumPolygonCandidatesPerCmSquared ( double  candidates)
inline

Sets the maximum number of polygon label candidates per centimeter squared.

See also
maximumPolygonCandidatesPerCmSquared()
Since
QGIS 3.12

Definition at line 116 of file qgslabelingenginesettings.h.

◆ setNumCandidatePositions()

Q_DECL_DEPRECATED void QgsLabelingEngineSettings::setNumCandidatePositions ( int  candPoint,
int  candLine,
int  candPolygon 
)
inline

Sets the number of candidate positions that will be generated for each label feature.

Deprecated:
since QGIS 3.12 use setMaximumPolygonCandidatesPerCmSquared() and setMaximumLineCandidatesPerCm() instead.

Definition at line 133 of file qgslabelingenginesettings.h.

◆ setPlacementVersion()

void QgsLabelingEngineSettings::setPlacementVersion ( PlacementEngineVersion  version)

Sets the placement engine version, which dictates how the label placement problem is solved.

See also
placementVersion()
Since
QGIS 3.10.2

Definition at line 93 of file qgslabelingenginesettings.cpp.

◆ setSearchMethod()

Q_DECL_DEPRECATED void QgsLabelingEngineSettings::setSearchMethod ( Search  s)
inline

Used to set which search method to use for removal collisions between labels.

Deprecated:
since QGIS 3.10 - Chain is always used.

Definition at line 144 of file qgslabelingenginesettings.h.

◆ setUnplacedLabelColor()

void QgsLabelingEngineSettings::setUnplacedLabelColor ( const QColor &  color)

Sets the color to use when rendering unplaced labels.

See also
unplacedLabelColor()
Since
QGIS 3.10

Definition at line 83 of file qgslabelingenginesettings.cpp.

◆ testFlag()

bool QgsLabelingEngineSettings::testFlag ( Flag  f) const
inline

Test whether a particular flag is enabled.

Definition at line 82 of file qgslabelingenginesettings.h.

◆ unplacedLabelColor()

QColor QgsLabelingEngineSettings::unplacedLabelColor ( ) const

Returns the color to use when rendering unplaced labels.

See also
setUnplacedLabelColor()
Since
QGIS 3.10

Definition at line 78 of file qgslabelingenginesettings.cpp.

◆ writeSettingsToProject()

void QgsLabelingEngineSettings::writeSettingsToProject ( QgsProject project)

Write configuration of the labeling engine to a project.

Definition at line 59 of file qgslabelingenginesettings.cpp.


The documentation for this class was generated from the following files: