QGIS API Documentation  master-6227475
QgsComposerMap Class Reference

Object representing map window. More...

#include <qgscomposermap.h>

+ Inheritance diagram for QgsComposerMap:
+ Collaboration diagram for QgsComposerMap:

List of all members.

Public Types

enum  Border { Left, Right, Bottom, Top }
 Enum for different frame borders. More...
enum  GridAnnotationDirection { Horizontal = 0, Vertical, HorizontalAndVertical, BoundaryDirection }
enum  GridAnnotationFormat { Decimal = 0, DegreeMinute, DegreeMinuteSecond }
enum  GridAnnotationPosition { InsideMapFrame = 0, OutsideMapFrame, Disabled }
enum  GridFrameStyle { NoGridFrame = 0, Zebra }
enum  GridStyle { Solid = 0, Cross }
enum  PreviewMode { Cache = 0, Render, Rectangle }
 Preview style. More...

Public Slots

void renderModeUpdateCachedImage ()
 Call updateCachedImage if item is in render mode.
void updateCachedImage ()
 Called if map canvas has changed.

Signals

void extentChanged ()

Public Member Functions

 QgsComposerMap (QgsComposition *composition, int x, int y, int width, int height)
 Constructor.
 QgsComposerMap (QgsComposition *composition)
 Constructor.
virtual ~QgsComposerMap ()
QColor annotationFontColor () const
 Get font color for grid annotations.
double annotationFrameDistance () const
void assignFreeId ()
 Sets mId to a number not yet used in the composition.
QRectF boundingRect () const
 In case of annotations, the bounding rectangle can be larger than the map item rectangle.
void cache ()
 Create cache image.
bool containsAdvancedEffects () const
 True if composer map contains layers with blend modes or flattened layers for vectors.
bool containsWMSLayer () const
 True if composer map renders a WMS layer.
double crossLength ()
void draw (QPainter *painter, const QgsRectangle &extent, const QSizeF &size, double dpi, double *forceWidthScale=0)
 Draw to paint device.
bool drawCanvasItems () const
QgsRectangle extent () const
GridAnnotationDirection gridAnnotationDirection (QgsComposerMap::Border border) const
QFont gridAnnotationFont () const
GridAnnotationFormat gridAnnotationFormat () const
GridAnnotationPosition gridAnnotationPosition (QgsComposerMap::Border border) const
int gridAnnotationPrecision () const
QPainter::CompositionMode gridBlendMode () const
 Returns the grid's blending mode.
bool gridEnabled () const
GridFrameStyle gridFrameStyle () const
double gridFrameWidth () const
double gridIntervalX () const
double gridIntervalY () const
QgsLineSymbolV2gridLineSymbol ()
double gridOffsetX () const
double gridOffsetY () const
QPen gridPen () const
GridStyle gridStyle () const
int id () const
 Get identification number.
bool isDrawing () const
 True if a draw is already in progress.
bool keepLayerSet () const
 Getter for flag that determines if the stored layer set should be used or the current layer set of the qgis mapcanvas.
QStringList layerSet () const
 Getter for stored layer set that is used if mKeepLayerSet is true.
const QgsMapRenderermapRenderer () const
double mapUnitsToMM () const
 Returns the conversion factor map units -> mm.
void moveContent (double dx, double dy)
 Move content of map.
QPainter::CompositionMode overviewBlendMode () const
 Returns the overview's blending mode.
int overviewFrameMapId () const
 Returns id of overview frame (or -1 if no overfiew frame)
QgsFillSymbolV2overviewFrameMapSymbol ()
bool overviewInverted () const
 Returns true if the overview frame is inverted.
void paint (QPainter *painter, const QStyleOptionGraphicsItem *itemStyle, QWidget *pWidget)
 Reimplementation of QCanvasItem::paint - draw on canvas.
PreviewMode previewMode () const
bool readXML (const QDomElement &itemElem, const QDomDocument &doc)
 sets state from Dom document
void resize (double dx, double dy)
 resizes an item in x- and y direction (canvas coordinates)
double scale () const
 Scale.
void setAnnotationFontColor (const QColor &c)
 Sets font color for grid annotations.
void setAnnotationFrameDistance (double d)
 Sets distance between map frame and annotations.
void setCacheUpdated (bool u=false)
void setCrossLength (double l)
 Sets length of the cros segments (if grid style is cross)
void setDrawCanvasItems (bool b)
void setGridAnnotationDirection (GridAnnotationDirection d, QgsComposerMap::Border border)
void setGridAnnotationFont (const QFont &f)
 Sets font for grid annotations.
void setGridAnnotationFormat (GridAnnotationFormat f)
void setGridAnnotationPosition (GridAnnotationPosition p, QgsComposerMap::Border border)
void setGridAnnotationPrecision (int p)
 Sets coordinate precision for grid annotations.
void setGridBlendMode (QPainter::CompositionMode blendMode)
 Sets the grid's blending mode.
void setGridEnabled (bool enabled)
 Enables a coordinate grid that is shown on top of this composermap.
void setGridFrameStyle (GridFrameStyle style)
 Set grid frame style (NoGridFrame or Zebra)
void setGridFrameWidth (double w)
 Set grid frame width.
void setGridIntervalX (double interval)
 Sets coordinate interval in x-direction for composergrid.
void setGridIntervalY (double interval)
 Sets coordinate interval in y-direction for composergrid.
void setGridLineSymbol (QgsLineSymbolV2 *symbol)
void setGridOffsetX (double offset)
 Sets x-coordinate offset for composer grid.
void setGridOffsetY (double offset)
 Sets y-coordinate offset for composer grid.
void setGridPen (const QPen &p)
 Sets the pen to draw composer grid.
void setGridPenColor (const QColor &c)
 Sets the color of the grid pen.
void setGridPenWidth (double w)
 Sets with of grid pen.
void setGridStyle (GridStyle style)
 Sets coordinate grid style to solid or cross.
void setKeepLayerSet (bool enabled)
 Setter for flag that determines if the stored layer set should be used or the current layer set of the qgis mapcanvas.
void setLayerSet (const QStringList &layerSet)
 Setter for stored layer set that is used if mKeepLayerSet is true.
void setMapCanvas (QGraphicsView *canvas)
 Sets canvas pointer (necessary to query and draw map canvas items)
void setMapRotation (double r)
void setNewExtent (const QgsRectangle &extent)
 Sets new Extent and changes width, height (and implicitely also scale)
void setNewScale (double scaleDenominator)
 Sets new scale and changes only mExtent.
void setOffset (double xOffset, double yOffset)
 Sets offset values to shift image (useful for live updates when moving item content)
void setOverviewBlendMode (QPainter::CompositionMode blendMode)
 Sets the overview's blending mode.
void setOverviewFrameMap (int mapId)
 Sets overview frame map.
void setOverviewFrameMapSymbol (QgsFillSymbolV2 *symbol)
void setOverviewInverted (bool inverted)
 Sets the overview's inversion mode.
void setPreviewMode (PreviewMode m)
void setSceneRect (const QRectF &rectangle)
 Sets new scene rectangle bounds and recalculates hight and extent.
void setShowGridAnnotation (bool show)
 Sets flag if grid annotation should be shown.
bool showGridAnnotation () const
void storeCurrentLayerSet ()
 Stores the current layer set of the qgis mapcanvas in mLayerSet.
virtual int type () const
 return correct graphics item type.
void updateBoundingRect ()
 Updates the bounding rect of this item.
void updateItem ()
 Updates item, with the possibility to do custom update for subclasses.
bool writeXML (QDomElement &elem, QDomDocument &doc) const
 stores state in Dom node
void zoomContent (int delta, double x, double y)
 Zoom content of map.

Private Types

enum  AnnotationCoordinate { Longitude = 0, Latitude }

Private Member Functions

Border borderForLineCoord (const QPointF &p) const
 Returns the item border of a point (in item coordinates)
QPointF composerMapPosForItem (const QGraphicsItem *item) const
void connectUpdateSlot ()
 Establishes signal/slot connection for update in case of layer change.
void createDefaultGridLineSymbol ()
void createDefaultOverviewFrameSymbol ()
void drawAnnotation (QPainter *p, const QPointF &pos, int rotation, const QString &annotationText)
 Draws a single annotation.
void drawCanvasItem (QGraphicsItem *item, QPainter *painter, const QStyleOptionGraphicsItem *itemStyle)
void drawCanvasItems (QPainter *painter, const QStyleOptionGraphicsItem *itemStyle)
void drawCoordinateAnnotation (QPainter *p, const QPointF &pos, QString annotationString)
void drawCoordinateAnnotations (QPainter *p, const QList< QPair< double, QLineF > > &hLines, const QList< QPair< double, QLineF > > &vLines)
 Draw coordinates for mGridAnnotationType Coordinate.
void drawGrid (QPainter *p)
 Draws the map grid.
void drawGridFrame (QPainter *p, const QList< QPair< double, QLineF > > &hLines, const QList< QPair< double, QLineF > > &vLines)
void drawGridFrameBorder (QPainter *p, const QMap< double, double > &borderPos, Border border)
void drawGridLine (const QLineF &line, QPainter *p)
void drawOverviewMapExtent (QPainter *p)
QString gridAnnotationString (double value, AnnotationCoordinate coord) const
void initGridAnnotationFormatFromProject ()
void mapPolygon (QPolygonF &poly) const
 Returns the polygon of the map extent.
QPointF mapToItemCoords (const QPointF &mapCoords) const
 Transforms map coordinates to item coordinates (considering rotation and move offset)
double maxExtension () const
void requestedExtent (QgsRectangle &extent) const
 Calculates the extent to request and the yShift of the top-left point in case of rotation.
void sortGridLinesOnBorders (const QList< QPair< double, QLineF > > &hLines, const QList< QPair< double, QLineF > > &vLines, QMap< double, double > &leftFrameEntries, QMap< double, double > &rightFrameEntries, QMap< double, double > &topFrameEntries, QMap< double, double > &bottomFrameEntries) const
void syncLayerSet ()
 Removes layer ids from mLayerSet that are no longer present in the qgis main map.
QgsRectangle transformedExtent () const
 Returns extent that considers mOffsetX / mOffsetY (during content move)
QPolygonF transformedMapPolygon () const
 Returns extent that considers rotation and shift with mOffsetX / mOffsetY.
void transformShift (double &xShift, double &yShift) const
 Scales a composer map shift (in MM) and rotates it by mRotation.
int xGridLines (QList< QPair< double, QLineF > > &lines) const
 Returns the grid lines with associated coordinate value.
int yGridLines (QList< QPair< double, QLineF > > &lines) const
 Returns the grid lines for the y-coordinates.

Private Attributes

double mAnnotationFrameDistance
 Distance between map frame and annotation.
GridAnnotationDirection mBottomGridAnnotationDirection
 Annotation direction on bottom side ( horizontal or vertical )
GridAnnotationPosition mBottomGridAnnotationPosition
 Annotation position for bottom map side (inside / outside / not shown)
QImage mCacheImage
bool mCacheUpdated
double mCrossLength
 The length of the cross sides for mGridStyle Cross.
QRectF mCurrentRectangle
 Current bounding rectangle.
bool mDrawCanvasItems
 True if annotation items, rubber band, etc.
bool mDrawing
 set to true if in state of drawing.
QgsRectangle mExtent
QFont mGridAnnotationFont
 Font for grid line annotation.
QColor mGridAnnotationFontColor
 Font color for grid line annotation.
GridAnnotationFormat mGridAnnotationFormat
int mGridAnnotationPrecision
 Digits after the dot.
QPainter::CompositionMode mGridBlendMode
 Blend mode for grid.
bool mGridEnabled
 True if coordinate grid has to be displayed.
GridFrameStyle mGridFrameStyle
double mGridFrameWidth
double mGridIntervalX
 Grid line interval in x-direction (map units)
double mGridIntervalY
 Grid line interval in y-direction (map units)
QgsLineSymbolV2mGridLineSymbol
double mGridOffsetX
 Grid line offset in x-direction.
double mGridOffsetY
 Grid line offset in y-direction.
GridStyle mGridStyle
 Solid or crosses.
int mId
 Unique identifier.
bool mKeepLayerSet
 Flag if layers to be displayed should be read from qgis canvas (true) or from stored list in mLayerSet (false)
QStringList mLayerSet
 Stored layer list (used if layer live-link mKeepLayerSet is disabled)
GridAnnotationDirection mLeftGridAnnotationDirection
 Annotation direction on left side ( horizontal or vertical )
GridAnnotationPosition mLeftGridAnnotationPosition
 Annotation position for left map side (inside / outside / not shown)
QGraphicsView * mMapCanvas
QgsMapRenderermMapRenderer
int mNumCachedLayers
 Number of layers when cache was created.
QPainter::CompositionMode mOverviewBlendMode
 Blend mode for overview.
int mOverviewFrameMapId
 Id of map which displays its extent rectangle into this composer map (overview map functionality).
QgsFillSymbolV2mOverviewFrameMapSymbol
 Drawing style for overview farme.
bool mOverviewInverted
PreviewMode mPreviewMode
 Preview style.
GridAnnotationDirection mRightGridAnnotationDirection
 Annotation direction on right side ( horizontal or vertical )
GridAnnotationPosition mRightGridAnnotationPosition
 Annotation position for right map side (inside / outside / not shown)
bool mShowGridAnnotation
 True if coordinate values should be drawn.
GridAnnotationDirection mTopGridAnnotationDirection
 Annotation direction on top side ( horizontal or vertical )
GridAnnotationPosition mTopGridAnnotationPosition
 Annotation position for top map side (inside / outside / not shown)
double mXOffset
 Offset in x direction for showing map cache image.
double mYOffset
 Offset in y direction for showing map cache image.

Detailed Description

Object representing map window.

Definition at line 42 of file qgscomposermap.h.


Member Enumeration Documentation

Enumerator:
Longitude 
Latitude 

Definition at line 359 of file qgscomposermap.h.

Enum for different frame borders.

Enumerator:
Left 
Right 
Bottom 
Top 

Definition at line 99 of file qgscomposermap.h.

Enumerator:
Horizontal 
Vertical 
HorizontalAndVertical 
BoundaryDirection 

Definition at line 77 of file qgscomposermap.h.

Enumerator:
Decimal 
DegreeMinute 
DegreeMinuteSecond 

Definition at line 85 of file qgscomposermap.h.

Enumerator:
InsideMapFrame 
OutsideMapFrame 
Disabled 

Definition at line 70 of file qgscomposermap.h.

Enumerator:
NoGridFrame 
Zebra 

Definition at line 92 of file qgscomposermap.h.

Enumerator:
Solid 
Cross 

Definition at line 64 of file qgscomposermap.h.

Preview style.

Enumerator:
Cache 
Render 
Rectangle 

Definition at line 57 of file qgscomposermap.h.


Constructor & Destructor Documentation

Definition at line 119 of file qgscomposermap.cpp.

References mGridLineSymbol, and mOverviewFrameMapSymbol.


Member Function Documentation

QColor QgsComposerMap::annotationFontColor ( ) const [inline]

Get font color for grid annotations.

Note:
: this function was added in version 2.0

Definition at line 254 of file qgscomposermap.h.

double QgsComposerMap::annotationFrameDistance ( ) const [inline]

Definition at line 272 of file qgscomposermap.h.

Sets mId to a number not yet used in the composition.

mId is kept if it is not in use. Usually, this function is called before adding the composer map to the composition

Definition at line 2262 of file qgscomposermap.cpp.

References QgsComposition::composerMapItems(), QgsComposition::getComposerMapById(), QgsComposerItem::mComposition, and mId.

Referenced by QgsComposition::addItemsFromXML(), and QgsComposerMap().

QgsComposerMap::Border QgsComposerMap::borderForLineCoord ( const QPointF &  p) const [private]

Returns the item border of a point (in item coordinates)

Definition at line 1878 of file qgscomposermap.cpp.

References Bottom, Left, Right, and Top.

Referenced by drawCoordinateAnnotation(), and sortGridLinesOnBorders().

QRectF QgsComposerMap::boundingRect ( ) const

In case of annotations, the bounding rectangle can be larger than the map item rectangle.

Note:
this function was added in version 1.4

Definition at line 1641 of file qgscomposermap.cpp.

References mCurrentRectangle.

Establishes signal/slot connection for update in case of layer change.

Definition at line 695 of file qgscomposermap.cpp.

References QgsMapLayerRegistry::instance(), and updateCachedImage().

Referenced by QgsComposerMap().

Definition at line 2228 of file qgscomposermap.cpp.

References QgsLineSymbolV2::createSimple(), and mGridLineSymbol.

Referenced by QgsComposerMap().

double QgsComposerMap::crossLength ( ) [inline]

Definition at line 300 of file qgscomposermap.h.

void QgsComposerMap::drawAnnotation ( QPainter *  p,
const QPointF &  pos,
int  rotation,
const QString &  annotationText 
) [private]

Draws a single annotation.

Parameters:
pdrawing painter
positem coordinates where to draw
rotationtext rotation
annotationTextthe text to draw

Definition at line 1420 of file qgscomposermap.cpp.

References QgsComposerItem::drawText(), mGridAnnotationFont, and mGridAnnotationFontColor.

Referenced by drawCoordinateAnnotation().

void QgsComposerMap::drawCanvasItem ( QGraphicsItem *  item,
QPainter *  painter,
const QStyleOptionGraphicsItem *  itemStyle 
) [private]
bool QgsComposerMap::drawCanvasItems ( ) const [inline]

Definition at line 310 of file qgscomposermap.h.

Referenced by paint().

void QgsComposerMap::drawCanvasItems ( QPainter *  painter,
const QStyleOptionGraphicsItem *  itemStyle 
) [private]

Definition at line 1898 of file qgscomposermap.cpp.

References drawCanvasItem(), mDrawCanvasItems, and mMapCanvas.

void QgsComposerMap::drawCoordinateAnnotations ( QPainter *  p,
const QList< QPair< double, QLineF > > &  hLines,
const QList< QPair< double, QLineF > > &  vLines 
) [private]

Draw coordinates for mGridAnnotationType Coordinate.

Parameters:
pdrawing painter
hLineshorizontal coordinate lines in item coordinates
vLinesvertical coordinate lines in item coordinates

Definition at line 1236 of file qgscomposermap.cpp.

References drawCoordinateAnnotation(), gridAnnotationString(), Latitude, and Longitude.

Referenced by drawGrid().

void QgsComposerMap::drawGridFrame ( QPainter *  p,
const QList< QPair< double, QLineF > > &  hLines,
const QList< QPair< double, QLineF > > &  vLines 
) [private]

Definition at line 1147 of file qgscomposermap.cpp.

References Bottom, drawGridFrameBorder(), Left, Right, sortGridLinesOnBorders(), and Top.

Referenced by drawGrid().

void QgsComposerMap::drawGridFrameBorder ( QPainter *  p,
const QMap< double, double > &  borderPos,
Border  border 
) [private]

Definition at line 1190 of file qgscomposermap.cpp.

References Left, mGridFrameWidth, Right, and Top.

Referenced by drawGridFrame().

QFont QgsComposerMap::gridAnnotationFont ( ) const [inline]

Definition at line 247 of file qgscomposermap.h.

Definition at line 278 of file qgscomposermap.h.

Definition at line 259 of file qgscomposermap.h.

QPainter::CompositionMode QgsComposerMap::gridBlendMode ( ) const [inline]

Returns the grid's blending mode.

Definition at line 339 of file qgscomposermap.h.

bool QgsComposerMap::gridEnabled ( ) const [inline]

Definition at line 204 of file qgscomposermap.h.

Definition at line 283 of file qgscomposermap.h.

double QgsComposerMap::gridFrameWidth ( ) const [inline]

Definition at line 288 of file qgscomposermap.h.

double QgsComposerMap::gridIntervalX ( ) const [inline]

Definition at line 214 of file qgscomposermap.h.

double QgsComposerMap::gridIntervalY ( ) const [inline]

Definition at line 219 of file qgscomposermap.h.

Definition at line 336 of file qgscomposermap.h.

double QgsComposerMap::gridOffsetX ( ) const [inline]

Definition at line 224 of file qgscomposermap.h.

double QgsComposerMap::gridOffsetY ( ) const [inline]

Definition at line 229 of file qgscomposermap.h.

Definition at line 209 of file qgscomposermap.h.

bool QgsComposerMap::isDrawing ( ) const [inline]

True if a draw is already in progress.

Definition at line 126 of file qgscomposermap.h.

Referenced by QgsComposerAttributeTable::paint(), and QgsComposition::removeComposerItem().

bool QgsComposerMap::keepLayerSet ( ) const [inline]

Getter for flag that determines if the stored layer set should be used or the current layer set of the qgis mapcanvas.

Note:
this function was added in version 1.2

Definition at line 159 of file qgscomposermap.h.

QStringList QgsComposerMap::layerSet ( ) const [inline]

Getter for stored layer set that is used if mKeepLayerSet is true.

Note:
this function was added in version 1.2

Definition at line 166 of file qgscomposermap.h.

Referenced by readXML().

void QgsComposerMap::mapPolygon ( QPolygonF &  poly) const [private]

Returns the polygon of the map extent.

If rotation == 0, the result is the same as mExtent

Parameters:
polyout: the result polygon with the four corner points. The points are clockwise, starting at the top-left point
Returns:
true in case of success

Definition at line 1730 of file qgscomposermap.cpp.

References mExtent, QgsComposerItem::mRotation, QgsComposerItem::rotate(), QgsPoint::x(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), QgsPoint::y(), QgsRectangle::yMaximum(), and QgsRectangle::yMinimum().

Referenced by requestedExtent(), transformedMapPolygon(), xGridLines(), and yGridLines().

QPointF QgsComposerMap::mapToItemCoords ( const QPointF &  mapCoords) const [private]
double QgsComposerMap::mapUnitsToMM ( ) const

Returns the conversion factor map units -> mm.

Definition at line 1789 of file qgscomposermap.cpp.

References mExtent, and QgsRectangle::width().

Referenced by cache(), QgsComposerLegend::drawSymbolV2(), paint(), and transformShift().

void QgsComposerMap::moveContent ( double  dx,
double  dy 
) [virtual]

Move content of map.

Parameters:
dxmove in x-direction (item and canvas coordinates)
dymove in y-direction (item and canvas coordinates)

Reimplemented from QgsComposerItem.

Definition at line 438 of file qgscomposermap.cpp.

References cache(), extentChanged(), QgsComposerItem::itemChanged(), mDrawing, mExtent, QgsRectangle::setXMaximum(), QgsRectangle::setXMinimum(), QgsRectangle::setYMaximum(), QgsRectangle::setYMinimum(), transformShift(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), QgsRectangle::yMaximum(), and QgsRectangle::yMinimum().

QPainter::CompositionMode QgsComposerMap::overviewBlendMode ( ) const [inline]

Returns the overview's blending mode.

Definition at line 326 of file qgscomposermap.h.

int QgsComposerMap::overviewFrameMapId ( ) const [inline]

Returns id of overview frame (or -1 if no overfiew frame)

Note:
: this function was added in version 1.9

Definition at line 320 of file qgscomposermap.h.

bool QgsComposerMap::overviewInverted ( ) const [inline]

Returns true if the overview frame is inverted.

Definition at line 331 of file qgscomposermap.h.

Call updateCachedImage if item is in render mode.

Definition at line 408 of file qgscomposermap.cpp.

References mPreviewMode, Render, and updateCachedImage().

void QgsComposerMap::requestedExtent ( QgsRectangle extent) const [private]

Calculates the extent to request and the yShift of the top-left point in case of rotation.

Definition at line 1771 of file qgscomposermap.cpp.

References mapPolygon(), mExtent, QgsComposerItem::mRotation, QgsRectangle::setXMaximum(), QgsRectangle::setXMinimum(), QgsRectangle::setYMaximum(), and QgsRectangle::setYMinimum().

Referenced by cache(), and paint().

void QgsComposerMap::resize ( double  dx,
double  dy 
)

resizes an item in x- and y direction (canvas coordinates)

Definition at line 429 of file qgscomposermap.cpp.

References setSceneRect(), and updateItem().

void QgsComposerMap::setAnnotationFontColor ( const QColor &  c) [inline]

Sets font color for grid annotations.

Note:
: this function was added in version 2.0

Definition at line 251 of file qgscomposermap.h.

void QgsComposerMap::setAnnotationFrameDistance ( double  d) [inline]

Sets distance between map frame and annotations.

Note:
this function was added in version 1.4

Definition at line 271 of file qgscomposermap.h.

void QgsComposerMap::setCacheUpdated ( bool  u = false)

Definition at line 416 of file qgscomposermap.cpp.

References mCacheUpdated.

void QgsComposerMap::setCrossLength ( double  l) [inline]

Sets length of the cros segments (if grid style is cross)

Note:
this function was added in version 1.4

Definition at line 299 of file qgscomposermap.h.

void QgsComposerMap::setDrawCanvasItems ( bool  b) [inline]

Definition at line 309 of file qgscomposermap.h.

void QgsComposerMap::setGridAnnotationFont ( const QFont &  f) [inline]

Sets font for grid annotations.

Note:
this function was added in version 1.4

Definition at line 246 of file qgscomposermap.h.

Definition at line 277 of file qgscomposermap.h.

Sets coordinate precision for grid annotations.

Note:
this function was added in version 1.4

Definition at line 258 of file qgscomposermap.h.

void QgsComposerMap::setGridBlendMode ( QPainter::CompositionMode  blendMode)

Sets the grid's blending mode.

Definition at line 1635 of file qgscomposermap.cpp.

References QgsComposerItem::blendMode(), and mGridBlendMode.

Referenced by readXML().

void QgsComposerMap::setGridEnabled ( bool  enabled) [inline]

Enables a coordinate grid that is shown on top of this composermap.

Note:
this function was added in version 1.4

Definition at line 203 of file qgscomposermap.h.

Set grid frame style (NoGridFrame or Zebra)

Note:
: this function was added in version 1.9

Definition at line 282 of file qgscomposermap.h.

void QgsComposerMap::setGridFrameWidth ( double  w) [inline]

Set grid frame width.

Note:
: this function was added in version 1.9

Definition at line 287 of file qgscomposermap.h.

void QgsComposerMap::setGridIntervalX ( double  interval) [inline]

Sets coordinate interval in x-direction for composergrid.

Note:
this function was added in version 1.4

Definition at line 213 of file qgscomposermap.h.

void QgsComposerMap::setGridIntervalY ( double  interval) [inline]

Sets coordinate interval in y-direction for composergrid.

Note:
this function was added in version 1.4

Definition at line 218 of file qgscomposermap.h.

Definition at line 1839 of file qgscomposermap.cpp.

References mGridLineSymbol.

void QgsComposerMap::setGridOffsetX ( double  offset) [inline]

Sets x-coordinate offset for composer grid.

Note:
this function was added in version 1.4

Definition at line 223 of file qgscomposermap.h.

void QgsComposerMap::setGridOffsetY ( double  offset) [inline]

Sets y-coordinate offset for composer grid.

Note:
this function was added in version 1.4

Definition at line 228 of file qgscomposermap.h.

void QgsComposerMap::setGridPen ( const QPen &  p)

Sets the pen to draw composer grid.

Note:
this function was added in version 1.4

Definition at line 1617 of file qgscomposermap.cpp.

References setGridPenColor(), and setGridPenWidth().

void QgsComposerMap::setGridPenColor ( const QColor &  c)

Sets the color of the grid pen.

Note:
this function was added in version 1.4

Definition at line 1609 of file qgscomposermap.cpp.

References mGridLineSymbol, and QgsSymbolV2::setColor().

Referenced by setGridPen().

void QgsComposerMap::setGridPenWidth ( double  w)

Sets with of grid pen.

Note:
this function was added in version 1.4

Definition at line 1601 of file qgscomposermap.cpp.

References mGridLineSymbol, and QgsLineSymbolV2::setWidth().

Referenced by setGridPen().

void QgsComposerMap::setGridStyle ( GridStyle  style) [inline]

Sets coordinate grid style to solid or cross.

Note:
this function was added in version 1.4

Definition at line 208 of file qgscomposermap.h.

void QgsComposerMap::setKeepLayerSet ( bool  enabled) [inline]

Setter for flag that determines if the stored layer set should be used or the current layer set of the qgis mapcanvas.

Note:
this function was added in version 1.2

Definition at line 162 of file qgscomposermap.h.

void QgsComposerMap::setLayerSet ( const QStringList &  layerSet) [inline]

Setter for stored layer set that is used if mKeepLayerSet is true.

Note:
this function was added in version 1.2

Definition at line 169 of file qgscomposermap.h.

void QgsComposerMap::setMapCanvas ( QGraphicsView *  canvas) [inline]

Sets canvas pointer (necessary to query and draw map canvas items)

Definition at line 307 of file qgscomposermap.h.

void QgsComposerMap::setNewExtent ( const QgsRectangle extent)

Sets new Extent and changes width, height (and implicitely also scale)

Definition at line 541 of file qgscomposermap.cpp.

References extent(), QgsRectangle::height(), mExtent, setSceneRect(), updateItem(), and QgsRectangle::width().

Referenced by QgsAtlasComposition::endRender(), and QgsAtlasComposition::prepareForFeature().

void QgsComposerMap::setNewScale ( double  scaleDenominator)

Sets new scale and changes only mExtent.

Definition at line 558 of file qgscomposermap.cpp.

References cache(), extentChanged(), QgsComposerItem::itemChanged(), mCacheUpdated, mExtent, QgsRectangle::scale(), and scale().

void QgsComposerMap::setOffset ( double  xOffset,
double  yOffset 
)

Sets offset values to shift image (useful for live updates when moving item content)

Definition at line 582 of file qgscomposermap.cpp.

References mXOffset, and mYOffset.

Referenced by QgsComposerView::mouseMoveEvent(), and QgsComposerView::mouseReleaseEvent().

void QgsComposerMap::setOverviewBlendMode ( QPainter::CompositionMode  blendMode)

Sets the overview's blending mode.

Definition at line 1827 of file qgscomposermap.cpp.

References QgsComposerItem::blendMode(), and mOverviewBlendMode.

Referenced by readXML().

Sets overview frame map.

-1 disables the overview frame

Note:
: this function was added in version 1.9

Definition at line 1799 of file qgscomposermap.cpp.

References extentChanged(), QgsComposition::getComposerMapById(), QgsComposerItem::mComposition, mOverviewFrameMapId, and QgsComposerItem::repaint().

Referenced by readXML().

void QgsComposerMap::setOverviewInverted ( bool  inverted)

Sets the overview's inversion mode.

Definition at line 1833 of file qgscomposermap.cpp.

References mOverviewInverted.

Referenced by readXML().

void QgsComposerMap::setSceneRect ( const QRectF &  rectangle) [virtual]

Sets new scene rectangle bounds and recalculates hight and extent.

Reimplemented from QgsComposerItem.

Definition at line 522 of file qgscomposermap.cpp.

References extentChanged(), QgsComposerItem::itemChanged(), mCacheUpdated, mExtent, updateBoundingRect(), QgsRectangle::width(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), and QgsRectangle::yMinimum().

Referenced by QgsComposerMap(), resize(), and setNewExtent().

void QgsComposerMap::setShowGridAnnotation ( bool  show) [inline]

Sets flag if grid annotation should be shown.

Note:
this function was added in version 1.4

Definition at line 263 of file qgscomposermap.h.

bool QgsComposerMap::showGridAnnotation ( ) const [inline]

Definition at line 264 of file qgscomposermap.h.

void QgsComposerMap::sortGridLinesOnBorders ( const QList< QPair< double, QLineF > > &  hLines,
const QList< QPair< double, QLineF > > &  vLines,
QMap< double, double > &  leftFrameEntries,
QMap< double, double > &  rightFrameEntries,
QMap< double, double > &  topFrameEntries,
QMap< double, double > &  bottomFrameEntries 
) const [private]

Definition at line 2114 of file qgscomposermap.cpp.

References borderForLineCoord(), Left, Right, and Top.

Referenced by drawGridFrame().

Stores the current layer set of the qgis mapcanvas in mLayerSet.

Definition at line 1019 of file qgscomposermap.cpp.

References QgsMapRenderer::layerSet(), mLayerSet, and mMapRenderer.

void QgsComposerMap::syncLayerSet ( ) [private]

Removes layer ids from mLayerSet that are no longer present in the qgis main map.

Definition at line 1027 of file qgscomposermap.cpp.

References QgsMapLayerRegistry::instance(), QgsMapRenderer::layerSet(), QgsMapLayerRegistry::mapLayers(), mKeepLayerSet, mLayerSet, and mMapRenderer.

Referenced by updateCachedImage().

Returns extent that considers mOffsetX / mOffsetY (during content move)

Definition at line 1661 of file qgscomposermap.cpp.

References mExtent, mXOffset, mYOffset, transformShift(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), QgsRectangle::yMaximum(), and QgsRectangle::yMinimum().

Referenced by mapToItemCoords().

QPolygonF QgsComposerMap::transformedMapPolygon ( ) const [private]

Returns extent that considers rotation and shift with mOffsetX / mOffsetY.

Definition at line 1669 of file qgscomposermap.cpp.

References mapPolygon(), mXOffset, mYOffset, and transformShift().

Referenced by mapToItemCoords(), xGridLines(), and yGridLines().

void QgsComposerMap::transformShift ( double &  xShift,
double &  yShift 
) const [private]

Scales a composer map shift (in MM) and rotates it by mRotation.

Parameters:
xShiftin: shift in x direction (in item units), out: xShift in map units
yShiftin: shift in y direction (in item units), out: yShift in map units

Definition at line 1845 of file qgscomposermap.cpp.

References mapUnitsToMM(), QgsComposerItem::mRotation, and QgsComposerItem::rotate().

Referenced by moveContent(), transformedExtent(), and transformedMapPolygon().

virtual int QgsComposerMap::type ( ) const [inline, virtual]

return correct graphics item type.

Added in v1.7

Reimplemented from QgsComposerItem.

Definition at line 54 of file qgscomposermap.h.

References QgsComposerItem::ComposerMap.

Updates the bounding rect of this item.

Call this function before doing any changes related to annotation out of the map rectangle

Note:
this function was added in version 1.4

Definition at line 1646 of file qgscomposermap.cpp.

References maxExtension(), and mCurrentRectangle.

Referenced by readXML(), setGridAnnotationDirection(), setGridAnnotationPosition(), and setSceneRect().

void QgsComposerMap::updateCachedImage ( void  ) [slot]

Called if map canvas has changed.

Definition at line 400 of file qgscomposermap.cpp.

References cache(), mCacheUpdated, and syncLayerSet().

Referenced by connectUpdateSlot(), and renderModeUpdateCachedImage().

void QgsComposerMap::updateItem ( ) [virtual]

Updates item, with the possibility to do custom update for subclasses.

Reimplemented from QgsComposerItem.

Definition at line 595 of file qgscomposermap.cpp.

References cache(), mCacheUpdated, mPreviewMode, and Rectangle.

Referenced by resize(), and setNewExtent().

int QgsComposerMap::xGridLines ( QList< QPair< double, QLineF > > &  lines) const [private]

Returns the grid lines with associated coordinate value.

Returns:
0 in case of success

Definition at line 1466 of file qgscomposermap.cpp.

References mapPolygon(), mapToItemCoords(), mGridIntervalY, mGridOffsetY, QgsComposerItem::mRotation, qgsDoubleNear(), and transformedMapPolygon().

Referenced by drawGrid(), and maxExtension().

int QgsComposerMap::yGridLines ( QList< QPair< double, QLineF > > &  lines) const [private]

Returns the grid lines for the y-coordinates.

Not vertical in case of rotation

Returns:
0 in case of success

Definition at line 1535 of file qgscomposermap.cpp.

References mapPolygon(), mapToItemCoords(), mGridIntervalX, mGridOffsetX, QgsComposerItem::mRotation, qgsDoubleNear(), and transformedMapPolygon().

Referenced by drawGrid(), and maxExtension().

void QgsComposerMap::zoomContent ( int  delta,
double  x,
double  y 
) [virtual]

Zoom content of map.

Parameters:
deltavalue from wheel event that describes magnitude and direction (positive /negative number)
xx-coordinate of mouse position in item coordinates
yy-coordinate of mouse position in item coordinates

Reimplemented from QgsComposerItem.

Definition at line 454 of file qgscomposermap.cpp.

References cache(), extentChanged(), QgsComposerItem::itemChanged(), mDrawing, mExtent, QgsRectangle::setXMaximum(), QgsRectangle::setXMinimum(), QgsRectangle::setYMaximum(), QgsRectangle::setYMinimum(), QgsRectangle::xMaximum(), QgsRectangle::xMinimum(), QgsRectangle::yMaximum(), and QgsRectangle::yMinimum().


Member Data Documentation

Distance between map frame and annotation.

Definition at line 451 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), maxExtension(), readXML(), and writeXML().

Annotation direction on bottom side ( horizontal or vertical )

Definition at line 460 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationDirection(), readXML(), setGridAnnotationDirection(), and writeXML().

Annotation position for bottom map side (inside / outside / not shown)

Definition at line 448 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationPosition(), maxExtension(), readXML(), setGridAnnotationPosition(), and writeXML().

QImage QgsComposerMap::mCacheImage [private]

Definition at line 378 of file qgscomposermap.h.

Referenced by cache(), and paint().

double QgsComposerMap::mCrossLength [private]

The length of the cross sides for mGridStyle Cross.

Definition at line 470 of file qgscomposermap.h.

Referenced by drawGrid(), readXML(), and writeXML().

Current bounding rectangle.

This is used to check if notification to the graphics scene is necessary

Definition at line 468 of file qgscomposermap.h.

Referenced by boundingRect(), QgsComposerMap(), and updateBoundingRect().

True if annotation items, rubber band, etc.

from the main canvas should be displayed

Definition at line 473 of file qgscomposermap.h.

Referenced by drawCanvasItems(), readXML(), and writeXML().

bool QgsComposerMap::mDrawing [private]

set to true if in state of drawing.

Concurrent requests to draw method are returned if set to true

Definition at line 390 of file qgscomposermap.h.

Referenced by cache(), moveContent(), paint(), QgsComposerMap(), readXML(), and zoomContent().

Font for grid line annotation.

Definition at line 431 of file qgscomposermap.h.

Referenced by drawAnnotation(), drawCoordinateAnnotation(), maxExtension(), readXML(), and writeXML().

Font color for grid line annotation.

Definition at line 433 of file qgscomposermap.h.

Referenced by drawAnnotation(), readXML(), and writeXML().

Digits after the dot.

Definition at line 435 of file qgscomposermap.h.

Referenced by gridAnnotationString(), readXML(), and writeXML().

QPainter::CompositionMode QgsComposerMap::mGridBlendMode [private]

Blend mode for grid.

Definition at line 439 of file qgscomposermap.h.

Referenced by drawGrid(), setGridBlendMode(), and writeXML().

True if coordinate grid has to be displayed.

Definition at line 419 of file qgscomposermap.h.

Referenced by maxExtension(), paint(), readXML(), and writeXML().

Grid line interval in x-direction (map units)

Definition at line 423 of file qgscomposermap.h.

Referenced by readXML(), writeXML(), and yGridLines().

Grid line interval in y-direction (map units)

Definition at line 425 of file qgscomposermap.h.

Referenced by readXML(), writeXML(), and xGridLines().

double QgsComposerMap::mGridOffsetX [private]

Grid line offset in x-direction.

Definition at line 427 of file qgscomposermap.h.

Referenced by readXML(), writeXML(), and yGridLines().

double QgsComposerMap::mGridOffsetY [private]

Grid line offset in y-direction.

Definition at line 429 of file qgscomposermap.h.

Referenced by readXML(), writeXML(), and xGridLines().

Solid or crosses.

Definition at line 421 of file qgscomposermap.h.

Referenced by drawGrid(), readXML(), and writeXML().

int QgsComposerMap::mId [private]

Unique identifier.

Reimplemented from QgsComposerItem.

Definition at line 370 of file qgscomposermap.h.

Referenced by assignFreeId(), QgsComposerMap(), readXML(), and writeXML().

Flag if layers to be displayed should be read from qgis canvas (true) or from stored list in mLayerSet (false)

Definition at line 398 of file qgscomposermap.h.

Referenced by draw(), readXML(), syncLayerSet(), and writeXML().

QStringList QgsComposerMap::mLayerSet [private]

Stored layer list (used if layer live-link mKeepLayerSet is disabled)

Definition at line 401 of file qgscomposermap.h.

Referenced by draw(), readXML(), storeCurrentLayerSet(), syncLayerSet(), and writeXML().

Annotation direction on left side ( horizontal or vertical )

Definition at line 454 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationDirection(), readXML(), setGridAnnotationDirection(), and writeXML().

Annotation position for left map side (inside / outside / not shown)

Definition at line 442 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationPosition(), maxExtension(), readXML(), setGridAnnotationPosition(), and writeXML().

QGraphicsView* QgsComposerMap::mMapCanvas [private]

Definition at line 471 of file qgscomposermap.h.

Referenced by composerMapPosForItem(), drawCanvasItem(), and drawCanvasItems().

Number of layers when cache was created.

Definition at line 387 of file qgscomposermap.h.

Referenced by readXML().

QPainter::CompositionMode QgsComposerMap::mOverviewBlendMode [private]

Blend mode for overview.

Definition at line 409 of file qgscomposermap.h.

Referenced by drawOverviewMapExtent(), setOverviewBlendMode(), and writeXML().

Id of map which displays its extent rectangle into this composer map (overview map functionality).

-1 if not present

Definition at line 404 of file qgscomposermap.h.

Referenced by drawOverviewMapExtent(), paint(), setOverviewFrameMap(), and writeXML().

Definition at line 410 of file qgscomposermap.h.

Referenced by drawOverviewMapExtent(), setOverviewInverted(), and writeXML().

Annotation direction on right side ( horizontal or vertical )

Definition at line 456 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationDirection(), readXML(), setGridAnnotationDirection(), and writeXML().

Annotation position for right map side (inside / outside / not shown)

Definition at line 444 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationPosition(), maxExtension(), readXML(), setGridAnnotationPosition(), and writeXML().

True if coordinate values should be drawn.

Definition at line 437 of file qgscomposermap.h.

Referenced by drawGrid(), maxExtension(), readXML(), and writeXML().

Annotation direction on top side ( horizontal or vertical )

Definition at line 458 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationDirection(), readXML(), setGridAnnotationDirection(), and writeXML().

Annotation position for top map side (inside / outside / not shown)

Definition at line 446 of file qgscomposermap.h.

Referenced by drawCoordinateAnnotation(), gridAnnotationPosition(), maxExtension(), readXML(), setGridAnnotationPosition(), and writeXML().

double QgsComposerMap::mXOffset [private]

Offset in x direction for showing map cache image.

Definition at line 393 of file qgscomposermap.h.

Referenced by paint(), QgsComposerMap(), setOffset(), transformedExtent(), and transformedMapPolygon().

double QgsComposerMap::mYOffset [private]

Offset in y direction for showing map cache image.

Definition at line 395 of file qgscomposermap.h.

Referenced by paint(), QgsComposerMap(), setOffset(), transformedExtent(), and transformedMapPolygon().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines