QGIS API Documentation
2.18.21-Las Palmas (9fba24a)
|
A paint effect which blurs a source picture, using a number of different blur methods. More...
#include <qgsblureffect.h>
Public Types | |
enum | BlurMethod { StackBlur, GaussianBlur } |
Available blur methods (algorithms) More... | |
Public Types inherited from QgsPaintEffect | |
enum | DrawMode { Modifier, Render, ModifyAndRender } |
Drawing modes for effects. More... | |
Public Member Functions | |
QgsBlurEffect () | |
virtual | ~QgsBlurEffect () |
QPainter::CompositionMode | blendMode () const |
Returns the blend mode for the effect. More... | |
int | blurLevel () const |
Returns the blur level (strength) More... | |
BlurMethod | blurMethod () const |
Returns the blur method (algorithm) used for performing the blur. More... | |
virtual QgsBlurEffect * | clone () const override |
Duplicates an effect by creating a deep copy of the effect. More... | |
virtual QgsStringMap | properties () const override |
Returns the properties describing the paint effect encoded in a string format. More... | |
virtual void | readProperties (const QgsStringMap &props) override |
Reads a string map of an effect's properties and restores the effect to the state described by the properties map. More... | |
void | setBlendMode (const QPainter::CompositionMode mode) |
Sets the blend mode for the effect. More... | |
void | setBlurLevel (const int level) |
Sets blur level (strength) More... | |
void | setBlurMethod (const BlurMethod method) |
Sets the blur method (algorithm) to use for performing the blur. More... | |
void | setTransparency (const double transparency) |
Sets the transparency for the effect. More... | |
double | transparency () const |
Returns the transparency for the effect. More... | |
virtual QString | type () const override |
Returns the effect type. More... | |
Public Member Functions inherited from QgsPaintEffect | |
QgsPaintEffect () | |
QgsPaintEffect (const QgsPaintEffect &other) | |
virtual | ~QgsPaintEffect () |
virtual void | begin (QgsRenderContext &context) |
Begins intercepting paint operations to a render context. More... | |
DrawMode | drawMode () const |
Returns the draw mode for the effect. More... | |
bool | enabled () const |
Returns whether the effect is enabled. More... | |
virtual void | end (QgsRenderContext &context) |
Ends interception of paint operations to a render context, and draws the result to the render context after being modified by the effect. More... | |
virtual bool | readProperties (const QDomElement &element) |
Restores the effect to the state described by a DOM element. More... | |
virtual void | render (QPicture &picture, QgsRenderContext &context) |
Renders a picture using the effect. More... | |
virtual bool | saveProperties (QDomDocument &doc, QDomElement &element) const |
Saves the current state of the effect to a DOM element. More... | |
void | setDrawMode (const DrawMode drawMode) |
Sets the draw mode for the effect. More... | |
void | setEnabled (const bool enabled) |
Sets whether the effect is enabled. More... | |
Static Public Member Functions | |
static QgsPaintEffect * | create (const QgsStringMap &map) |
Creates a new QgsBlurEffect effect from a properties string map. More... | |
Protected Member Functions | |
virtual QRectF | boundingRect (const QRectF &rect, const QgsRenderContext &context) const override |
Returns the bounding rect required for drawing the effect. More... | |
virtual void | draw (QgsRenderContext &context) override |
Handles drawing of the effect's result on to the specified render context. More... | |
Protected Member Functions inherited from QgsPaintEffect | |
void | drawSource (QPainter &painter) |
Draws the source QPicture onto the specified painter. More... | |
void | fixQPictureDpi (QPainter *painter) const |
Applies a workaround to a QPainter to avoid an issue with incorrect scaling when drawing QPictures. More... | |
QPointF | imageOffset (const QgsRenderContext &context) const |
Returns the offset which should be used when drawing the source image on to a destination render context. More... | |
const QPicture * | source () const |
Returns the source QPicture. More... | |
QImage * | sourceAsImage (QgsRenderContext &context) |
Returns the source QPicture rendered to a new QImage. More... | |
Additional Inherited Members | |
Protected Attributes inherited from QgsPaintEffect | |
DrawMode | mDrawMode |
bool | mEnabled |
bool | requiresQPainterDpiFix |
A paint effect which blurs a source picture, using a number of different blur methods.
Definition at line 32 of file qgsblureffect.h.
Available blur methods (algorithms)
Definition at line 38 of file qgsblureffect.h.
QgsBlurEffect::QgsBlurEffect | ( | ) |
Definition at line 28 of file qgsblureffect.cpp.
|
virtual |
Definition at line 38 of file qgsblureffect.cpp.
|
inline |
Returns the blend mode for the effect.
Definition at line 112 of file qgsblureffect.h.
|
inline |
Returns the blur level (strength)
Definition at line 72 of file qgsblureffect.h.
|
inline |
Returns the blur method (algorithm) used for performing the blur.
Definition at line 84 of file qgsblureffect.h.
|
overrideprotectedvirtual |
Returns the bounding rect required for drawing the effect.
This method can be used to expand the bounding rect of a source picture to account for offset or blurring effects.
rect | original source bounding rect |
context | destination render context |
Reimplemented from QgsPaintEffect.
Definition at line 130 of file qgsblureffect.cpp.
|
overridevirtual |
Duplicates an effect by creating a deep copy of the effect.
Implements QgsPaintEffect.
Definition at line 124 of file qgsblureffect.cpp.
|
static |
Creates a new QgsBlurEffect effect from a properties string map.
map | encoded properties string map |
Definition at line 21 of file qgsblureffect.cpp.
|
overrideprotectedvirtual |
Handles drawing of the effect's result on to the specified render context.
Derived classes must reimplement this method to apply any transformations to the source QPicture and draw the result using the context's painter.
context | destination render context |
Implements QgsPaintEffect.
Definition at line 43 of file qgsblureffect.cpp.
|
overridevirtual |
Returns the properties describing the paint effect encoded in a string format.
Implements QgsPaintEffect.
Definition at line 85 of file qgsblureffect.cpp.
|
overridevirtual |
Reads a string map of an effect's properties and restores the effect to the state described by the properties map.
props | effect properties encoded in a string map |
Implements QgsPaintEffect.
Definition at line 97 of file qgsblureffect.cpp.
|
inline |
Sets the blend mode for the effect.
mode | blend mode used for drawing the effect on to a destination paint device |
Definition at line 105 of file qgsblureffect.h.
|
inline |
Sets blur level (strength)
level | blur level. Depending on the current blurMethod, this parameter has different effects |
Definition at line 64 of file qgsblureffect.h.
|
inline |
Sets the blur method (algorithm) to use for performing the blur.
method | blur method |
Definition at line 78 of file qgsblureffect.h.
|
inline |
Sets the transparency for the effect.
transparency | double between 0 and 1 inclusive, where 0 is fully opaque and 1 is fully transparent |
Definition at line 91 of file qgsblureffect.h.
|
inline |
Returns the transparency for the effect.
Definition at line 98 of file qgsblureffect.h.
|
inlineoverridevirtual |
Returns the effect type.
Implements QgsPaintEffect.
Definition at line 53 of file qgsblureffect.h.