Quantum GIS API Documentation
1.7.5-Wroclaw
|
#include <qgspallabeling.h>
Public Types | |
enum | Search { Chain, Popmusic_Tabu, Popmusic_Chain, Popmusic_Tabu_Chain, Falp } |
Public Member Functions | |
QgsPalLabeling () | |
~QgsPalLabeling () | |
QgsPalLayerSettings & | layer (const QString &layerName) |
void | numCandidatePositions (int &candPoint, int &candLine, int &candPolygon) |
void | setNumCandidatePositions (int candPoint, int candLine, int candPolygon) |
void | setSearchMethod (Search s) |
Search | searchMethod () const |
bool | isShowingCandidates () const |
void | setShowingCandidates (bool showing) |
const QList< QgsLabelCandidate > & | candidates () |
bool | isShowingAllLabels () const |
void | setShowingAllLabels (bool showing) |
virtual void | init (QgsMapRenderer *mr) |
called when we're going to start with rendering More... | |
virtual bool | willUseLayer (QgsVectorLayer *layer) |
called to find out whether the layer is used for labeling More... | |
virtual int | prepareLayer (QgsVectorLayer *layer, QSet< int > &attrIndices, QgsRenderContext &ctx) |
hook called when drawing layer before issuing select() More... | |
virtual int | addDiagramLayer (QgsVectorLayer *layer, QgsDiagramLayerSettings *s) |
adds a diagram layer to the labeling engine More... | |
virtual void | registerFeature (QgsVectorLayer *layer, QgsFeature &feat, const QgsRenderContext &context=QgsRenderContext()) |
hook called when drawing for every feature in a layer More... | |
virtual void | registerDiagramFeature (QgsVectorLayer *layer, QgsFeature &feat, const QgsRenderContext &context=QgsRenderContext()) |
called for every diagram feature More... | |
virtual void | drawLabeling (QgsRenderContext &context) |
called when the map is drawn and labels should be placed More... | |
virtual void | exit () |
called when we're done with rendering More... | |
virtual QList< QgsLabelPosition > | labelsAtPosition (const QgsPoint &p) |
return infos about labels at a given (map) position More... | |
virtual QgsLabelingEngineInterface * | clone () |
called when passing engine among map renderers More... | |
void | drawLabelCandidateRect (pal::LabelPosition *lp, QPainter *painter, const QgsMapToPixel *xform) |
void | drawLabel (pal::LabelPosition *label, QPainter *painter, const QFont &f, const QColor &c, const QgsMapToPixel *xform, double bufferSize=-1, const QColor &bufferColor=QColor(255, 255, 255), bool drawBuffer=false) |
drawLabel More... | |
![]() | |
virtual | ~QgsLabelingEngineInterface () |
Static Public Member Functions | |
static void | drawLabelBuffer (QPainter *p, QString text, const QFont &font, double size, QColor color) |
Protected Member Functions | |
void | initPal () |
Protected Attributes | |
QHash< QgsVectorLayer *, QgsPalLayerSettings > | mActiveLayers |
QHash< QgsVectorLayer *, QgsDiagramLayerSettings > | mActiveDiagramLayers |
QgsPalLayerSettings | mInvalidLayerSettings |
QgsMapRenderer * | mMapRenderer |
int | mCandPoint |
int | mCandLine |
int | mCandPolygon |
Search | mSearch |
pal::Pal * | mPal |
QList< QgsLabelCandidate > | mCandidates |
bool | mShowingCandidates |
bool | mShowingAllLabels |
QgsLabelSearchTree * | mLabelSearchTree |
Definition at line 171 of file qgspallabeling.h.
Enumerator | |
---|---|
Chain | |
Popmusic_Tabu | |
Popmusic_Chain | |
Popmusic_Tabu_Chain | |
Falp |
Definition at line 182 of file qgspallabeling.h.
QgsPalLabeling::QgsPalLabeling | ( | ) |
Definition at line 636 of file qgspallabeling.cpp.
References Chain, Falp, mCandLine, mCandPoint, mCandPolygon, mLabelSearchTree, mSearch, mShowingAllLabels, mShowingCandidates, Popmusic_Chain, Popmusic_Tabu, and Popmusic_Tabu_Chain.
Referenced by clone().
QgsPalLabeling::~QgsPalLabeling | ( | ) |
Definition at line 662 of file qgspallabeling.cpp.
References exit(), and mLabelSearchTree.
|
virtual |
adds a diagram layer to the labeling engine
Reimplemented from QgsLabelingEngineInterface.
Definition at line 764 of file qgspallabeling.cpp.
References QgsMapRenderer::coordinateTransform(), QgsMapLayer::crs(), QgsDiagramLayerSettings::ct, QgsMapRenderer::destinationCrs(), QgsMapRenderer::hasCrsTransformEnabled(), QgsMapLayer::id(), mActiveDiagramLayers, mMapRenderer, mPal, QgsDiagramLayerSettings::obstacle, QgsDiagramLayerSettings::palLayer, QgsDiagramLayerSettings::placement, QgsDiagramLayerSettings::placementFlags, QgsDiagramLayerSettings::priority, and QgsDiagramLayerSettings::xform.
|
inline |
Definition at line 189 of file qgspallabeling.h.
|
virtual |
called when passing engine among map renderers
Implements QgsLabelingEngineInterface.
Definition at line 1288 of file qgspallabeling.cpp.
References mShowingAllLabels, mShowingCandidates, and QgsPalLabeling().
void QgsPalLabeling::drawLabel | ( | pal::LabelPosition * | label, |
QPainter * | painter, | ||
const QFont & | f, | ||
const QColor & | c, | ||
const QgsMapToPixel * | xform, | ||
double | bufferSize = -1 , |
||
const QColor & | bufferColor = QColor( 255, 255, 255 ) , |
||
bool | drawBuffer = false |
||
) |
drawLabel
Definition at line 1205 of file qgspallabeling.cpp.
References QgsPalLayerSettings::addDirectionSymbol, drawLabelBuffer(), QgsPalLayerSettings::fontMetrics, layer(), QgsPalLayerSettings::Line, M_PI, QgsPalLayerSettings::multiLineLabels, QgsPalLayerSettings::placement, QgsPalLayerSettings::rasterCompressFactor, QgsMapToPixel::transform(), QgsPalLayerSettings::vectorScaleFactor, QgsPoint::x(), and QgsPoint::y().
Referenced by drawLabeling().
|
static |
Definition at line 1277 of file qgspallabeling.cpp.
Referenced by drawLabel().
void QgsPalLabeling::drawLabelCandidateRect | ( | pal::LabelPosition * | lp, |
QPainter * | painter, | ||
const QgsMapToPixel * | xform | ||
) |
Definition at line 1184 of file qgspallabeling.cpp.
References M_PI, mCandidates, QgsMapToPixel::transform(), QgsPoint::x(), and QgsPoint::y().
Referenced by drawLabeling().
|
virtual |
called when the map is drawn and labels should be placed
Implements QgsLabelingEngineInterface.
Definition at line 935 of file qgspallabeling.cpp.
References QgsPalLayerSettings::Bold, QgsPalLayerSettings::BufferColor, QgsPalLayerSettings::bufferColor, QgsPalLayerSettings::BufferSize, QgsPalLayerSettings::bufferSize, QgsLabelSearchTree::clear(), QgsPalLayerSettings::Color, QgsMapRenderer::coordinateTransform(), QgsPalGeometry::dataDefinedValues(), QgsPalGeometry::diagramAttributes(), drawLabel(), drawLabelCandidateRect(), QgsRenderContext::extent(), QgsPalLayerSettings::Family, QgsDiagramLayerSettings::geometries, QgsPalLayerSettings::geometries, QgsLabelSearchTree::insertLabel(), QgsPalGeometry::isDiagram(), QgsPalLayerSettings::Italic, layer(), mActiveDiagramLayers, mActiveLayers, mCandidates, mLabelSearchTree, mMapRenderer, mPal, mShowingAllLabels, mShowingCandidates, QgsRenderContext::painter(), QgsDebugMsg, QgsMapRenderer::scale(), QgsPalLayerSettings::Size, QgsPalLayerSettings::sizeToPixel(), QgsPalGeometry::strId(), QgsPalLayerSettings::Strikeout, QgsPalLayerSettings::textColor, QgsPalLayerSettings::textFont, QgsMapToPixel::transform(), QgsPalLayerSettings::Underline, QgsPoint::x(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), QgsPoint::y(), QgsRectangle::yMaximum(), and QgsRectangle::yMinimum().
|
virtual |
called when we're done with rendering
Implements QgsLabelingEngineInterface.
Definition at line 914 of file qgspallabeling.cpp.
References mMapRenderer, and mPal.
Referenced by ~QgsPalLabeling().
|
virtual |
called when we're going to start with rendering
Implements QgsLabelingEngineInterface.
Definition at line 883 of file qgspallabeling.cpp.
References Chain, Falp, mActiveDiagramLayers, mActiveLayers, mCandLine, mCandPoint, mCandPolygon, mMapRenderer, mPal, mSearch, Popmusic_Chain, Popmusic_Tabu, and Popmusic_Tabu_Chain.
|
protected |
|
inline |
Definition at line 191 of file qgspallabeling.h.
|
inline |
Definition at line 187 of file qgspallabeling.h.
|
virtual |
return infos about labels at a given (map) position
Implements QgsLabelingEngineInterface.
Definition at line 1142 of file qgspallabeling.cpp.
References QgsLabelSearchTree::label(), and mLabelSearchTree.
QgsPalLayerSettings & QgsPalLabeling::layer | ( | const QString & | layerName) |
Definition at line 921 of file qgspallabeling.cpp.
References mActiveLayers, and mInvalidLayerSettings.
Referenced by drawLabel(), drawLabeling(), prepareLayer(), and registerFeature().
void QgsPalLabeling::numCandidatePositions | ( | int & | candPoint, |
int & | candLine, | ||
int & | candPolygon | ||
) |
Definition at line 1160 of file qgspallabeling.cpp.
References mCandLine, mCandPoint, and mCandPolygon.
|
virtual |
hook called when drawing layer before issuing select()
Implements QgsLabelingEngineInterface.
Definition at line 678 of file qgspallabeling.cpp.
References QgsPalLayerSettings::AroundPoint, QgsMapRenderer::coordinateTransform(), QgsMapLayer::crs(), QgsPalLayerSettings::ct, QgsPalLayerSettings::Curved, QgsPalLayerSettings::dataDefinedProperties, QgsMapRenderer::destinationCrs(), QgsPalLayerSettings::enabled, QgsPalLayerSettings::fieldIndex, QgsPalLayerSettings::fieldName, QgsVectorLayer::fieldNameIndex(), QgsPalLayerSettings::fontMetrics, QgsPalLayerSettings::Free, QgsMapRenderer::hasCrsTransformEnabled(), QgsPalLayerSettings::Horizontal, QgsMapLayer::id(), QgsPalLayerSettings::labelPerPart, layer(), QgsPalLayerSettings::Line, mActiveLayers, QgsPalLayerSettings::mergeLines, mMapRenderer, mPal, QgsPalLayerSettings::obstacle, QgsPalLayerSettings::OverPoint, QgsPalLayerSettings::palLayer, QgsPalLayerSettings::placement, QgsPalLayerSettings::placementFlags, QgsPalLayerSettings::priority, QgsPalLayerSettings::ptOne, QgsPalLayerSettings::ptZero, QgsPalLayerSettings::rasterCompressFactor, QgsRenderContext::rasterScaleFactor(), QgsPalLayerSettings::readFromLayer(), QgsRenderContext::scaleFactor(), QgsPalLayerSettings::scaleMax, QgsPalLayerSettings::scaleMin, QgsPalLayerSettings::sizeToPixel(), QgsPalLayerSettings::textFont, QgsMapToPixel::toMapCoordinates(), QgsPalLayerSettings::vectorScaleFactor, and QgsPalLayerSettings::xform.
|
virtual |
called for every diagram feature
Reimplemented from QgsLabelingEngineInterface.
Definition at line 785 of file qgspallabeling.cpp.
References QgsPalGeometry::addDiagramAttribute(), QgsGeometry::asGeos(), QgsFeature::attributeMap(), QgsDiagramRendererV2::diagramAttributes(), QgsFeature::geometry(), QgsFeature::id(), mActiveDiagramLayers, QgsDebugMsg, QgsPalGeometry::setIsDiagram(), QgsDiagramRendererV2::sizeMapUnits(), QgsPalGeometry::strId(), QgsGeometry::transform(), QgsCoordinateTransform::transformInPlace(), willUseLayer(), and QgsPoint::x().
|
virtual |
hook called when drawing for every feature in a layer
Implements QgsLabelingEngineInterface.
Definition at line 779 of file qgspallabeling.cpp.
References layer(), mActiveLayers, and QgsPalLayerSettings::registerFeature().
QgsPalLabeling::Search QgsPalLabeling::searchMethod | ( | ) | const |
Definition at line 1179 of file qgspallabeling.cpp.
References mSearch.
void QgsPalLabeling::setNumCandidatePositions | ( | int | candPoint, |
int | candLine, | ||
int | candPolygon | ||
) |
Definition at line 1167 of file qgspallabeling.cpp.
References mCandLine, mCandPoint, and mCandPolygon.
void QgsPalLabeling::setSearchMethod | ( | QgsPalLabeling::Search | s) |
Definition at line 1174 of file qgspallabeling.cpp.
References mSearch.
|
inline |
Definition at line 192 of file qgspallabeling.h.
|
inline |
Definition at line 188 of file qgspallabeling.h.
|
virtual |
called to find out whether the layer is used for labeling
Implements QgsLabelingEngineInterface.
Definition at line 671 of file qgspallabeling.cpp.
References QgsPalLayerSettings::enabled, and QgsPalLayerSettings::readFromLayer().
Referenced by registerDiagramFeature().
|
protected |
Definition at line 231 of file qgspallabeling.h.
Referenced by addDiagramLayer(), drawLabeling(), init(), and registerDiagramFeature().
|
protected |
Definition at line 229 of file qgspallabeling.h.
Referenced by drawLabeling(), init(), layer(), prepareLayer(), and registerFeature().
|
protected |
Definition at line 241 of file qgspallabeling.h.
Referenced by drawLabelCandidateRect(), and drawLabeling().
|
protected |
Definition at line 235 of file qgspallabeling.h.
Referenced by init(), numCandidatePositions(), QgsPalLabeling(), and setNumCandidatePositions().
|
protected |
Definition at line 235 of file qgspallabeling.h.
Referenced by init(), numCandidatePositions(), QgsPalLabeling(), and setNumCandidatePositions().
|
protected |
Definition at line 235 of file qgspallabeling.h.
Referenced by init(), numCandidatePositions(), QgsPalLabeling(), and setNumCandidatePositions().
|
protected |
Definition at line 232 of file qgspallabeling.h.
Referenced by layer().
|
protected |
Definition at line 246 of file qgspallabeling.h.
Referenced by drawLabeling(), labelsAtPosition(), QgsPalLabeling(), and ~QgsPalLabeling().
|
protected |
Definition at line 234 of file qgspallabeling.h.
Referenced by addDiagramLayer(), drawLabeling(), exit(), init(), and prepareLayer().
|
protected |
Definition at line 238 of file qgspallabeling.h.
Referenced by addDiagramLayer(), drawLabeling(), exit(), init(), and prepareLayer().
|
protected |
Definition at line 236 of file qgspallabeling.h.
Referenced by init(), QgsPalLabeling(), searchMethod(), and setSearchMethod().
|
protected |
Definition at line 244 of file qgspallabeling.h.
Referenced by clone(), drawLabeling(), and QgsPalLabeling().
|
protected |
Definition at line 242 of file qgspallabeling.h.
Referenced by clone(), drawLabeling(), and QgsPalLabeling().