QGIS API Documentation 3.32.0-Lima (311a8cb8a6)
|
Brightness/contrast and gamma correction filter pipe for rasters. More...
#include <qgsbrightnesscontrastfilter.h>
Public Member Functions | |
QgsBrightnessContrastFilter (QgsRasterInterface *input=nullptr) | |
int | bandCount () const override |
Gets number of bands. More... | |
QgsRasterBlock * | block (int bandNo, const QgsRectangle &extent, int width, int height, QgsRasterBlockFeedback *feedback=nullptr) override |
Read block of data using given extent and size. More... | |
int | brightness () const |
Returns current brightness level. More... | |
QgsBrightnessContrastFilter * | clone () const override |
Clone itself, create deep copy. More... | |
int | contrast () const |
Returns current contrast level. More... | |
Qgis::DataType | dataType (int bandNo) const override |
Returns data type for the band specified by number. More... | |
double | gamma () const |
Returns current gamma value. More... | |
void | readXml (const QDomElement &filterElem) override |
Sets base class members from xml. Usually called from create() methods of subclasses. More... | |
void | setBrightness (int brightness) |
Set brightness level. More... | |
void | setContrast (int contrast) |
Set contrast level. More... | |
void | setGamma (double gamma) |
Set gamma value. More... | |
bool | setInput (QgsRasterInterface *input) override |
Set input. More... | |
void | writeXml (QDomDocument &doc, QDomElement &parentElem) const override |
Write base class members to xml. More... | |
Public Member Functions inherited from QgsRasterInterface | |
QgsRasterInterface (QgsRasterInterface *input=nullptr) | |
virtual | ~QgsRasterInterface ()=default |
virtual int | bandCount () const =0 |
Gets number of bands. More... | |
virtual QgsRasterBandStats | bandStatistics (int bandNo, int stats=QgsRasterBandStats::All, const QgsRectangle &extent=QgsRectangle(), int sampleSize=0, QgsRasterBlockFeedback *feedback=nullptr) |
Returns the band statistics. More... | |
virtual QgsRasterBlock * | block (int bandNo, const QgsRectangle &extent, int width, int height, QgsRasterBlockFeedback *feedback=nullptr)=0 |
Read block of data using given extent and size. More... | |
virtual int | capabilities () const |
Returns a bitmask containing the supported capabilities. More... | |
QString | capabilitiesString () const |
Returns the raster interface capabilities in friendly format. More... | |
virtual QgsRasterInterface * | clone () const =0 |
Clone itself, create deep copy. More... | |
virtual QString | colorInterpretationName (int bandNumber) const |
Returns the name of the color interpretation for the specified bandNumber. More... | |
virtual void | cumulativeCut (int bandNo, double lowerCount, double upperCount, double &lowerValue, double &upperValue, const QgsRectangle &extent=QgsRectangle(), int sampleSize=0) |
Find values for cumulative pixel count cut. More... | |
virtual Qgis::DataType | dataType (int bandNo) const =0 |
Returns data type for the band specified by number. More... | |
int | dataTypeSize (int bandNo) const |
Returns the size (in bytes) for the data type for the specified band. More... | |
QString | displayBandName (int bandNumber) const |
Generates a friendly, descriptive name for the specified bandNumber. More... | |
virtual QgsRectangle | extent () const |
Gets the extent of the interface. More... | |
virtual QString | generateBandName (int bandNumber) const |
helper function to create zero padded band names More... | |
virtual bool | hasHistogram (int bandNo, int binCount, double minimum=std::numeric_limits< double >::quiet_NaN(), double maximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &extent=QgsRectangle(), int sampleSize=0, bool includeOutOfRange=false) |
Returns true if histogram is available (cached, already calculated) More... | |
virtual bool | hasStatistics (int bandNo, int stats=QgsRasterBandStats::All, const QgsRectangle &extent=QgsRectangle(), int sampleSize=0) |
Returns true if histogram is available (cached, already calculated). More... | |
virtual QgsRasterHistogram | histogram (int bandNo, int binCount=0, double minimum=std::numeric_limits< double >::quiet_NaN(), double maximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &extent=QgsRectangle(), int sampleSize=0, bool includeOutOfRange=false, QgsRasterBlockFeedback *feedback=nullptr) |
Returns a band histogram. More... | |
virtual QgsRasterInterface * | input () const |
Current input. More... | |
virtual bool | on () const |
Returns whether the interface is on or off. More... | |
virtual void | readXml (const QDomElement &filterElem) |
Sets base class members from xml. Usually called from create() methods of subclasses. More... | |
virtual bool | setInput (QgsRasterInterface *input) |
Set input. More... | |
virtual void | setOn (bool on) |
Sets whether the interface is on or off. More... | |
virtual Qgis::DataType | sourceDataType (int bandNo) const |
Returns source data type for the band specified by number, source data type may be shorter than dataType. More... | |
virtual QgsRasterInterface * | sourceInput () |
Gets source / raw input, the first in pipe, usually provider. More... | |
virtual const QgsRasterInterface * | sourceInput () const |
Gets source / raw input, the first in pipe, usually provider. More... | |
virtual void | writeXml (QDomDocument &doc, QDomElement &parentElem) const |
Write base class members to xml. More... | |
virtual int | xBlockSize () const |
Gets block size. More... | |
virtual int | xSize () const |
Gets raster size. More... | |
virtual int | yBlockSize () const |
virtual int | ySize () const |
Additional Inherited Members | |
Public Types inherited from QgsRasterInterface | |
enum | Capability { NoCapabilities = 0 , Size = 1 << 1 , Create = 1 << 2 , Remove = 1 << 3 , BuildPyramids = 1 << 4 , Identify = 1 << 5 , IdentifyValue = 1 << 6 , IdentifyText = 1 << 7 , IdentifyHtml = 1 << 8 , IdentifyFeature = 1 << 9 , Prefetch = 1 << 10 } |
If you add to this, please also add to capabilitiesString() More... | |
Protected Member Functions inherited from QgsRasterInterface | |
void | initHistogram (QgsRasterHistogram &histogram, int bandNo, int binCount, double minimum=std::numeric_limits< double >::quiet_NaN(), double maximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &boundingBox=QgsRectangle(), int sampleSize=0, bool includeOutOfRange=false) |
Fill in histogram defaults if not specified. More... | |
void | initStatistics (QgsRasterBandStats &statistics, int bandNo, int stats=QgsRasterBandStats::All, const QgsRectangle &boundingBox=QgsRectangle(), int binCount=0) const |
Fill in statistics defaults if not specified. More... | |
Protected Attributes inherited from QgsRasterInterface | |
QList< QgsRasterHistogram > | mHistograms |
List of cached histograms, all bands mixed. More... | |
QgsRasterInterface * | mInput = nullptr |
bool | mOn = true |
QList< QgsRasterBandStats > | mStatistics |
List of cached statistics, all bands mixed. More... | |
Brightness/contrast and gamma correction filter pipe for rasters.
Definition at line 31 of file qgsbrightnesscontrastfilter.h.
QgsBrightnessContrastFilter::QgsBrightnessContrastFilter | ( | QgsRasterInterface * | input = nullptr | ) |
Definition at line 24 of file qgsbrightnesscontrastfilter.cpp.
|
overridevirtual |
Gets number of bands.
Implements QgsRasterInterface.
Definition at line 39 of file qgsbrightnesscontrastfilter.cpp.
|
overridevirtual |
Read block of data using given extent and size.
Returns pointer to data. Caller is responsible to free the memory returned.
bandNo | band number |
extent | extent of block |
width | pixel width of block |
height | pixel height of block |
feedback | optional raster feedback object for cancellation/preview. Added in QGIS 3.0. |
Implements QgsRasterInterface.
Definition at line 106 of file qgsbrightnesscontrastfilter.cpp.
|
inline |
Returns current brightness level.
Definition at line 73 of file qgsbrightnesscontrastfilter.h.
|
overridevirtual |
Clone itself, create deep copy.
Implements QgsRasterInterface.
Definition at line 29 of file qgsbrightnesscontrastfilter.cpp.
|
inline |
Returns current contrast level.
Definition at line 85 of file qgsbrightnesscontrastfilter.h.
|
overridevirtual |
Returns data type for the band specified by number.
Implements QgsRasterInterface.
Definition at line 54 of file qgsbrightnesscontrastfilter.cpp.
|
inline |
Returns current gamma value.
Definition at line 101 of file qgsbrightnesscontrastfilter.h.
|
overridevirtual |
Sets base class members from xml. Usually called from create() methods of subclasses.
Reimplemented from QgsRasterInterface.
Definition at line 220 of file qgsbrightnesscontrastfilter.cpp.
void QgsBrightnessContrastFilter::setBrightness | ( | int | brightness | ) |
Set brightness level.
Acceptable value range is -255…255
Definition at line 166 of file qgsbrightnesscontrastfilter.cpp.
void QgsBrightnessContrastFilter::setContrast | ( | int | contrast | ) |
Set contrast level.
Acceptable value range is -100…100
Definition at line 171 of file qgsbrightnesscontrastfilter.cpp.
void QgsBrightnessContrastFilter::setGamma | ( | double | gamma | ) |
Set gamma value.
Acceptable value range is -0.1…10
Definition at line 176 of file qgsbrightnesscontrastfilter.cpp.
|
overridevirtual |
Set input.
Returns true
if set correctly, false
if cannot use that input
Reimplemented from QgsRasterInterface.
Definition at line 69 of file qgsbrightnesscontrastfilter.cpp.
|
overridevirtual |
Write base class members to xml.
Reimplemented from QgsRasterInterface.
Definition at line 205 of file qgsbrightnesscontrastfilter.cpp.