QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
QgsColorEffect Class Reference

A paint effect which alters the colors (eg brightness, contrast) in a source picture. More...

#include <qgscoloreffect.h>

Inheritance diagram for QgsColorEffect:
Inheritance graph
[legend]

Public Member Functions

 QgsColorEffect ()
 
virtual ~QgsColorEffect ()
 
QPainter::CompositionMode blendMode () const
 Returns the blend mode for the effect. More...
 
int brightness () const
 Returns the brightness modification for the effect. More...
 
virtual QgsColorEffectclone () const override
 Duplicates an effect by creating a deep copy of the effect. More...
 
QColor colorizeColor () const
 Returns the color used for colorizing a picture. More...
 
bool colorizeOn () const
 Returns whether the effect will colorize a picture. More...
 
int colorizeStrength () const
 Returns the strength used for colorizing a picture. More...
 
int contrast () const
 Returns the contrast modification for the effect. More...
 
QgsImageOperation::GrayscaleMode grayscaleMode () const
 Returns whether the effect will convert a picture to grayscale. 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...
 
double saturation () const
 Returns the saturation modification for the effect. More...
 
void setBlendMode (const QPainter::CompositionMode mode)
 Sets the blend mode for the effect. More...
 
void setBrightness (int brightness)
 Sets the brightness modification for the effect. More...
 
void setColorizeColor (const QColor &colorizeColor)
 Sets the color used for colorizing a picture. More...
 
void setColorizeOn (bool colorizeOn)
 Sets whether the effect should colorize a picture. More...
 
void setColorizeStrength (int colorizeStrength)
 Sets the strength for colorizing a picture. More...
 
void setContrast (int contrast)
 Sets the contrast modification for the effect. More...
 
void setGrayscaleMode (QgsImageOperation::GrayscaleMode grayscaleMode)
 Sets whether the effect should convert a picture to grayscale. More...
 
void setSaturation (double saturation)
 Sets the saturation modification for the effect. 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 QgsPaintEffectcreate (const QgsStringMap &map)
 Creates a new QgsColorEffect effect from a properties string map. More...
 

Protected Member Functions

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
virtual QRectF boundingRect (const QRectF &rect, const QgsRenderContext &context) const
 Returns the bounding rect required for drawing the effect. More...
 
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 QPicturesource () const
 Returns the source QPicture. More...
 
QImagesourceAsImage (QgsRenderContext &context)
 Returns the source QPicture rendered to a new QImage. More...
 

Additional Inherited Members

- Public Types inherited from QgsPaintEffect
enum  DrawMode { Modifier, Render, ModifyAndRender }
 Drawing modes for effects. More...
 
- Protected Attributes inherited from QgsPaintEffect
DrawMode mDrawMode
 
bool mEnabled
 
bool requiresQPainterDpiFix
 

Detailed Description

A paint effect which alters the colors (eg brightness, contrast) in a source picture.

Note
Added in version 2.9

Definition at line 33 of file qgscoloreffect.h.

Constructor & Destructor Documentation

◆ QgsColorEffect()

QgsColorEffect::QgsColorEffect ( )

Definition at line 29 of file qgscoloreffect.cpp.

◆ ~QgsColorEffect()

QgsColorEffect::~QgsColorEffect ( )
virtual

Definition at line 44 of file qgscoloreffect.cpp.

Member Function Documentation

◆ blendMode()

QPainter::CompositionMode QgsColorEffect::blendMode ( ) const
inline

Returns the blend mode for the effect.

Returns
blend mode used for drawing the effect on to a destination paint device
See also
setBlendMode

Definition at line 190 of file qgscoloreffect.h.

◆ brightness()

int QgsColorEffect::brightness ( ) const
inline

Returns the brightness modification for the effect.

Returns
brightness value. Values are between -255 and 255, where 0 represents no change, negative values indicate darkening and positive values indicate lightening
See also
setBrightness

Definition at line 66 of file qgscoloreffect.h.

◆ clone()

QgsColorEffect * QgsColorEffect::clone ( ) const
overridevirtual

Duplicates an effect by creating a deep copy of the effect.

Returns
clone of paint effect

Implements QgsPaintEffect.

Definition at line 120 of file qgscoloreffect.cpp.

◆ colorizeColor()

QColor QgsColorEffect::colorizeColor ( ) const
inline

Returns the color used for colorizing a picture.

This is only used if colorizeOn is set to true.

Returns
colorization color
See also
setColorizeColor
colorizeOn
colorizeStrength

Definition at line 144 of file qgscoloreffect.h.

◆ colorizeOn()

bool QgsColorEffect::colorizeOn ( ) const
inline

Returns whether the effect will colorize a picture.

Returns
true if colorization is enableds
See also
setColorizeOn
colorizeColor
colorizeStrength

Definition at line 126 of file qgscoloreffect.h.

◆ colorizeStrength()

int QgsColorEffect::colorizeStrength ( ) const
inline

Returns the strength used for colorizing a picture.

This is only used if setColorizeOn is set to true.

Returns
colorization strength, between 0 and 100
See also
setColorizeStrengths
colorizeOn
colorizeColor

Definition at line 162 of file qgscoloreffect.h.

◆ contrast()

int QgsColorEffect::contrast ( ) const
inline

Returns the contrast modification for the effect.

Returns
contrast value. Values are between -100 and 100, where 0 represents no change, negative values indicate less contrast and positive values indicate greater contrast
See also
setContrast

Definition at line 82 of file qgscoloreffect.h.

◆ create()

QgsPaintEffect * QgsColorEffect::create ( const QgsStringMap map)
static

Creates a new QgsColorEffect effect from a properties string map.

Parameters
mapencoded properties string map
Returns
new QgsColorEffect

Definition at line 22 of file qgscoloreffect.cpp.

◆ draw()

void QgsColorEffect::draw ( QgsRenderContext context)
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.

Parameters
contextdestination render context
See also
drawSource

Implements QgsPaintEffect.

Definition at line 49 of file qgscoloreffect.cpp.

◆ grayscaleMode()

QgsImageOperation::GrayscaleMode QgsColorEffect::grayscaleMode ( ) const
inline

Returns whether the effect will convert a picture to grayscale.

Returns
method for grayscale conversion
See also
setGrayscaleMode

Definition at line 110 of file qgscoloreffect.h.

◆ properties()

QgsStringMap QgsColorEffect::properties ( ) const
overridevirtual

Returns the properties describing the paint effect encoded in a string format.

Returns
string map of properties, in the form property key, value
See also
readProperties
saveProperties

Implements QgsPaintEffect.

Definition at line 74 of file qgscoloreffect.cpp.

◆ readProperties()

void QgsColorEffect::readProperties ( const QgsStringMap props)
overridevirtual

Reads a string map of an effect's properties and restores the effect to the state described by the properties map.

Parameters
propseffect properties encoded in a string map
See also
properties

Implements QgsPaintEffect.

Definition at line 92 of file qgscoloreffect.cpp.

◆ saturation()

double QgsColorEffect::saturation ( ) const
inline

Returns the saturation modification for the effect.

Returns
saturation value. Values are between 0 and 2.0, where 1.0 represents no change, 0.0 represents totally desaturated (grayscale), and positive values indicate greater saturation
See also
setSaturation

Definition at line 98 of file qgscoloreffect.h.

◆ setBlendMode()

void QgsColorEffect::setBlendMode ( const QPainter::CompositionMode  mode)
inline

Sets the blend mode for the effect.

Parameters
modeblend mode used for drawing the effect on to a destination paint device
See also
blendMode

Definition at line 183 of file qgscoloreffect.h.

◆ setBrightness()

void QgsColorEffect::setBrightness ( int  brightness)
inline

Sets the brightness modification for the effect.

Parameters
brightnessValid values are between -255 and 255, where 0 represents no change, negative values indicate darkening and positive values indicate lightening
See also
setBrightness

Definition at line 58 of file qgscoloreffect.h.

◆ setColorizeColor()

void QgsColorEffect::setColorizeColor ( const QColor colorizeColor)

Sets the color used for colorizing a picture.

This is only used if setColorizeOn is set to true.

Parameters
colorizeColorcolorization color
See also
colorizeColor
setColorizeOn
setColorizeStrength

Definition at line 126 of file qgscoloreffect.cpp.

◆ setColorizeOn()

void QgsColorEffect::setColorizeOn ( bool  colorizeOn)
inline

Sets whether the effect should colorize a picture.

Parameters
colorizeOnset to true to enable colorization
See also
colorizeOn
setColorizeColor
setColorizeStrength

Definition at line 118 of file qgscoloreffect.h.

◆ setColorizeStrength()

void QgsColorEffect::setColorizeStrength ( int  colorizeStrength)
inline

Sets the strength for colorizing a picture.

This is only used if setColorizeOn is set to true.

Parameters
colorizeStrengthcolorization strength, between 0 and 100
See also
colorizeStrength
setColorizeOn
setColorizeColor

Definition at line 153 of file qgscoloreffect.h.

◆ setContrast()

void QgsColorEffect::setContrast ( int  contrast)
inline

Sets the contrast modification for the effect.

Parameters
contrastValid values are between -100 and 100, where 0 represents no change, negative values indicate less contrast and positive values indicate greater contrast
See also
setContrast

Definition at line 74 of file qgscoloreffect.h.

◆ setGrayscaleMode()

void QgsColorEffect::setGrayscaleMode ( QgsImageOperation::GrayscaleMode  grayscaleMode)
inline

Sets whether the effect should convert a picture to grayscale.

Parameters
grayscaleModemethod for grayscale conversion
See also
grayscaleMode

Definition at line 104 of file qgscoloreffect.h.

◆ setSaturation()

void QgsColorEffect::setSaturation ( double  saturation)
inline

Sets the saturation modification for the effect.

Parameters
saturationValid values are between 0 and 2.0, where 1.0 represents no change, 0.0 represents totally desaturated (grayscale), and positive values indicate greater saturation
See also
saturation

Definition at line 90 of file qgscoloreffect.h.

◆ setTransparency()

void QgsColorEffect::setTransparency ( const double  transparency)
inline

Sets the transparency for the effect.

Parameters
transparencydouble between 0 and 1 inclusive, where 0 is fully opaque and 1 is fully transparent
See also
transparency

Definition at line 169 of file qgscoloreffect.h.

◆ transparency()

double QgsColorEffect::transparency ( ) const
inline

Returns the transparency for the effect.

Returns
transparency value between 0 and 1 inclusive, where 0 is fully opaque and 1 is fully transparent
See also
setTransparency

Definition at line 176 of file qgscoloreffect.h.

◆ type()

virtual QString QgsColorEffect::type ( ) const
inlineoverridevirtual

Returns the effect type.

Returns
unique string representation of the effect type

Implements QgsPaintEffect.

Definition at line 47 of file qgscoloreffect.h.


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