Quantum GIS API Documentation  1.7.5-Wroclaw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
QgsPALObjectPositionManager Class Reference

A class that uses the PAL library for overlay object placement. More...

#include <qgspalobjectpositionmanager.h>

Inheritance diagram for QgsPALObjectPositionManager:
Inheritance graph
[legend]
Collaboration diagram for QgsPALObjectPositionManager:
Collaboration graph
[legend]

Public Member Functions

 QgsPALObjectPositionManager ()
 
 ~QgsPALObjectPositionManager ()
 
void addLayer (QgsVectorLayer *vl, QList< QgsVectorOverlay * > &overlays)
 Adds a layer that may contain * overlays to the position manager. More...
 
void findObjectPositions (const QgsRenderContext &renderContext, QGis::UnitType unitType)
 Calculate positions for the overlay objects. More...
 
void removeLayers ()
 Removes all the layers. More...
 
void setPlacementAlgorithm (const QString &algorithmName)
 Sets algorithm used for object placements. More...
 
- Public Member Functions inherited from QgsOverlayObjectPositionManager
virtual ~QgsOverlayObjectPositionManager ()
 

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. More...
 

Detailed Description

A class that uses the PAL library for overlay object placement.

Note
This class has been added in version 1.1

Definition at line 29 of file qgspalobjectpositionmanager.h.

Constructor & Destructor Documentation

QgsPALObjectPositionManager::QgsPALObjectPositionManager ( )

Definition at line 30 of file qgspalobjectpositionmanager.cpp.

QgsPALObjectPositionManager::~QgsPALObjectPositionManager ( )

Definition at line 35 of file qgspalobjectpositionmanager.cpp.

References deletePALGeometries().

Member Function Documentation

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
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().

Member Data Documentation

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

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