QGIS API Documentation  2.99.0-Master (c558d51)
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsMapCanvasItem Class Referenceabstract

An abstract class for items that can be placed on the map canvas. More...

#include <qgsmapcanvasitem.h>

Inheritance diagram for QgsMapCanvasItem:
Inheritance graph
[legend]

Public Member Functions

virtual QRectF boundingRect () const override
 default implementation for canvas items More...
 
QgsRectangle rect () const
 returns canvas item rectangle in map units More...
 
void setRect (const QgsRectangle &r, bool resetRotation=true)
 sets canvas item rectangle in map units More...
 
QPointF toCanvasCoordinates (const QgsPoint &point) const
 transformation from map coordinates to screen coordinates More...
 
QgsPoint toMapCoordinates (QPoint point) const
 transformation from screen coordinates to map coordinates More...
 
virtual void updatePosition ()
 called on changed extent or resize event to update position of the item More...
 

Protected Member Functions

 QgsMapCanvasItem (QgsMapCanvas *mapCanvas)
 protected constructor: cannot be constructed directly More...
 
virtual ~QgsMapCanvasItem ()
 
virtual void paint (QPainter *painter)=0
 function to be implemented by derived classes More...
 
virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=nullptr) override
 paint function called by map canvas More...
 
bool setRenderContextVariables (QPainter *p, QgsRenderContext &context) const
 Sets render context parameters. More...
 
void updateCanvas ()
 schedules map canvas for repaint More...
 

Protected Attributes

QSizeF mItemSize
 cached size of the item (to return in boundingRect()) More...
 
QgsMapCanvasmMapCanvas
 pointer to map canvas More...
 
QgsRectangle mRect
 cached canvas item rectangle in map coordinates encodes position (xmin,ymax) and size (width/height) used to re-position and re-size the item on zoom/pan while waiting for the renderer to complete. More...
 
double mRectRotation
 

Detailed Description

An abstract class for items that can be placed on the map canvas.

Definition at line 30 of file qgsmapcanvasitem.h.

Constructor & Destructor Documentation

QgsMapCanvasItem::QgsMapCanvasItem ( QgsMapCanvas mapCanvas)
protected

protected constructor: cannot be constructed directly

Definition at line 28 of file qgsmapcanvasitem.cpp.

QgsMapCanvasItem::~QgsMapCanvasItem ( )
protectedvirtual

Definition at line 38 of file qgsmapcanvasitem.cpp.

Member Function Documentation

QRectF QgsMapCanvasItem::boundingRect ( ) const
overridevirtual

default implementation for canvas items

Reimplemented in QgsAnnotationItem, and QgsVertexMarker.

Definition at line 107 of file qgsmapcanvasitem.cpp.

virtual void QgsMapCanvasItem::paint ( QPainter *  painter)
protectedpure virtual
void QgsMapCanvasItem::paint ( QPainter *  painter,
const QStyleOptionGraphicsItem *  option,
QWidget *  widget = nullptr 
)
overrideprotectedvirtual

paint function called by map canvas

Reimplemented in QgsAnnotationItem, QgsHtmlAnnotationItem, and QgsFormAnnotationItem.

Definition at line 43 of file qgsmapcanvasitem.cpp.

QgsRectangle QgsMapCanvasItem::rect ( ) const

returns canvas item rectangle in map units

Definition at line 69 of file qgsmapcanvasitem.cpp.

void QgsMapCanvasItem::setRect ( const QgsRectangle r,
bool  resetRotation = true 
)

sets canvas item rectangle in map units

Definition at line 75 of file qgsmapcanvasitem.cpp.

bool QgsMapCanvasItem::setRenderContextVariables ( QPainter *  p,
QgsRenderContext context 
) const
protected

Sets render context parameters.

Parameters
ppainter for rendering
contextout: configured context
Returns
true in case of success

Definition at line 120 of file qgsmapcanvasitem.cpp.

QPointF QgsMapCanvasItem::toCanvasCoordinates ( const QgsPoint point) const

transformation from map coordinates to screen coordinates

Definition at line 62 of file qgsmapcanvasitem.cpp.

QgsPoint QgsMapCanvasItem::toMapCoordinates ( QPoint  point) const

transformation from screen coordinates to map coordinates

Definition at line 56 of file qgsmapcanvasitem.cpp.

void QgsMapCanvasItem::updateCanvas ( )
protected

schedules map canvas for repaint

Definition at line 113 of file qgsmapcanvasitem.cpp.

void QgsMapCanvasItem::updatePosition ( )
virtual

called on changed extent or resize event to update position of the item

Reimplemented in QgsRubberBand, QgsHighlight, QgsVertexMarker, and QgsAnnotationItem.

Definition at line 137 of file qgsmapcanvasitem.cpp.

Member Data Documentation

QSizeF QgsMapCanvasItem::mItemSize
protected

cached size of the item (to return in boundingRect())

Definition at line 94 of file qgsmapcanvasitem.h.

QgsMapCanvas* QgsMapCanvasItem::mMapCanvas
protected

pointer to map canvas

Definition at line 79 of file qgsmapcanvasitem.h.

QgsRectangle QgsMapCanvasItem::mRect
protected

cached canvas item rectangle in map coordinates encodes position (xmin,ymax) and size (width/height) used to re-position and re-size the item on zoom/pan while waiting for the renderer to complete.

NOTE: does not include rotation information, so cannot be used to correctly present pre-rendered map on rotation change

Definition at line 89 of file qgsmapcanvasitem.h.

double QgsMapCanvasItem::mRectRotation
protected

Definition at line 91 of file qgsmapcanvasitem.h.


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