Quantum GIS API Documentation
1.7.4
|
A class that uses the PAL library for overlay object placement. More...
#include <qgspalobjectpositionmanager.h>
Public Member Functions | |
QgsPALObjectPositionManager () | |
~QgsPALObjectPositionManager () | |
void | addLayer (QgsVectorLayer *vl, QList< QgsVectorOverlay * > &overlays) |
Adds a layer that may contain * overlays to the position manager. | |
void | findObjectPositions (const QgsRenderContext &renderContext, QGis::UnitType unitType) |
Calculate positions for the overlay objects. | |
void | removeLayers () |
Removes all the layers. | |
void | setPlacementAlgorithm (const QString &algorithmName) |
Sets algorithm used for object placements. | |
Private Member Functions | |
void | deletePALGeometries () |
Private Attributes | |
pal::Pal | mPositionEngine |
int | mNumberOfLayers |
QList< QgsPALGeometry * > | mPALGeometries |
Internal storage of the pal geometries between addLayer and findObjectPositions operations. |
A class that uses the PAL library for overlay object placement.
Definition at line 29 of file qgspalobjectpositionmanager.h.
Definition at line 30 of file qgspalobjectpositionmanager.cpp.
Definition at line 35 of file qgspalobjectpositionmanager.cpp.
References deletePALGeometries().
void QgsPALObjectPositionManager::addLayer | ( | QgsVectorLayer * | vl, |
QList< QgsVectorOverlay * > & | overlays | ||
) | [virtual] |
Adds a layer that may contain * overlays to the position manager.
The overlay objects contained in the overlays will then be considered in label placement
Implements QgsOverlayObjectPositionManager.
Definition at line 40 of file qgspalobjectpositionmanager.cpp.
References QgsVectorLayer::geometryType(), QGis::Line, mNumberOfLayers, mPALGeometries, mPositionEngine, QGis::Point, and QGis::Polygon.
void QgsPALObjectPositionManager::deletePALGeometries | ( | ) | [private] |
Definition at line 227 of file qgspalobjectpositionmanager.cpp.
References mPALGeometries.
Referenced by findObjectPositions(), and ~QgsPALObjectPositionManager().
void QgsPALObjectPositionManager::findObjectPositions | ( | const QgsRenderContext & | context, |
QGis::UnitType | unitType | ||
) | [virtual] |
Calculate positions for the overlay objects.
context | Context of rendering operation (Painter, scale factor) |
unitType | meters, feet, degrees |
Implements QgsOverlayObjectPositionManager.
Definition at line 100 of file qgspalobjectpositionmanager.cpp.
References QgsOverlayObject::addPosition(), QgsRenderContext::coordinateTransform(), QGis::Degrees, deletePALGeometries(), QgsRenderContext::extent(), QGis::Feet, QGis::Meters, mPositionEngine, QgsPALGeometry::overlayObjectPtr(), QgsRenderContext::rendererScale(), QgsRenderContext::scaleFactor(), QgsCoordinateTransform::transformBoundingBox(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), QgsRectangle::yMaximum(), and QgsRectangle::yMinimum().
void QgsPALObjectPositionManager::removeLayers | ( | ) | [virtual] |
Removes all the layers.
Implements QgsOverlayObjectPositionManager.
Definition at line 183 of file qgspalobjectpositionmanager.cpp.
References mPositionEngine.
void QgsPALObjectPositionManager::setPlacementAlgorithm | ( | const QString & | algorithmName | ) |
Sets algorithm used for object placements.
Possibilities are: Chain, Popmusic tabu chain, Popmusic tabu, Popmusic chain
Definition at line 207 of file qgspalobjectpositionmanager.cpp.
References mPositionEngine.
Referenced by QgsMapRenderer::overlayManagerFromSettings().
int QgsPALObjectPositionManager::mNumberOfLayers [private] |
Definition at line 44 of file qgspalobjectpositionmanager.h.
Referenced by addLayer().
QList<QgsPALGeometry*> QgsPALObjectPositionManager::mPALGeometries [private] |
Internal storage of the pal geometries between addLayer and findObjectPositions operations.
Definition at line 46 of file qgspalobjectpositionmanager.h.
Referenced by addLayer(), and deletePALGeometries().
pal::Pal QgsPALObjectPositionManager::mPositionEngine [private] |
Definition at line 43 of file qgspalobjectpositionmanager.h.
Referenced by addLayer(), findObjectPositions(), removeLayers(), and setPlacementAlgorithm().