QGIS API Documentation  3.10.0-A Coruña (6c816b4204)
Public Member Functions | Protected Attributes | List of all members
QgsDiagramLabelFeature Class Reference

Class that adds extra information to QgsLabelFeature for labeling of diagrams. More...

#include <qgsvectorlayerdiagramprovider.h>

Inheritance diagram for QgsDiagramLabelFeature:
Inheritance graph
[legend]

Public Member Functions

 QgsDiagramLabelFeature (QgsFeatureId id, geos::unique_ptr geometry, QSizeF size)
 Create label feature, takes ownership of the geometry instance. More...
 
const QgsAttributesattributes ()
 Gets feature's attributes - used for rendering of diagrams. More...
 
void setAttributes (const QgsAttributes &attrs)
 Store feature's attributes - used for rendering of diagrams. More...
 
- Public Member Functions inherited from QgsLabelFeature
 QgsLabelFeature (QgsFeatureId id, geos::unique_ptr geometry, QSizeF size)
 Create label feature, takes ownership of the geometry instance. More...
 
virtual ~QgsLabelFeature ()
 Clean up geometry and curved label info (if present) More...
 
bool alwaysShow () const
 Whether label should be always shown (sets very high label priority) More...
 
pal::LineArrangementFlags arrangementFlags () const
 Returns the feature's arrangement flags. More...
 
pal::LabelInfocurvedLabelInfo () const
 Gets additional infor required for curved label placement. Returns nullptr if not set. More...
 
double distLabel () const
 Applies to "around point" placement strategy or linestring features. More...
 
QgsFeature feature () const
 Returns the original feature associated with this label. More...
 
double fixedAngle () const
 Angle in degrees of the fixed angle (relevant only if hasFixedAngle() returns true) More...
 
QgsPointXY fixedPosition () const
 Coordinates of the fixed position (relevant only if hasFixedPosition() returns true) More...
 
GEOSGeometry * geometry () const
 Gets access to the associated geometry. More...
 
bool hasFixedAngle () const
 Whether the label should use a fixed angle instead of using angle from automatic placement. More...
 
bool hasFixedPosition () const
 Whether the label should use a fixed position instead of being automatically placed. More...
 
bool hasFixedQuadrant () const
 Returns whether the quadrant for the label is fixed. More...
 
QgsFeatureId id () const
 Identifier of the label (unique within the parent label provider) More...
 
bool isObstacle () const
 Returns whether the feature will act as an obstacle for labels. More...
 
bool labelAllParts () const
 Returns true if all parts of the feature should be labeled. More...
 
QString labelText () const
 Text of the label. More...
 
pal::Layerlayer () const
 Gets PAL layer of the label feature. Should be only used internally in PAL. More...
 
double obstacleFactor () const
 Returns the obstacle factor for the feature. More...
 
GEOSGeometry * obstacleGeometry () const
 Returns the label's obstacle geometry, if different to the feature geometry. More...
 
QgsPalLayerSettings::OffsetType offsetType () const
 Returns the offset type, which determines how offsets and distance to label behaves. More...
 
double overrunDistance () const
 Returns the permissible distance (in map units) which labels are allowed to overrun the start or end of linear features. More...
 
double overrunSmoothDistance () const
 Returns the distance (in map units) with which the ends of linear features are averaged over when calculating the direction at which to overrun labels. More...
 
QgsGeometry permissibleZone () const
 Returns the label's permissible zone geometry. More...
 
const GEOSPreparedGeometry * permissibleZonePrepared () const
 Returns a GEOS prepared geometry representing the label's permissibleZone(). More...
 
QgsPointXY positionOffset () const
 Applies only to "offset from point" placement strategy. More...
 
QVector< QgsPalLayerSettings::PredefinedPointPositionpredefinedPositionOrder () const
 Returns the priority ordered list of predefined positions for label candidates. More...
 
double priority () const
 Returns the feature's labeling priority. More...
 
QgsAbstractLabelProviderprovider () const
 Returns provider of this instance. More...
 
QPointF quadOffset () const
 Applies to "offset from point" placement strategy and "around point" (in case hasFixedQuadrant() returns true). More...
 
double repeatDistance () const
 Applies only to linestring features - after what distance (in map units) the labels should be repeated (0 = no repetitions) More...
 
void setAlwaysShow (bool enabled)
 Sets whether label should be always shown (sets very high label priority) More...
 
void setArrangementFlags (pal::LineArrangementFlags flags)
 Sets the feature's arrangement flags. More...
 
void setCurvedLabelInfo (pal::LabelInfo *info)
 takes ownership of the instance More...
 
void setDistLabel (double dist)
 Applies to "around point" placement strategy or linestring features. More...
 
void setFeature (const QgsFeature &feature)
 Sets the original feature associated with this label. More...
 
void setFixedAngle (double angle)
 Sets angle in degrees of the fixed angle (relevant only if hasFixedAngle() returns true) More...
 
void setFixedPosition (const QgsPointXY &point)
 Sets coordinates of the fixed position (relevant only if hasFixedPosition() returns true) More...
 
void setHasFixedAngle (bool enabled)
 Sets whether the label should use a fixed angle instead of using angle from automatic placement. More...
 
void setHasFixedPosition (bool enabled)
 Sets whether the label should use a fixed position instead of being automatically placed. More...
 
void setHasFixedQuadrant (bool enabled)
 Sets whether the quadrant for the label must be respected. More...
 
void setIsObstacle (bool enabled)
 Sets whether the feature will act as an obstacle for labels. More...
 
void setLabelAllParts (bool labelAllParts)
 Sets whether all parts of the feature should be labeled. More...
 
void setLabelText (const QString &text)
 Sets text of the label. More...
 
void setLayer (pal::Layer *layer)
 Assign PAL layer to the label feature. Should be only used internally in PAL. More...
 
void setObstacleFactor (double factor)
 Sets the obstacle factor for the feature. More...
 
void setObstacleGeometry (geos::unique_ptr obstacleGeom)
 Sets the label's obstacle geometry, if different to the feature geometry. More...
 
void setOffsetType (QgsPalLayerSettings::OffsetType type)
 Sets the offset type, which determines how offsets and distance to label behaves. More...
 
void setOverrunDistance (double distance)
 Sets the permissible distance (in map units) which labels are allowed to overrun the start or end of linear features. More...
 
void setOverrunSmoothDistance (double distance)
 Sets the distance (in map units) with which the ends of linear features are averaged over when calculating the direction at which to overrun labels. More...
 
void setPermissibleZone (const QgsGeometry &geometry)
 Sets the label's permissible zone geometry. More...
 
void setPositionOffset (const QgsPointXY &offset)
 Applies only to "offset from point" placement strategy. More...
 
void setPredefinedPositionOrder (const QVector< QgsPalLayerSettings::PredefinedPointPosition > &order)
 Sets the priority ordered list of predefined positions for label candidates. More...
 
void setPriority (double priority)
 Sets the priority for labeling the feature. More...
 
void setQuadOffset (QPointF quadOffset)
 Set which side of the point to use. More...
 
void setRepeatDistance (double dist)
 Applies only to linestring features - set after what distance (in map units) the labels should be repeated (0 = no repetitions) More...
 
void setRotatedSize (QSizeF size)
 Sets an alternate label size to be used when a label rotation angle is between 45 to 135 and 235 to 313 degrees and the text rotation mode is set to rotation-based. More...
 
void setSymbol (const QgsSymbol *symbol)
 Sets the feature symbol associated with this label. More...
 
void setSymbolSize (QSizeF size)
 Sets the size of the rendered symbol associated with this feature. More...
 
void setVisualMargin (const QgsMargins &margin)
 Sets the visual margin for the label feature. More...
 
void setZIndex (double zIndex)
 Sets the label's z-index. More...
 
QSizeF size (double angle=0.0) const
 Size of the label (in map units) More...
 
const QgsSymbolsymbol ()
 Returns the feature symbol associated with this label. More...
 
const QSizeF & symbolSize () const
 Returns the size of the rendered symbol associated with this feature, if applicable. More...
 
const QgsMarginsvisualMargin () const
 Returns the visual margin for the label feature. More...
 
double zIndex () const
 Returns the label's z-index. More...
 

Protected Attributes

QgsAttributes mAttributes
 Stores attribute values for diagram rendering. More...
 
- Protected Attributes inherited from QgsLabelFeature
bool mAlwaysShow
 whether to always show label - even in case of collisions More...
 
pal::LineArrangementFlags mArrangementFlags = nullptr
 
double mDistLabel
 distance of label from the feature (only for "around point" placement or linestrings) More...
 
double mFixedAngle
 fixed rotation for the label (instead of automatic choice) More...
 
QgsPointXY mFixedPosition
 fixed position for the label (instead of automatic placement) More...
 
geos::unique_ptr mGeometry
 Geometry of the feature to be labelled. More...
 
bool mHasFixedAngle
 whether mFixedAngle should be respected More...
 
bool mHasFixedPosition
 whether mFixedPosition should be respected More...
 
bool mHasFixedQuadrant
 whether mQuadOffset should be respected (only for "around point" placement) More...
 
QgsFeatureId mId
 Associated ID unique within the parent label provider. More...
 
pal::LabelInfomInfo = nullptr
 extra information for curved labels (may be nullptr) More...
 
bool mIsObstacle
 whether the feature geometry acts as an obstacle for labels More...
 
QString mLabelText
 text of the label More...
 
pal::LayermLayer = nullptr
 Pointer to PAL layer (assigned when registered to PAL) More...
 
double mObstacleFactor
 how strong is the geometry acting as obstacle More...
 
geos::unique_ptr mObstacleGeometry
 Optional geometry to use for label obstacles, if different to mGeometry. More...
 
QgsPalLayerSettings::OffsetType mOffsetType
 Offset type for certain placement modes. More...
 
double mOverrunDistance = 0
 Distance to allow label to overrun linear features. More...
 
double mOverrunSmoothDistance = 0
 Distance to smooth angle of line start and end when calculating overruns. More...
 
QgsGeometry mPermissibleZone
 Optional geometry to use for label's permissible zone. More...
 
QgsPointXY mPositionOffset
 offset of label from the feature (only for "offset from point" placement) More...
 
QVector< QgsPalLayerSettings::PredefinedPointPositionmPredefinedPositionOrder
 Ordered list of predefined positions for label (only for OrderedPositionsAroundPoint placement) More...
 
double mPriority
 Priority of the label. More...
 
QPointF mQuadOffset
 whether the side of the label is fixed (only for "around point" placement) More...
 
double mRepeatDistance
 distance after which label should be repeated (only for linestrings) More...
 
QSizeF mRotatedSize
 Width and height of the label when rotated between 45 to 135 and 235 to 315 degrees;. More...
 
QSizeF mSize
 Width and height of the label. More...
 
QSizeF mSymbolSize
 Size of associated rendered symbol, if applicable. More...
 
QgsMargins mVisualMargin
 Visual margin of label contents. More...
 
double mZIndex
 Z-index of label (higher z-index labels are rendered on top of lower z-index labels) More...
 

Detailed Description

Class that adds extra information to QgsLabelFeature for labeling of diagrams.

Note
this class is not a part of public API yet. See notes in QgsLabelingEngine
not available in Python bindings

Definition at line 33 of file qgsvectorlayerdiagramprovider.h.

Constructor & Destructor Documentation

◆ QgsDiagramLabelFeature()

QgsDiagramLabelFeature::QgsDiagramLabelFeature ( QgsFeatureId  id,
geos::unique_ptr  geometry,
QSizeF  size 
)
inline

Create label feature, takes ownership of the geometry instance.

Definition at line 37 of file qgsvectorlayerdiagramprovider.h.

Member Function Documentation

◆ attributes()

const QgsAttributes& QgsDiagramLabelFeature::attributes ( )
inline

Gets feature's attributes - used for rendering of diagrams.

Definition at line 43 of file qgsvectorlayerdiagramprovider.h.

◆ setAttributes()

void QgsDiagramLabelFeature::setAttributes ( const QgsAttributes attrs)
inline

Store feature's attributes - used for rendering of diagrams.

Definition at line 41 of file qgsvectorlayerdiagramprovider.h.

Member Data Documentation

◆ mAttributes

QgsAttributes QgsDiagramLabelFeature::mAttributes
protected

Stores attribute values for diagram rendering.

Definition at line 47 of file qgsvectorlayerdiagramprovider.h.


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