QGIS API Documentation  2.17.0-Master (bf77d09)
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
QgsPalLayerSettings Class Reference

#include <qgspallabeling.h>

Public Types

enum  DataDefinedProperties {
  Size = 0, Bold = 1, Italic = 2, Underline = 3,
  Color = 4, Strikeout = 5, Family = 6, FontStyle = 21,
  FontSizeUnit = 22, FontTransp = 18, FontCase = 27, FontLetterSpacing = 28,
  FontWordSpacing = 29, FontBlendMode = 30, MultiLineWrapChar = 31, MultiLineHeight = 32,
  MultiLineAlignment = 33, DirSymbDraw = 34, DirSymbLeft = 35, DirSymbRight = 36,
  DirSymbPlacement = 37, DirSymbReverse = 38, NumFormat = 39, NumDecimals = 40,
  NumPlusSign = 41, BufferDraw = 42, BufferSize = 7, BufferUnit = 43,
  BufferColor = 8, BufferTransp = 19, BufferJoinStyle = 44, BufferBlendMode = 45,
  ShapeDraw = 46, ShapeKind = 47, ShapeSVGFile = 48, ShapeSizeType = 49,
  ShapeSizeX = 50, ShapeSizeY = 85, ShapeSizeUnits = 51, ShapeRotationType = 52,
  ShapeRotation = 53, ShapeOffset = 54, ShapeOffsetUnits = 55, ShapeRadii = 56,
  ShapeRadiiUnits = 57, ShapeTransparency = 63, ShapeBlendMode = 64, ShapeFillColor = 58,
  ShapeBorderColor = 59, ShapeBorderWidth = 60, ShapeBorderWidthUnits = 61, ShapeJoinStyle = 62,
  ShadowDraw = 65, ShadowUnder = 66, ShadowOffsetAngle = 67, ShadowOffsetDist = 68,
  ShadowOffsetUnits = 69, ShadowRadius = 70, ShadowRadiusUnits = 71, ShadowTransparency = 72,
  ShadowScale = 73, ShadowColor = 74, ShadowBlendMode = 75, CentroidWhole = 76,
  OffsetQuad = 77, OffsetXY = 78, OffsetUnits = 80, LabelDistance = 13,
  DistanceUnits = 81, OffsetRotation = 82, CurvedCharAngleInOut = 83, PositionX = 9,
  PositionY = 10, Hali = 11, Vali = 12, Rotation = 14,
  RepeatDistance = 84, RepeatDistanceUnit = 86, Priority = 87, PredefinedPositionOrder = 91,
  ScaleVisibility = 23, MinScale = 16, MaxScale = 17, FontLimitPixel = 24,
  FontMinPixel = 25, FontMaxPixel = 26, IsObstacle = 88, ObstacleFactor = 89,
  ZIndex = 90, Show = 15, AlwaysShow = 20
}
 
enum  DirectionSymbols { SymbolLeftRight, SymbolAbove, SymbolBelow }
 
enum  LinePlacementFlags { OnLine = 1, AboveLine = 2, BelowLine = 4, MapOrientation = 8 }
 Line placement flags, which control how candidates are generated for a linear feature. More...
 
enum  MultiLineAlign { MultiLeft = 0, MultiCenter, MultiRight, MultiFollowPlacement }
 
enum  ObstacleType { PolygonInterior, PolygonBoundary, PolygonWhole }
 Valid obstacle types, which affect how features within the layer will act as obstacles for labels. More...
 
enum  OffsetType { FromPoint, FromSymbolBounds }
 Behaviour modifier for label offset and distance, only applies in some label placement modes. More...
 
enum  Placement {
  AroundPoint, OverPoint, Line, Curved,
  Horizontal, Free, OrderedPositionsAroundPoint
}
 Placement modes which determine how label candidates are generated for a feature. More...
 
enum  PredefinedPointPosition {
  TopLeft, TopSlightlyLeft, TopMiddle, TopSlightlyRight,
  TopRight, MiddleLeft, MiddleRight, BottomLeft,
  BottomSlightlyLeft, BottomMiddle, BottomSlightlyRight, BottomRight
}
 Positions for labels when using the QgsPalLabeling::OrderedPositionsAroundPoint placement mode. More...
 
enum  QuadrantPosition {
  QuadrantAboveLeft, QuadrantAbove, QuadrantAboveRight, QuadrantLeft,
  QuadrantOver, QuadrantRight, QuadrantBelowLeft, QuadrantBelow,
  QuadrantBelowRight
}
 
enum  RotationType { RotationSync = 0, RotationOffset, RotationFixed }
 
enum  ShadowType { ShadowLowest = 0, ShadowText, ShadowBuffer, ShadowShape }
 
enum  ShapeType {
  ShapeRectangle = 0, ShapeSquare, ShapeEllipse, ShapeCircle,
  ShapeSVG
}
 
enum  SizeType { SizeBuffer = 0, SizeFixed, SizePercent }
 
enum  SizeUnit { Points = 0, MM, MapUnits, Percent }
 Units used for option sizes, before being converted to rendered sizes. More...
 
enum  UpsideDownLabels { Upright, ShowDefined, ShowAll }
 

Public Member Functions

 QgsPalLayerSettings ()
 
 QgsPalLayerSettings (const QgsPalLayerSettings &s)
 
 ~QgsPalLayerSettings ()
 
void calculateLabelSize (const QFontMetricsF *fm, QString text, double &labelX, double &labelY, QgsFeature *f=nullptr, QgsRenderContext *context=nullptr)
 
bool dataDefinedEvaluate (QgsPalLayerSettings::DataDefinedProperties p, QVariant &exprVal, QgsExpressionContext *context=nullptr, const QVariant &originalValue=QVariant()) const
 Get data defined property value from expression string or attribute field name. More...
 
bool dataDefinedIsActive (QgsPalLayerSettings::DataDefinedProperties p) const
 Whether data definition is active. More...
 
QMap< QString, QStringdataDefinedMap (QgsPalLayerSettings::DataDefinedProperties p) const
 Get property value as separate values split into Qmap. More...
 
QMap< QgsPalLayerSettings::DataDefinedProperties, QPair< QString, int > > dataDefinedNames () const
 Map of data defined enum to names and old-style indecies The QPair contains a new string for layer property key, and a reference to old-style numeric key (< QGIS 2.0) More...
 
QgsDataDefineddataDefinedProperty (QgsPalLayerSettings::DataDefinedProperties p)
 Get a data defined property pointer. More...
 
bool dataDefinedUseExpression (QgsPalLayerSettings::DataDefinedProperties p) const
 Whether data definition is set to use an expression. More...
 
QVariant dataDefinedValue (QgsPalLayerSettings::DataDefinedProperties p, QgsFeature &f, const QgsFields &fields, const QgsExpressionContext *context=nullptr) const
 Get data defined property value from expression string or attribute field name. More...
 
QgsExpressiongetLabelExpression ()
 Returns the QgsExpression for this label settings. More...
 
QgsPalLayerSettingsoperator= (const QgsPalLayerSettings &s)
 copy operator - only copies the permanent members More...
 
void readFromLayer (QgsVectorLayer *layer)
 
void readXml (QDomElement &elem)
 Read settings from a DOM element. More...
 
void registerFeature (QgsFeature &f, QgsRenderContext &context, QgsLabelFeature **labelFeature=nullptr, QgsGeometry *obstacleGeometry=nullptr)
 Register a feature for labelling. More...
 
void removeAllDataDefinedProperties ()
 Clear all data-defined properties. More...
 
void removeDataDefinedProperty (QgsPalLayerSettings::DataDefinedProperties p)
 Set a property to static instead data defined. More...
 
double scaleToPixelContext (double size, const QgsRenderContext &c, SizeUnit unit, bool rasterfactor=false, const QgsMapUnitScale &mapUnitScale=QgsMapUnitScale()) const
 Calculates size (considering output size should be in pixel or map units, scale factors and optionally oversampling) More...
 
void setDataDefinedProperty (QgsPalLayerSettings::DataDefinedProperties p, bool active, bool useExpr, const QString &expr, const QString &field)
 Set a property as data defined. More...
 
int sizeToPixel (double size, const QgsRenderContext &c, SizeUnit unit, bool rasterfactor=false, const QgsMapUnitScale &mapUnitScale=QgsMapUnitScale()) const
 Calculates pixel size (considering output size should be in pixel or map units, scale factors and optionally oversampling) More...
 
QString updateDataDefinedString (const QString &value)
 Convert old property value to new one as delimited values. More...
 
void writeToLayer (QgsVectorLayer *layer)
 
QDomElement writeXml (QDomDocument &doc)
 Write settings into a DOM element. More...
 

Static Public Member Functions

static QgsPalLayerSettings fromLayer (QgsVectorLayer *layer)
 

Public Attributes

bool addDirectionSymbol
 
double angleOffset
 
QPainter::CompositionMode blendMode
 
QPainter::CompositionMode bufferBlendMode
 
QColor bufferColor
 
bool bufferDraw
 
Qt::PenJoinStyle bufferJoinStyle
 
bool bufferNoFill
 
double bufferSize
 
bool bufferSizeInMapUnits
 
QgsMapUnitScale bufferSizeMapUnitScale
 
int bufferTransp
 
bool centroidInside
 
bool centroidWhole
 
const QgsCoordinateTransformct
 
QMap< QgsPalLayerSettings::DataDefinedProperties, QgsDataDefined * > dataDefinedProperties
 Map of current data defined properties. More...
 
int decimals
 
bool displayAll
 
double dist
 
bool distInMapUnits
 
QgsMapUnitScale distMapUnitScale
 
bool drawLabels
 Whether to draw labels for this layer. More...
 
bool enabled
 
QgsGeometryextentGeom
 
int fieldIndex
 
QString fieldName
 
bool fitInPolygonOnly
 True if only labels which completely fit within a polygon are allowed. More...
 
bool fontLimitPixelSize
 
int fontMaxPixelSize
 
int fontMinPixelSize
 
bool fontSizeInMapUnits
 
QgsMapUnitScale fontSizeMapUnitScale
 
bool formatNumbers
 
bool isExpression
 Is this label made from a expression string eg FieldName || 'mm'. More...
 
bool labelOffsetInMapUnits
 
QgsMapUnitScale labelOffsetMapUnitScale
 
bool labelPerPart
 
QString leftDirectionSymbol
 
bool limitNumLabels
 
double maxCurvedCharAngleIn
 
double maxCurvedCharAngleOut
 
int maxNumLabels
 
QgsFeaturemCurFeat
 
QgsFields mCurFields
 
bool mergeLines
 
int mFeatsRegPal
 
int mFeatsSendingToPal
 
int mFeaturesToLabel
 
double minFeatureSize
 
QString mTextFontFamily
 
bool mTextFontFound
 
MultiLineAlign multilineAlign
 
double multilineHeight
 
bool obstacle
 
double obstacleFactor
 Obstacle factor, where 1.0 = default, < 1.0 more likely to be covered by labels,

1.0 less likely to be covered

More...
 
ObstacleType obstacleType
 Controls how features act as obstacles for labels. More...
 
OffsetType offsetType
 Offset type for layer (only applies in certain placement modes) More...
 
DirectionSymbols placeDirectionSymbol
 
Placement placement
 
unsigned int placementFlags
 
bool plusSign
 
QVector< PredefinedPointPositionpredefinedPositionOrder
 Ordered list of predefined label positions for points. More...
 
bool preserveRotation
 
QColor previewBkgrdColor
 
int priority
 
QgsPoint ptOne
 
QgsPoint ptZero
 
QuadrantPosition quadOffset
 
double rasterCompressFactor
 
double repeatDistance
 
QgsMapUnitScale repeatDistanceMapUnitScale
 
SizeUnit repeatDistanceUnit
 
bool reverseDirectionSymbol
 
QString rightDirectionSymbol
 
int scaleMax
 
int scaleMin
 
bool scaleVisibility
 
QPainter::CompositionMode shadowBlendMode
 
QColor shadowColor
 
bool shadowDraw
 
int shadowOffsetAngle
 
double shadowOffsetDist
 
bool shadowOffsetGlobal
 
QgsMapUnitScale shadowOffsetMapUnitScale
 
SizeUnit shadowOffsetUnits
 
double shadowRadius
 
bool shadowRadiusAlphaOnly
 
QgsMapUnitScale shadowRadiusMapUnitScale
 
SizeUnit shadowRadiusUnits
 
int shadowScale
 
int shadowTransparency
 
ShadowType shadowUnder
 
QPainter::CompositionMode shapeBlendMode
 
QColor shapeBorderColor
 
double shapeBorderWidth
 
QgsMapUnitScale shapeBorderWidthMapUnitScale
 
SizeUnit shapeBorderWidthUnits
 
bool shapeDraw
 
QColor shapeFillColor
 
Qt::PenJoinStyle shapeJoinStyle
 
QPointF shapeOffset
 
QgsMapUnitScale shapeOffsetMapUnitScale
 
SizeUnit shapeOffsetUnits
 
QPointF shapeRadii
 
QgsMapUnitScale shapeRadiiMapUnitScale
 
SizeUnit shapeRadiiUnits
 
double shapeRotation
 
RotationType shapeRotationType
 
QPointF shapeSize
 
QgsMapUnitScale shapeSizeMapUnitScale
 
SizeType shapeSizeType
 
SizeUnit shapeSizeUnits
 
QString shapeSVGFile
 
int shapeTransparency
 
ShapeType shapeType
 
bool showingShadowRects
 
QColor textColor
 
QFont textFont
 
QString textNamedStyle
 
int textTransp
 
UpsideDownLabels upsidedownLabels
 
double vectorScaleFactor
 
QString wrapChar
 
const QgsMapToPixelxform
 
double xOffset
 
double yOffset
 
double zIndex
 Z-Index of label, where labels with a higher z-index are rendered on top of labels with a lower z-index. More...
 

Detailed Description

Definition at line 67 of file qgspallabeling.h.

Member Enumeration Documentation

Enumerator
Size 
Bold 
Italic 
Underline 
Color 
Strikeout 
Family 
FontStyle 
FontSizeUnit 
FontTransp 
FontCase 
FontLetterSpacing 
FontWordSpacing 
FontBlendMode 
MultiLineWrapChar 
MultiLineHeight 
MultiLineAlignment 
DirSymbDraw 
DirSymbLeft 
DirSymbRight 
DirSymbPlacement 
DirSymbReverse 
NumFormat 
NumDecimals 
NumPlusSign 
BufferDraw 
BufferSize 
BufferUnit 
BufferColor 
BufferTransp 
BufferJoinStyle 
BufferBlendMode 
ShapeDraw 
ShapeKind 
ShapeSVGFile 
ShapeSizeType 
ShapeSizeX 
ShapeSizeY 
ShapeSizeUnits 
ShapeRotationType 
ShapeRotation 
ShapeOffset 
ShapeOffsetUnits 
ShapeRadii 
ShapeRadiiUnits 
ShapeTransparency 
ShapeBlendMode 
ShapeFillColor 
ShapeBorderColor 
ShapeBorderWidth 
ShapeBorderWidthUnits 
ShapeJoinStyle 
ShadowDraw 
ShadowUnder 
ShadowOffsetAngle 
ShadowOffsetDist 
ShadowOffsetUnits 
ShadowRadius 
ShadowRadiusUnits 
ShadowTransparency 
ShadowScale 
ShadowColor 
ShadowBlendMode 
CentroidWhole 
OffsetQuad 
OffsetXY 
OffsetUnits 
LabelDistance 
DistanceUnits 
OffsetRotation 
CurvedCharAngleInOut 
PositionX 
PositionY 
Hali 
Vali 
Rotation 
RepeatDistance 
RepeatDistanceUnit 
Priority 
PredefinedPositionOrder 
ScaleVisibility 
MinScale 
MaxScale 
FontLimitPixel 
FontMinPixel 
FontMaxPixel 
IsObstacle 
ObstacleFactor 
ZIndex 
Show 
AlwaysShow 

Definition at line 232 of file qgspallabeling.h.

Enumerator
SymbolLeftRight 

place direction symbols on left/right of label

SymbolAbove 

place direction symbols on above label

SymbolBelow 

place direction symbols on below label

Definition at line 159 of file qgspallabeling.h.

Line placement flags, which control how candidates are generated for a linear feature.

Enumerator
OnLine 

Labels can be placed directly over a line feature.

AboveLine 

Labels can be placed above a line feature.

Unless MapOrientation is also specified this mode respects the direction of the line feature, so a line from right to left labels will have labels placed placed below the line feature.

BelowLine 

Labels can be placed below a line feature.

Unless MapOrientation is also specified this mode respects the direction of the line feature, so a line from right to left labels will have labels placed placed above the line feature.

MapOrientation 

Signifies that the AboveLine and BelowLine flags should respect the map's orientation rather than the feature's orientation.

Eg, AboveLine will always result in label's being placed above a line, regardless of the line's direction.

Definition at line 125 of file qgspallabeling.h.

Enumerator
MultiLeft 
MultiCenter 
MultiRight 
MultiFollowPlacement 

Alignment follows placement of label, eg labels to the left of a feature will be drawn with right alignment

Definition at line 166 of file qgspallabeling.h.

Valid obstacle types, which affect how features within the layer will act as obstacles for labels.

Enumerator
PolygonInterior 

avoid placing labels over interior of polygon (prefer placing labels totally outside or just slightly inside polygon)

PolygonBoundary 

avoid placing labels over boundary of polygon (prefer placing outside or completely inside polygon)

PolygonWhole 

avoid placing labels over ANY part of polygon. Where PolygonInterior will prefer to place labels with the smallest area of intersection between the label and the polygon, PolygonWhole will penalise any label which intersects with the polygon by an equal amount, so that placing labels over any part of the polygon is avoided.

Definition at line 179 of file qgspallabeling.h.

Behaviour modifier for label offset and distance, only applies in some label placement modes.

Enumerator
FromPoint 

Offset distance applies from point geometry.

FromSymbolBounds 

Offset distance applies from rendered symbol bounds.

Definition at line 115 of file qgspallabeling.h.

Placement modes which determine how label candidates are generated for a feature.

Enumerator
AroundPoint 

Arranges candidates in a circle around a point (or centroid of a polygon).

Applies to point or polygon layers only.

OverPoint 
Line 

Arranges candidates over a point (or centroid of a polygon), or at a preset offset from the point.

Applies to point or polygon layers only. Arranges candidates parallel to a generalised line representing the feature or parallel to a polygon's perimeter. Applies to line or polygon layers only.

Curved 
Horizontal 

Arranges candidates following the curvature of a line feature.

Applies to line layers only. Arranges horizontal candidates scattered throughout a polygon feature. Applies to polygon layers only.

Free 

Arranges candidates scattered throughout a polygon feature.

Candidates are rotated to respect the polygon's orientation. Applies to polygon layers only.

OrderedPositionsAroundPoint 

Candidates are placed in predefined positions around a point.

Peference is given to positions with greatest cartographic appeal, eg top right, bottom right, etc. Applies to point layers only.

Definition at line 83 of file qgspallabeling.h.

Positions for labels when using the QgsPalLabeling::OrderedPositionsAroundPoint placement mode.

Enumerator
TopLeft 

Label on top-left of point.

TopSlightlyLeft 
TopMiddle 

Label on top of point, slightly left of center.

Label directly above point

TopSlightlyRight 
TopRight 

Label on top of point, slightly right of center.

Label on top-right of point

MiddleLeft 

Label on left of point.

MiddleRight 

Label on right of point.

BottomLeft 

Label on bottom-left of point.

BottomSlightlyLeft 
BottomMiddle 

Label below point, slightly left of center.

Label directly below point

BottomSlightlyRight 
BottomRight 

Label below point, slightly right of center.

Label on bottom right of point

Definition at line 96 of file qgspallabeling.h.

Enumerator
QuadrantAboveLeft 
QuadrantAbove 
QuadrantAboveRight 
QuadrantLeft 
QuadrantOver 
QuadrantRight 
QuadrantBelowLeft 
QuadrantBelow 
QuadrantBelowRight 

Definition at line 139 of file qgspallabeling.h.

Enumerator
RotationSync 
RotationOffset 
RotationFixed 

Definition at line 207 of file qgspallabeling.h.

Enumerator
ShadowLowest 
ShadowText 
ShadowBuffer 
ShadowShape 

Definition at line 223 of file qgspallabeling.h.

Enumerator
ShapeRectangle 
ShapeSquare 
ShapeEllipse 
ShapeCircle 
ShapeSVG 

Definition at line 191 of file qgspallabeling.h.

Enumerator
SizeBuffer 
SizeFixed 
SizePercent 

Definition at line 200 of file qgspallabeling.h.

Units used for option sizes, before being converted to rendered sizes.

Enumerator
Points 
MM 
MapUnits 
Percent 

Definition at line 215 of file qgspallabeling.h.

Enumerator
Upright 

upside-down labels (90 <= angle < 270) are shown upright

ShowDefined 

show upside down when rotation is layer- or data-defined

ShowAll 

show upside down for all labels, including dynamic ones

Definition at line 152 of file qgspallabeling.h.

Constructor & Destructor Documentation

QgsPalLayerSettings::QgsPalLayerSettings ( )

Definition at line 106 of file qgspallabeling.cpp.

QgsPalLayerSettings::QgsPalLayerSettings ( const QgsPalLayerSettings s)

Definition at line 353 of file qgspallabeling.cpp.

QgsPalLayerSettings::~QgsPalLayerSettings ( )

Definition at line 520 of file qgspallabeling.cpp.

Member Function Documentation

void QgsPalLayerSettings::calculateLabelSize ( const QFontMetricsF fm,
QString  text,
double &  labelX,
double &  labelY,
QgsFeature f = nullptr,
QgsRenderContext context = nullptr 
)

Definition at line 1919 of file qgspallabeling.cpp.

bool QgsPalLayerSettings::dataDefinedEvaluate ( QgsPalLayerSettings::DataDefinedProperties  p,
QVariant exprVal,
QgsExpressionContext context = nullptr,
const QVariant originalValue = QVariant() 
) const

Get data defined property value from expression string or attribute field name.

Returns
true/false whether result is null or invalid
Note
not available in python bindings

Definition at line 1852 of file qgspallabeling.cpp.

bool QgsPalLayerSettings::dataDefinedIsActive ( QgsPalLayerSettings::DataDefinedProperties  p) const

Whether data definition is active.

Definition at line 1883 of file qgspallabeling.cpp.

QMap< QString, QString > QgsPalLayerSettings::dataDefinedMap ( QgsPalLayerSettings::DataDefinedProperties  p) const

Get property value as separate values split into Qmap.

Note
not available in python bindings

Definition at line 1774 of file qgspallabeling.cpp.

QMap<QgsPalLayerSettings::DataDefinedProperties, QPair<QString, int> > QgsPalLayerSettings::dataDefinedNames ( ) const
inline

Map of data defined enum to names and old-style indecies The QPair contains a new string for layer property key, and a reference to old-style numeric key (< QGIS 2.0)

Note
not available in python bindings;

Definition at line 644 of file qgspallabeling.h.

QgsDataDefined * QgsPalLayerSettings::dataDefinedProperty ( QgsPalLayerSettings::DataDefinedProperties  p)

Get a data defined property pointer.

Note
helpful for Python access

Definition at line 1761 of file qgspallabeling.cpp.

bool QgsPalLayerSettings::dataDefinedUseExpression ( QgsPalLayerSettings::DataDefinedProperties  p) const

Whether data definition is set to use an expression.

Definition at line 1899 of file qgspallabeling.cpp.

QVariant QgsPalLayerSettings::dataDefinedValue ( QgsPalLayerSettings::DataDefinedProperties  p,
QgsFeature f,
const QgsFields fields,
const QgsExpressionContext context = nullptr 
) const

Get data defined property value from expression string or attribute field name.

Returns
value inside QVariant
Note
not available in python bindings

Definition at line 1785 of file qgspallabeling.cpp.

QgsPalLayerSettings QgsPalLayerSettings::fromLayer ( QgsVectorLayer layer)
static
Note
added in 2.4

Definition at line 533 of file qgspallabeling.cpp.

QgsExpression * QgsPalLayerSettings::getLabelExpression ( )

Returns the QgsExpression for this label settings.

Definition at line 541 of file qgspallabeling.cpp.

QgsPalLayerSettings & QgsPalLayerSettings::operator= ( const QgsPalLayerSettings s)

copy operator - only copies the permanent members

Definition at line 368 of file qgspallabeling.cpp.

void QgsPalLayerSettings::readFromLayer ( QgsVectorLayer layer)

Definition at line 788 of file qgspallabeling.cpp.

void QgsPalLayerSettings::readXml ( QDomElement elem)

Read settings from a DOM element.

Note
added in 2.12

Definition at line 1250 of file qgspallabeling.cpp.

void QgsPalLayerSettings::registerFeature ( QgsFeature f,
QgsRenderContext context,
QgsLabelFeature **  labelFeature = nullptr,
QgsGeometry obstacleGeometry = nullptr 
)

Register a feature for labelling.

Parameters
ffeature to label
contextrender context. The QgsExpressionContext contained within the render context must have already had the feature and fields sets prior to calling this method.
labelFeatureif using QgsLabelingEngineV2, this will receive the label feature. Not available in Python bindings.
obstacleGeometryoptional obstacle geometry, if a different geometry to the feature's geometry should be used as an obstacle for labels (eg, if the feature has been rendered with an offset point symbol, the obstacle geometry should represent the bounds of the offset symbol). If not set, the feature's original geometry will be used as an obstacle for labels. Not available in Python bindings.

Definition at line 2096 of file qgspallabeling.cpp.

void QgsPalLayerSettings::removeAllDataDefinedProperties ( )

Clear all data-defined properties.

Note
added in QGIS 2.12

Definition at line 1738 of file qgspallabeling.cpp.

void QgsPalLayerSettings::removeDataDefinedProperty ( QgsPalLayerSettings::DataDefinedProperties  p)

Set a property to static instead data defined.

Definition at line 1728 of file qgspallabeling.cpp.

double QgsPalLayerSettings::scaleToPixelContext ( double  size,
const QgsRenderContext c,
SizeUnit  unit,
bool  rasterfactor = false,
const QgsMapUnitScale mapUnitScale = QgsMapUnitScale() 
) const

Calculates size (considering output size should be in pixel or map units, scale factors and optionally oversampling)

Parameters
sizesize to convert
crendercontext
unitSizeUnit enum value of size
rasterfactorwhether to consider oversampling
mapUnitScalea mapUnitScale clamper
Returns
size that will render, as double

Definition at line 3884 of file qgspallabeling.cpp.

void QgsPalLayerSettings::setDataDefinedProperty ( QgsPalLayerSettings::DataDefinedProperties  p,
bool  active,
bool  useExpr,
const QString expr,
const QString field 
)

Set a property as data defined.

Note
helpful for Python access

Definition at line 1704 of file qgspallabeling.cpp.

int QgsPalLayerSettings::sizeToPixel ( double  size,
const QgsRenderContext c,
SizeUnit  unit,
bool  rasterfactor = false,
const QgsMapUnitScale mapUnitScale = QgsMapUnitScale() 
) const

Calculates pixel size (considering output size should be in pixel or map units, scale factors and optionally oversampling)

Parameters
sizesize to convert
crendercontext
unitSizeUnit enum value of size
rasterfactorwhether to consider oversampling
mapUnitScalea mapUnitScale clamper
Returns
font pixel size

Definition at line 3879 of file qgspallabeling.cpp.

QString QgsPalLayerSettings::updateDataDefinedString ( const QString value)

Convert old property value to new one as delimited values.

Note
not available in python bindings; as temporary solution until refactoring of project settings

Definition at line 1744 of file qgspallabeling.cpp.

void QgsPalLayerSettings::writeToLayer ( QgsVectorLayer layer)

Definition at line 1104 of file qgspallabeling.cpp.

QDomElement QgsPalLayerSettings::writeXml ( QDomDocument doc)

Write settings into a DOM element.

Note
added in 2.12

Definition at line 1544 of file qgspallabeling.cpp.

Member Data Documentation

bool QgsPalLayerSettings::addDirectionSymbol

Definition at line 385 of file qgspallabeling.h.

double QgsPalLayerSettings::angleOffset

Definition at line 487 of file qgspallabeling.h.

QPainter::CompositionMode QgsPalLayerSettings::blendMode

Definition at line 373 of file qgspallabeling.h.

QPainter::CompositionMode QgsPalLayerSettings::bufferBlendMode

Definition at line 405 of file qgspallabeling.h.

QColor QgsPalLayerSettings::bufferColor

Definition at line 401 of file qgspallabeling.h.

bool QgsPalLayerSettings::bufferDraw

Definition at line 397 of file qgspallabeling.h.

Qt::PenJoinStyle QgsPalLayerSettings::bufferJoinStyle

Definition at line 404 of file qgspallabeling.h.

bool QgsPalLayerSettings::bufferNoFill

Definition at line 402 of file qgspallabeling.h.

double QgsPalLayerSettings::bufferSize

Definition at line 398 of file qgspallabeling.h.

bool QgsPalLayerSettings::bufferSizeInMapUnits

Definition at line 399 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::bufferSizeMapUnitScale

Definition at line 400 of file qgspallabeling.h.

int QgsPalLayerSettings::bufferTransp

Definition at line 403 of file qgspallabeling.h.

bool QgsPalLayerSettings::centroidInside

Definition at line 457 of file qgspallabeling.h.

bool QgsPalLayerSettings::centroidWhole

Definition at line 456 of file qgspallabeling.h.

const QgsCoordinateTransform* QgsPalLayerSettings::ct

Definition at line 651 of file qgspallabeling.h.

QMap< QgsPalLayerSettings::DataDefinedProperties, QgsDataDefined* > QgsPalLayerSettings::dataDefinedProperties

Map of current data defined properties.

Pointers to QgsDataDefined should never be null, the pointers are owned by this class

Definition at line 617 of file qgspallabeling.h.

int QgsPalLayerSettings::decimals

Definition at line 392 of file qgspallabeling.h.

bool QgsPalLayerSettings::displayAll

Definition at line 505 of file qgspallabeling.h.

double QgsPalLayerSettings::dist

Definition at line 469 of file qgspallabeling.h.

bool QgsPalLayerSettings::distInMapUnits

Definition at line 470 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::distMapUnitScale

Definition at line 471 of file qgspallabeling.h.

bool QgsPalLayerSettings::drawLabels

Whether to draw labels for this layer.

For some layers it may be desirable to register their features as obstacles for other labels without requiring labels to be drawn for the layer itself. In this case drawLabels can be set to false and obstacle set to true, which will result in the layer acting as an obstacle but having no labels of its own.

Note
added in QGIS 2.12

Definition at line 353 of file qgspallabeling.h.

bool QgsPalLayerSettings::enabled

Definition at line 344 of file qgspallabeling.h.

QgsGeometry* QgsPalLayerSettings::extentGeom

Definition at line 655 of file qgspallabeling.h.

int QgsPalLayerSettings::fieldIndex

Definition at line 649 of file qgspallabeling.h.

QString QgsPalLayerSettings::fieldName

Definition at line 357 of file qgspallabeling.h.

bool QgsPalLayerSettings::fitInPolygonOnly

True if only labels which completely fit within a polygon are allowed.

Definition at line 468 of file qgspallabeling.h.

bool QgsPalLayerSettings::fontLimitPixelSize

Definition at line 501 of file qgspallabeling.h.

int QgsPalLayerSettings::fontMaxPixelSize

Definition at line 503 of file qgspallabeling.h.

int QgsPalLayerSettings::fontMinPixelSize

Definition at line 502 of file qgspallabeling.h.

bool QgsPalLayerSettings::fontSizeInMapUnits

Definition at line 369 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::fontSizeMapUnitScale

Definition at line 370 of file qgspallabeling.h.

bool QgsPalLayerSettings::formatNumbers

Definition at line 391 of file qgspallabeling.h.

bool QgsPalLayerSettings::isExpression

Is this label made from a expression string eg FieldName || 'mm'.

Definition at line 361 of file qgspallabeling.h.

bool QgsPalLayerSettings::labelOffsetInMapUnits

Definition at line 485 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::labelOffsetMapUnitScale

Definition at line 486 of file qgspallabeling.h.

bool QgsPalLayerSettings::labelPerPart

Definition at line 508 of file qgspallabeling.h.

QString QgsPalLayerSettings::leftDirectionSymbol

Definition at line 386 of file qgspallabeling.h.

bool QgsPalLayerSettings::limitNumLabels

Definition at line 511 of file qgspallabeling.h.

double QgsPalLayerSettings::maxCurvedCharAngleIn

Definition at line 490 of file qgspallabeling.h.

double QgsPalLayerSettings::maxCurvedCharAngleOut

Definition at line 491 of file qgspallabeling.h.

int QgsPalLayerSettings::maxNumLabels

Definition at line 512 of file qgspallabeling.h.

QgsFeature* QgsPalLayerSettings::mCurFeat

Definition at line 647 of file qgspallabeling.h.

QgsFields QgsPalLayerSettings::mCurFields

Definition at line 648 of file qgspallabeling.h.

bool QgsPalLayerSettings::mergeLines

Definition at line 509 of file qgspallabeling.h.

int QgsPalLayerSettings::mFeatsRegPal

Definition at line 658 of file qgspallabeling.h.

int QgsPalLayerSettings::mFeatsSendingToPal

Definition at line 657 of file qgspallabeling.h.

int QgsPalLayerSettings::mFeaturesToLabel

Definition at line 656 of file qgspallabeling.h.

double QgsPalLayerSettings::minFeatureSize

Definition at line 514 of file qgspallabeling.h.

QString QgsPalLayerSettings::mTextFontFamily

Definition at line 660 of file qgspallabeling.h.

bool QgsPalLayerSettings::mTextFontFound

Definition at line 661 of file qgspallabeling.h.

MultiLineAlign QgsPalLayerSettings::multilineAlign

Definition at line 380 of file qgspallabeling.h.

double QgsPalLayerSettings::multilineHeight

Definition at line 379 of file qgspallabeling.h.

bool QgsPalLayerSettings::obstacle

Definition at line 515 of file qgspallabeling.h.

double QgsPalLayerSettings::obstacleFactor

Obstacle factor, where 1.0 = default, < 1.0 more likely to be covered by labels,

1.0 less likely to be covered

Definition at line 520 of file qgspallabeling.h.

ObstacleType QgsPalLayerSettings::obstacleType

Controls how features act as obstacles for labels.

Definition at line 524 of file qgspallabeling.h.

OffsetType QgsPalLayerSettings::offsetType

Offset type for layer (only applies in certain placement modes)

Definition at line 473 of file qgspallabeling.h.

DirectionSymbols QgsPalLayerSettings::placeDirectionSymbol

Definition at line 388 of file qgspallabeling.h.

Placement QgsPalLayerSettings::placement

Definition at line 453 of file qgspallabeling.h.

unsigned int QgsPalLayerSettings::placementFlags

Definition at line 454 of file qgspallabeling.h.

bool QgsPalLayerSettings::plusSign

Definition at line 393 of file qgspallabeling.h.

QVector< PredefinedPointPosition > QgsPalLayerSettings::predefinedPositionOrder

Ordered list of predefined label positions for points.

Positions earlier in the list will be prioritised over later positions. Only used when the placement is set to QgsPalLayerSettings::OrderedPositionsAroundPoint.

Note
not available in Python bindings

Definition at line 464 of file qgspallabeling.h.

bool QgsPalLayerSettings::preserveRotation

Definition at line 488 of file qgspallabeling.h.

QColor QgsPalLayerSettings::previewBkgrdColor

Definition at line 374 of file qgspallabeling.h.

int QgsPalLayerSettings::priority

Definition at line 493 of file qgspallabeling.h.

QgsPoint QgsPalLayerSettings::ptOne

Definition at line 654 of file qgspallabeling.h.

QgsPoint QgsPalLayerSettings::ptZero

Definition at line 653 of file qgspallabeling.h.

QuadrantPosition QgsPalLayerSettings::quadOffset

Definition at line 481 of file qgspallabeling.h.

double QgsPalLayerSettings::rasterCompressFactor

Definition at line 531 of file qgspallabeling.h.

double QgsPalLayerSettings::repeatDistance

Definition at line 475 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::repeatDistanceMapUnitScale

Definition at line 477 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::repeatDistanceUnit

Definition at line 476 of file qgspallabeling.h.

bool QgsPalLayerSettings::reverseDirectionSymbol

Definition at line 389 of file qgspallabeling.h.

QString QgsPalLayerSettings::rightDirectionSymbol

Definition at line 387 of file qgspallabeling.h.

int QgsPalLayerSettings::scaleMax

Definition at line 499 of file qgspallabeling.h.

int QgsPalLayerSettings::scaleMin

Definition at line 498 of file qgspallabeling.h.

bool QgsPalLayerSettings::scaleVisibility

Definition at line 497 of file qgspallabeling.h.

QPainter::CompositionMode QgsPalLayerSettings::shadowBlendMode

Definition at line 449 of file qgspallabeling.h.

QColor QgsPalLayerSettings::shadowColor

Definition at line 448 of file qgspallabeling.h.

bool QgsPalLayerSettings::shadowDraw

Definition at line 435 of file qgspallabeling.h.

int QgsPalLayerSettings::shadowOffsetAngle

Definition at line 437 of file qgspallabeling.h.

double QgsPalLayerSettings::shadowOffsetDist

Definition at line 438 of file qgspallabeling.h.

bool QgsPalLayerSettings::shadowOffsetGlobal

Definition at line 441 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::shadowOffsetMapUnitScale

Definition at line 440 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::shadowOffsetUnits

Definition at line 439 of file qgspallabeling.h.

double QgsPalLayerSettings::shadowRadius

Definition at line 442 of file qgspallabeling.h.

bool QgsPalLayerSettings::shadowRadiusAlphaOnly

Definition at line 445 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::shadowRadiusMapUnitScale

Definition at line 444 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::shadowRadiusUnits

Definition at line 443 of file qgspallabeling.h.

int QgsPalLayerSettings::shadowScale

Definition at line 447 of file qgspallabeling.h.

int QgsPalLayerSettings::shadowTransparency

Definition at line 446 of file qgspallabeling.h.

ShadowType QgsPalLayerSettings::shadowUnder

Definition at line 436 of file qgspallabeling.h.

QPainter::CompositionMode QgsPalLayerSettings::shapeBlendMode

Definition at line 425 of file qgspallabeling.h.

QColor QgsPalLayerSettings::shapeBorderColor

Definition at line 427 of file qgspallabeling.h.

double QgsPalLayerSettings::shapeBorderWidth

Definition at line 428 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::shapeBorderWidthMapUnitScale

Definition at line 430 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::shapeBorderWidthUnits

Definition at line 429 of file qgspallabeling.h.

bool QgsPalLayerSettings::shapeDraw

Definition at line 409 of file qgspallabeling.h.

QColor QgsPalLayerSettings::shapeFillColor

Definition at line 426 of file qgspallabeling.h.

Qt::PenJoinStyle QgsPalLayerSettings::shapeJoinStyle

Definition at line 431 of file qgspallabeling.h.

QPointF QgsPalLayerSettings::shapeOffset

Definition at line 418 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::shapeOffsetMapUnitScale

Definition at line 420 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::shapeOffsetUnits

Definition at line 419 of file qgspallabeling.h.

QPointF QgsPalLayerSettings::shapeRadii

Definition at line 421 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::shapeRadiiMapUnitScale

Definition at line 423 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::shapeRadiiUnits

Definition at line 422 of file qgspallabeling.h.

double QgsPalLayerSettings::shapeRotation

Definition at line 417 of file qgspallabeling.h.

RotationType QgsPalLayerSettings::shapeRotationType

Definition at line 416 of file qgspallabeling.h.

QPointF QgsPalLayerSettings::shapeSize

Definition at line 413 of file qgspallabeling.h.

QgsMapUnitScale QgsPalLayerSettings::shapeSizeMapUnitScale

Definition at line 415 of file qgspallabeling.h.

SizeType QgsPalLayerSettings::shapeSizeType

Definition at line 412 of file qgspallabeling.h.

SizeUnit QgsPalLayerSettings::shapeSizeUnits

Definition at line 414 of file qgspallabeling.h.

QString QgsPalLayerSettings::shapeSVGFile

Definition at line 411 of file qgspallabeling.h.

int QgsPalLayerSettings::shapeTransparency

Definition at line 424 of file qgspallabeling.h.

ShapeType QgsPalLayerSettings::shapeType

Definition at line 410 of file qgspallabeling.h.

bool QgsPalLayerSettings::showingShadowRects

Definition at line 663 of file qgspallabeling.h.

QColor QgsPalLayerSettings::textColor

Definition at line 371 of file qgspallabeling.h.

QFont QgsPalLayerSettings::textFont

Definition at line 367 of file qgspallabeling.h.

QString QgsPalLayerSettings::textNamedStyle

Definition at line 368 of file qgspallabeling.h.

int QgsPalLayerSettings::textTransp

Definition at line 372 of file qgspallabeling.h.

UpsideDownLabels QgsPalLayerSettings::upsidedownLabels

Definition at line 506 of file qgspallabeling.h.

double QgsPalLayerSettings::vectorScaleFactor

Definition at line 530 of file qgspallabeling.h.

QString QgsPalLayerSettings::wrapChar

Definition at line 378 of file qgspallabeling.h.

const QgsMapToPixel* QgsPalLayerSettings::xform

Definition at line 650 of file qgspallabeling.h.

double QgsPalLayerSettings::xOffset

Definition at line 483 of file qgspallabeling.h.

double QgsPalLayerSettings::yOffset

Definition at line 484 of file qgspallabeling.h.

double QgsPalLayerSettings::zIndex

Z-Index of label, where labels with a higher z-index are rendered on top of labels with a lower z-index.

Definition at line 527 of file qgspallabeling.h.


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