|
QGIS API Documentation
2.4.0-Chugiak
|
Renderer for multiband images with the color components. More...
#include <qgsmultibandcolorrenderer.h>


Public Member Functions | |
| QgsMultiBandColorRenderer (QgsRasterInterface *input, int redBand, int greenBand, int blueBand, QgsContrastEnhancement *redEnhancement=0, QgsContrastEnhancement *greenEnhancement=0, QgsContrastEnhancement *blueEnhancement=0) | |
| ~QgsMultiBandColorRenderer () | |
| QgsRasterInterface * | clone () const |
| Clone itself, create deep copy. More... | |
| QgsRasterBlock * | block (int bandNo, const QgsRectangle &extent, int width, int height) |
| Read block of data using given extent and size. More... | |
| int | redBand () const |
| void | setRedBand (int band) |
| int | greenBand () const |
| void | setGreenBand (int band) |
| int | blueBand () const |
| void | setBlueBand (int band) |
| const QgsContrastEnhancement * | redContrastEnhancement () const |
| void | setRedContrastEnhancement (QgsContrastEnhancement *ce) |
| Takes ownership. More... | |
| const QgsContrastEnhancement * | greenContrastEnhancement () const |
| void | setGreenContrastEnhancement (QgsContrastEnhancement *ce) |
| Takes ownership. More... | |
| const QgsContrastEnhancement * | blueContrastEnhancement () const |
| void | setBlueContrastEnhancement (QgsContrastEnhancement *ce) |
| Takes ownership. More... | |
| void | writeXML (QDomDocument &doc, QDomElement &parentElem) const |
| Write base class members to xml. More... | |
| QList< int > | usesBands () const |
| Returns a list of band numbers used by the renderer. More... | |
Public Member Functions inherited from QgsRasterRenderer | |
| QgsRasterRenderer (QgsRasterInterface *input=0, const QString &type="") | |
| virtual | ~QgsRasterRenderer () |
| virtual int | bandCount () const |
| Get number of bands. More... | |
| virtual QGis::DataType | dataType (int bandNo) const |
| Returns data type for the band specified by number. More... | |
| virtual QString | type () const |
| virtual bool | setInput (QgsRasterInterface *input) |
| Set input. More... | |
| bool | usesTransparency () const |
| void | setOpacity (double opacity) |
| double | opacity () const |
| void | setRasterTransparency (QgsRasterTransparency *t) |
| const QgsRasterTransparency * | rasterTransparency () const |
| void | setAlphaBand (int band) |
| int | alphaBand () const |
| virtual void | legendSymbologyItems (QList< QPair< QString, QColor > > &symbolItems) const |
| Get symbology items if provided by renderer. More... | |
| void | readXML (const QDomElement &rendererElem) |
| Sets base class members from xml. More... | |
Public Member Functions inherited from QgsRasterInterface | |
| QgsRasterInterface (QgsRasterInterface *input=0) | |
| virtual | ~QgsRasterInterface () |
| virtual int | capabilities () const |
| Returns a bitmask containing the supported capabilities. More... | |
| QString | capabilitiesString () const |
| Returns the above in friendly format. More... | |
| virtual QGis::DataType | srcDataType (int bandNo) const |
| Returns source data type for the band specified by number, source data type may be shorter than dataType. More... | |
| virtual QgsRectangle | extent () |
| Get the extent of the interface. More... | |
| int | dataTypeSize (int bandNo) |
| virtual int | xBlockSize () const |
| Get block size. More... | |
| virtual int | yBlockSize () const |
| virtual int | xSize () const |
| Get raster size. More... | |
| virtual int | ySize () const |
| virtual QString | generateBandName (int theBandNumber) const |
| helper function to create zero padded band names More... | |
| virtual QgsRasterInterface * | input () const |
| Current input. More... | |
| virtual bool | on () const |
| Is on/off. More... | |
| virtual void | setOn (bool on) |
| Set on/off. More... | |
| virtual const QgsRasterInterface * | srcInput () const |
| Get source / raw input, the first in pipe, usually provider. More... | |
| virtual QgsRasterInterface * | srcInput () |
| virtual QgsRasterBandStats | bandStatistics (int theBandNo, int theStats=QgsRasterBandStats::All, const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0) |
| Get band statistics. More... | |
| virtual bool | hasStatistics (int theBandNo, int theStats=QgsRasterBandStats::All, const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0) |
| Returns true if histogram is available (cached, already calculated). More... | |
| virtual QgsRasterHistogram | histogram (int theBandNo, int theBinCount=0, double theMinimum=std::numeric_limits< double >::quiet_NaN(), double theMaximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0, bool theIncludeOutOfRange=false) |
| Get histogram. More... | |
| virtual bool | hasHistogram (int theBandNo, int theBinCount, double theMinimum=std::numeric_limits< double >::quiet_NaN(), double theMaximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0, bool theIncludeOutOfRange=false) |
| Returns true if histogram is available (cached, already calculated), the parameters are the same as in histogram() More... | |
| virtual void | cumulativeCut (int theBandNo, double theLowerCount, double theUpperCount, double &theLowerValue, double &theUpperValue, const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0) |
| Find values for cumulative pixel count cut. More... | |
Static Public Member Functions | |
| static QgsRasterRenderer * | create (const QDomElement &elem, QgsRasterInterface *input) |
Static Public Member Functions inherited from QgsRasterRenderer | |
| static QString | minMaxOriginName (int theOrigin) |
| static QString | minMaxOriginLabel (int theOrigin) |
| static int | minMaxOriginFromName (QString theName) |
Private Attributes | |
| int | mRedBand |
| int | mGreenBand |
| int | mBlueBand |
| QgsContrastEnhancement * | mRedContrastEnhancement |
| QgsContrastEnhancement * | mGreenContrastEnhancement |
| QgsContrastEnhancement * | mBlueContrastEnhancement |
Additional Inherited Members | |
Public Types inherited from QgsRasterRenderer | |
| enum | MinMaxOrigin { MinMaxUnknown = 0, MinMaxUser = 1, MinMaxMinMax = 1 << 1, MinMaxCumulativeCut = 1 << 2, MinMaxStdDev = 1 << 3, MinMaxFullExtent = 1 << 4, MinMaxSubExtent = 1 << 5, MinMaxEstimated = 1 << 6, MinMaxExact = 1 << 7 } |
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 } |
| If you add to this, please also add to capabilitiesString() More... | |
Static Public Attributes inherited from QgsRasterRenderer | |
| static const QRgb | NODATA_COLOR = qRgba( 0, 0, 0, 0 ) |
Protected Member Functions inherited from QgsRasterRenderer | |
| void | _writeXML (QDomDocument &doc, QDomElement &rasterRendererElem) const |
| Write upper class info into rasterrenderer element (called by writeXML method of subclasses) More... | |
Protected Member Functions inherited from QgsRasterInterface | |
| void | initHistogram (QgsRasterHistogram &theHistogram, int theBandNo, int theBinCount=0, double theMinimum=std::numeric_limits< double >::quiet_NaN(), double theMaximum=std::numeric_limits< double >::quiet_NaN(), const QgsRectangle &theExtent=QgsRectangle(), int theSampleSize=0, bool theIncludeOutOfRange=false) |
| Fill in histogram defaults if not specified. More... | |
| void | initStatistics (QgsRasterBandStats &theStatistics, int theBandNo, int theStats=QgsRasterBandStats::All, const QgsRectangle &theExtent=QgsRectangle(), int theBinCount=0) |
| Fill in statistics defaults if not specified. More... | |
Protected Attributes inherited from QgsRasterRenderer | |
| QString | mType |
| double | mOpacity |
| Global alpha value (0-1) More... | |
| QgsRasterTransparency * | mRasterTransparency |
| Raster transparency per color or value. More... | |
| int | mAlphaBand |
| Read alpha value from band. More... | |
Protected Attributes inherited from QgsRasterInterface | |
| QgsRasterInterface * | mInput |
| QList< QgsRasterBandStats > | mStatistics |
| List of cached statistics, all bands mixed. More... | |
| QList< QgsRasterHistogram > | mHistograms |
| List of cached histograms, all bands mixed. More... | |
| bool | mOn |
Renderer for multiband images with the color components.
Definition at line 29 of file qgsmultibandcolorrenderer.h.
| QgsMultiBandColorRenderer::QgsMultiBandColorRenderer | ( | QgsRasterInterface * | input, |
| int | redBand, | ||
| int | greenBand, | ||
| int | blueBand, | ||
| QgsContrastEnhancement * | redEnhancement = 0, |
||
| QgsContrastEnhancement * | greenEnhancement = 0, |
||
| QgsContrastEnhancement * | blueEnhancement = 0 |
||
| ) |
Definition at line 27 of file qgsmultibandcolorrenderer.cpp.
| QgsMultiBandColorRenderer::~QgsMultiBandColorRenderer | ( | ) |
Definition at line 36 of file qgsmultibandcolorrenderer.cpp.
References mBlueContrastEnhancement, mGreenContrastEnhancement, and mRedContrastEnhancement.
|
virtual |
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 |
Implements QgsRasterRenderer.
Definition at line 126 of file qgsmultibandcolorrenderer.cpp.
References QgsRasterTransparency::alphaValue(), QGis::ARGB32_Premultiplied, QgsRasterInterface::block(), QgsContrastEnhancement::enhanceContrast(), QgsRasterBlock::isNoData(), QgsContrastEnhancement::isValueInDisplayableRange(), QgsRasterRenderer::mAlphaBand, mBlueBand, mBlueContrastEnhancement, mGreenBand, mGreenContrastEnhancement, QgsRasterInterface::mInput, QgsRasterRenderer::mOpacity, QgsRasterRenderer::mRasterTransparency, mRedBand, mRedContrastEnhancement, QgsRasterRenderer::NODATA_COLOR, QgsDebugMsg, qgsDoubleNear(), QgsRasterBlock::reset(), QgsRasterBlock::setColor(), QgsRasterRenderer::usesTransparency(), and QgsRasterBlock::value().
|
inline |
Definition at line 46 of file qgsmultibandcolorrenderer.h.
Referenced by create(), QgsRasterLayer::setContrastEnhancement(), and QgsMultiBandColorRendererWidget::setFromRenderer().
|
inline |
Definition at line 57 of file qgsmultibandcolorrenderer.h.
Referenced by create(), and QgsMultiBandColorRendererWidget::setFromRenderer().
|
virtual |
Clone itself, create deep copy.
Implements QgsRasterRenderer.
Definition at line 43 of file qgsmultibandcolorrenderer.cpp.
References QgsRasterRenderer::mAlphaBand, mBlueBand, mBlueContrastEnhancement, mGreenBand, mGreenContrastEnhancement, QgsRasterRenderer::mOpacity, QgsRasterRenderer::mRasterTransparency, mRedBand, mRedContrastEnhancement, QgsMultiBandColorRenderer(), QgsRasterRenderer::setAlphaBand(), setBlueContrastEnhancement(), setGreenContrastEnhancement(), QgsRasterRenderer::setOpacity(), QgsRasterRenderer::setRasterTransparency(), and setRedContrastEnhancement().
|
static |
Definition at line 80 of file qgsmultibandcolorrenderer.cpp.
References blueBand(), blueContrastEnhancement(), QgsRasterInterface::dataType(), greenBand(), greenContrastEnhancement(), QgsMultiBandColorRenderer(), QgsRasterRenderer::readXML(), QgsContrastEnhancement::readXML(), redBand(), and redContrastEnhancement().
Referenced by QgsRasterRendererRegistry::QgsRasterRendererRegistry().
|
inline |
Definition at line 44 of file qgsmultibandcolorrenderer.h.
Referenced by create(), QgsRasterLayer::setContrastEnhancement(), and QgsMultiBandColorRendererWidget::setFromRenderer().
|
inline |
Definition at line 53 of file qgsmultibandcolorrenderer.h.
Referenced by create(), and QgsMultiBandColorRendererWidget::setFromRenderer().
|
inline |
Definition at line 42 of file qgsmultibandcolorrenderer.h.
Referenced by create(), QgsRasterLayer::setContrastEnhancement(), and QgsMultiBandColorRendererWidget::setFromRenderer().
|
inline |
Definition at line 49 of file qgsmultibandcolorrenderer.h.
Referenced by create(), and QgsMultiBandColorRendererWidget::setFromRenderer().
|
inline |
Definition at line 47 of file qgsmultibandcolorrenderer.h.
| void QgsMultiBandColorRenderer::setBlueContrastEnhancement | ( | QgsContrastEnhancement * | ce | ) |
Takes ownership.
Definition at line 75 of file qgsmultibandcolorrenderer.cpp.
References mBlueContrastEnhancement.
Referenced by clone(), QgsRasterLayer::setContrastEnhancement(), and QgsMultiBandColorRendererWidget::setCustomMinMaxValues().
|
inline |
Definition at line 45 of file qgsmultibandcolorrenderer.h.
| void QgsMultiBandColorRenderer::setGreenContrastEnhancement | ( | QgsContrastEnhancement * | ce | ) |
Takes ownership.
Definition at line 70 of file qgsmultibandcolorrenderer.cpp.
References mGreenContrastEnhancement.
Referenced by clone(), QgsRasterLayer::setContrastEnhancement(), and QgsMultiBandColorRendererWidget::setCustomMinMaxValues().
|
inline |
Definition at line 43 of file qgsmultibandcolorrenderer.h.
| void QgsMultiBandColorRenderer::setRedContrastEnhancement | ( | QgsContrastEnhancement * | ce | ) |
Takes ownership.
Definition at line 65 of file qgsmultibandcolorrenderer.cpp.
References mRedContrastEnhancement.
Referenced by clone(), QgsRasterLayer::setContrastEnhancement(), and QgsMultiBandColorRendererWidget::setCustomMinMaxValues().
|
virtual |
Returns a list of band numbers used by the renderer.
Reimplemented from QgsRasterRenderer.
Definition at line 357 of file qgsmultibandcolorrenderer.cpp.
References mBlueBand, mGreenBand, and mRedBand.
|
virtual |
Write base class members to xml.
Reimplemented from QgsRasterInterface.
Definition at line 322 of file qgsmultibandcolorrenderer.cpp.
References QgsRasterRenderer::_writeXML(), mBlueBand, mBlueContrastEnhancement, mGreenBand, mGreenContrastEnhancement, mRedBand, mRedContrastEnhancement, and QgsContrastEnhancement::writeXML().
|
private |
Definition at line 68 of file qgsmultibandcolorrenderer.h.
Referenced by block(), clone(), usesBands(), and writeXML().
|
private |
Definition at line 72 of file qgsmultibandcolorrenderer.h.
Referenced by block(), clone(), setBlueContrastEnhancement(), writeXML(), and ~QgsMultiBandColorRenderer().
|
private |
Definition at line 67 of file qgsmultibandcolorrenderer.h.
Referenced by block(), clone(), usesBands(), and writeXML().
|
private |
Definition at line 71 of file qgsmultibandcolorrenderer.h.
Referenced by block(), clone(), setGreenContrastEnhancement(), writeXML(), and ~QgsMultiBandColorRenderer().
|
private |
Definition at line 66 of file qgsmultibandcolorrenderer.h.
Referenced by block(), clone(), usesBands(), and writeXML().
|
private |
Definition at line 70 of file qgsmultibandcolorrenderer.h.
Referenced by block(), clone(), setRedContrastEnhancement(), writeXML(), and ~QgsMultiBandColorRenderer().
1.8.7