QGIS API Documentation
3.10.0-A Coruña (6c816b4204)
|
Implements a derived label provider for rule based labels internally used for DXF export. More...
#include <qgsdxfpallabeling.h>
Public Member Functions | |
QgsDxfRuleBasedLabelProvider (const QgsRuleBasedLabeling &rules, QgsVectorLayer *layer, QgsDxfExport *dxf) | |
construct the provider More... | |
QgsVectorLayerLabelProvider * | createProvider (QgsVectorLayer *layer, const QString &providerId, bool withFeatureLoop, const QgsPalLayerSettings *settings) override |
create QgsDxfLabelProvider More... | |
void | drawLabel (QgsRenderContext &context, pal::LabelPosition *label) const override |
Re-implementation that writes to DXF file instead of drawing with QPainter. More... | |
void | registerDxfFeature (QgsFeature &feature, QgsRenderContext &context, const QString &dxfLayerName) |
Registration method that keeps track of DXF layer names of individual features. More... | |
void | reinit (QgsVectorLayer *layer) |
Reinitialize the subproviders with QgsDxfLabelProviders. More... | |
Public Member Functions inherited from QgsRuleBasedLabelProvider | |
QgsRuleBasedLabelProvider (const QgsRuleBasedLabeling &rules, QgsVectorLayer *layer, bool withFeatureLoop=true) | |
bool | prepare (QgsRenderContext &context, QSet< QString > &attributeNames) override |
Prepare for registration of features. More... | |
void | registerFeature (const QgsFeature &feature, QgsRenderContext &context, const QgsGeometry &obstacleGeometry=QgsGeometry(), const QgsSymbol *symbol=nullptr) override |
Register a feature for labeling as one or more QgsLabelFeature objects stored into mLabels. More... | |
QList< QgsAbstractLabelProvider * > | subProviders () override |
Returns subproviders. More... | |
Public Member Functions inherited from QgsVectorLayerLabelProvider | |
QgsVectorLayerLabelProvider (QgsVectorLayer *layer, const QString &providerId, bool withFeatureLoop, const QgsPalLayerSettings *settings, const QString &layerName=QString()) | |
Convenience constructor to initialize the provider from given vector layer. More... | |
~QgsVectorLayerLabelProvider () override | |
void | drawLabelBackground (QgsRenderContext &context, pal::LabelPosition *label) const override |
Draw the background for the specified label. More... | |
void | drawUnplacedLabel (QgsRenderContext &context, pal::LabelPosition *label) const override |
Draw an unplaced label. More... | |
QList< QgsLabelFeature * > | labelFeatures (QgsRenderContext &context) override |
Returns list of label features (they are owned by the provider and thus deleted on its destruction) More... | |
const QgsPalLayerSettings & | settings () const |
Returns the layer's settings. More... | |
void | startRender (QgsRenderContext &context) override |
To be called before rendering of labels begins. More... | |
void | stopRender (QgsRenderContext &context) override |
To be called after rendering is complete. More... | |
Public Member Functions inherited from QgsAbstractLabelProvider | |
QgsAbstractLabelProvider (QgsMapLayer *layer, const QString &providerId=QString()) | |
Construct the provider with default values. More... | |
virtual | ~QgsAbstractLabelProvider ()=default |
Flags | flags () const |
Flags associated with the provider. More... | |
QgsMapLayer * | layer () const |
Returns the associated layer, or nullptr if no layer is associated with the provider. More... | |
QString | layerId () const |
Returns ID of associated layer, or empty string if no layer is associated with the provider. More... | |
QString | name () const |
Name of the layer (for statistics, debugging etc.) - does not need to be unique. More... | |
QgsPalLayerSettings::ObstacleType | obstacleType () const |
How the feature geometries will work as obstacles. More... | |
QgsPalLayerSettings::Placement | placement () const |
What placement strategy to use for the labels. More... | |
double | priority () const |
Default priority of labels (may be overridden by individual labels) More... | |
QString | providerId () const |
Returns provider ID - useful in case there is more than one label provider within a layer (e.g. More... | |
void | setEngine (const QgsLabelingEngine *engine) |
Associate provider with a labeling engine (should be only called internally from QgsLabelingEngine) More... | |
QgsPalLayerSettings::UpsideDownLabels | upsidedownLabels () const |
How to handle labels that would be upside down. More... | |
Protected Attributes | |
QgsDxfExport * | mDxfExport = nullptr |
pointer to parent DXF export where this instance is used More... | |
Protected Attributes inherited from QgsRuleBasedLabelProvider | |
std::unique_ptr< QgsRuleBasedLabeling > | mRules |
owned copy More... | |
QgsRuleBasedLabeling::RuleToProviderMap | mSubProviders |
label providers are owned by labeling engine More... | |
Protected Attributes inherited from QgsVectorLayerLabelProvider | |
QgsCoordinateReferenceSystem | mCrs |
Layer's CRS. More... | |
QgsFields | mFields |
Layer's fields. More... | |
QList< QgsLabelFeature * > | mLabels |
List of generated. More... | |
QgsWkbTypes::GeometryType | mLayerGeometryType |
Geometry type of layer. More... | |
QgsFeatureRenderer * | mRenderer = nullptr |
QgsPalLayerSettings | mSettings |
Layer's labeling configuration. More... | |
std::unique_ptr< QgsAbstractFeatureSource > | mSource |
Layer's feature source. More... | |
Protected Attributes inherited from QgsAbstractLabelProvider | |
const QgsLabelingEngine * | mEngine = nullptr |
Associated labeling engine. More... | |
Flags | mFlags |
Flags altering drawing and registration of features. More... | |
QgsWeakMapLayerPointer | mLayer |
Weak pointer to source layer. More... | |
QString | mLayerId |
Associated layer's ID, if applicable. More... | |
QString | mName |
Name of the layer. More... | |
QgsPalLayerSettings::ObstacleType | mObstacleType |
Type of the obstacle of feature geometries. More... | |
QgsPalLayerSettings::Placement | mPlacement |
Placement strategy. More... | |
double | mPriority |
Default priority of labels. More... | |
QString | mProviderId |
Associated provider ID (one layer may have multiple providers, e.g. in rule-based labeling) More... | |
QgsPalLayerSettings::UpsideDownLabels | mUpsidedownLabels |
How to handle labels that would be upside down. More... | |
Additional Inherited Members | |
Public Types inherited from QgsAbstractLabelProvider | |
enum | Flag { DrawLabels = 1 << 1, DrawAllLabels = 1 << 2, MergeConnectedLines = 1 << 3, CentroidMustBeInside = 1 << 4 } |
Static Public Member Functions inherited from QgsVectorLayerLabelProvider | |
static QgsGeometry | getPointObstacleGeometry (QgsFeature &fet, QgsRenderContext &context, const QgsSymbolList &symbols) |
Returns the geometry for a point feature which should be used as an obstacle for labels. More... | |
Protected Member Functions inherited from QgsVectorLayerLabelProvider | |
void | drawLabelPrivate (pal::LabelPosition *label, QgsRenderContext &context, QgsPalLayerSettings &tmpLyr, QgsTextRenderer::TextPart drawType, double dpiRatio=1.0) const |
Internal label drawing method. More... | |
void | init () |
initialization method - called from constructors More... | |
Implements a derived label provider for rule based labels internally used for DXF export.
Internal class, not in public API. Added in QGIS 2.15
Definition at line 72 of file qgsdxfpallabeling.h.
|
explicit |
construct the provider
Definition at line 43 of file qgsdxfpallabeling.cpp.
|
overridevirtual |
create QgsDxfLabelProvider
Reimplemented from QgsRuleBasedLabelProvider.
Definition at line 55 of file qgsdxfpallabeling.cpp.
|
overridevirtual |
Re-implementation that writes to DXF file instead of drawing with QPainter.
context | render context |
label | label |
Reimplemented from QgsVectorLayerLabelProvider.
Definition at line 62 of file qgsdxfpallabeling.cpp.
void QgsDxfRuleBasedLabelProvider::registerDxfFeature | ( | QgsFeature & | feature, |
QgsRenderContext & | context, | ||
const QString & | dxfLayerName | ||
) |
Registration method that keeps track of DXF layer names of individual features.
feature | feature |
context | render context |
dxfLayerName | name of dxf layer |
Definition at line 69 of file qgsdxfpallabeling.cpp.
void QgsDxfRuleBasedLabelProvider::reinit | ( | QgsVectorLayer * | layer | ) |
Reinitialize the subproviders with QgsDxfLabelProviders.
layer | layer |
Definition at line 49 of file qgsdxfpallabeling.cpp.
|
protected |
pointer to parent DXF export where this instance is used
Definition at line 104 of file qgsdxfpallabeling.h.