16#ifndef QGSGEOMETRYPAINTDEVICE_H
17#define QGSGEOMETRYPAINTDEVICE_H
23#include <QPainterPath>
24#include <QPaintDevice>
25#include <QPaintEngine>
66 bool begin( QPaintDevice * )
final;
68 QPaintEngine::Type
type()
const final;
69 void updateState(
const QPaintEngineState & )
final;
72 void drawImage(
const QRectF &rectangle,
const QImage &image,
const QRectF &sr, Qt::ImageConversionFlags flags = Qt::AutoColor )
final;
73 void drawPixmap(
const QRectF &,
const QPixmap &,
const QRectF & )
final;
74 void drawTiledPixmap(
const QRectF &rect,
const QPixmap &pixmap,
const QPointF &p )
final;
79 void drawLines(
const QLineF *lines,
int lineCount )
final;
80 void drawLines(
const QLine *lines,
int lineCount )
final;
81 void drawPoints(
const QPointF *points,
int pointCount )
final;
82 void drawPoints(
const QPoint *points,
int pointCount )
final;
83 void drawPolygon(
const QPointF *points,
int pointCount, QPaintEngine::PolygonDrawMode mode )
final;
84 void drawPolygon(
const QPoint *points,
int pointCount, QPaintEngine::PolygonDrawMode mode )
final;
85 void drawRects(
const QRectF *rects,
int rectCount )
final;
86 void drawRects(
const QRect *rects,
int rectCount )
final;
87 void drawPath(
const QPainterPath &path )
final;
103 void addSubpathGeometries(
const QPainterPath &path,
const QTransform &matrix );
108 bool mUsePathStroker =
false;
111 int mStrokedPathsSegments = 8;
112 double mSimplifyTolerance = 0;
141 void setStrokedPathSegments(
int segments );
150 void setSimplificationTolerance(
double tolerance );
152 QPaintEngine *paintEngine()
const override;
154 int metric( PaintDeviceMetric metric )
const override;
163 std::unique_ptr<QgsGeometryPaintEngine> mPaintEngine;
JoinStyle
Join styles for buffers.
EndCapStyle
End cap styles for buffers.
Abstract base class for all geometries.
A paint device which converts everything renderer to a QgsGeometry representation of the rendered sha...
A paint engine which converts everything renderer to a QgsGeometry representation of the rendered sha...
void setSimplificationTolerance(double tolerance)
Sets a simplification tolerance (in painter units) to use for on-the-fly simplification of geometries...
void drawImage(const QRectF &rectangle, const QImage &image, const QRectF &sr, Qt::ImageConversionFlags flags=Qt::AutoColor) final
void drawRects(const QRectF *rects, int rectCount) final
void drawPolygon(const QPointF *points, int pointCount, QPaintEngine::PolygonDrawMode mode) final
const QgsAbstractGeometry & geometry() const
Returns the rendered geometry.
void drawPixmap(const QRectF &, const QPixmap &, const QRectF &) final
void drawPoints(const QPointF *points, int pointCount) final
bool begin(QPaintDevice *) final
void drawLines(const QLineF *lines, int lineCount) final
QPaintEngine::Type type() const final
void drawTiledPixmap(const QRectF &rect, const QPixmap &pixmap, const QPointF &p) final
void updateState(const QPaintEngineState &) final
void drawPath(const QPainterPath &path) final
void setStrokedPathSegments(int segments)
Sets the number of segments to use when drawing stroked paths with a rounded pen.
Line string geometry type, with support for z-dimension and m-values.