QgsSingleBandPseudoColorRenderer class

Raster renderer pipe for single band pseudocolor.

Base classes

class QgsRasterRenderer
Raster renderer pipe that applies colors to a raster.

Constructors, destructors, conversion operators

QgsSingleBandPseudoColorRenderer(QgsRasterInterface* input, int band = -1, QgsRasterShader* shader = nullptr)
Note: takes ownership of QgsRasterShader.
QgsSingleBandPseudoColorRenderer(const QgsSingleBandPseudoColorRenderer&) deleted
QgsSingleBandPseudoColorRenderer cannot be copied. Use clone() instead.

Public functions

auto band() const -> int
Returns the band used by the renderer.
auto block(int bandNo, const QgsRectangle& extent, int width, int height, QgsRasterBlockFeedback* feedback = nullptr) -> QgsRasterBlock* override
Read block of data using given extent and size.
auto clone() const -> QgsSingleBandPseudoColorRenderer* override
Clone itself, create deep copy.
void createShader(QgsColorRamp* colorRamp = nullptr, QgsColorRampShader::Type colorRampType = QgsColorRampShader::Interpolated, QgsColorRampShader::ClassificationMode classificationMode = QgsColorRampShader::Continuous, int classes = 0, bool clip = false, const QgsRectangle& extent = QgsRectangle())
Creates a color ramp shader.
void legendSymbologyItems(QList<QPair<QString, QColor>>& symbolItems) const override
Gets symbology items if provided by renderer.
auto operator=(const QgsSingleBandPseudoColorRenderer&) -> const QgsSingleBandPseudoColorRenderer& deleted
QgsSingleBandPseudoColorRenderer cannot be copied. Use clone() instead.
void setBand(int bandNo)
Sets the band used by the renderer.
void setShader(QgsRasterShader* shader)
Takes ownership of the shader.
auto shader() -> QgsRasterShader*
Returns the raster shader.
auto shader() const -> const QgsRasterShader*
auto usesBands() const -> QList<int> override
Returns a list of band numbers used by the renderer.
void writeXml(QDomDocument& doc, QDomElement& parentElem) const override
Write base class members to xml.

Function documentation

int QgsSingleBandPseudoColorRenderer::band() const

Returns the band used by the renderer.

QgsRasterBlock* QgsSingleBandPseudoColorRenderer::block(int bandNo, const QgsRectangle& extent, int width, int height, QgsRasterBlockFeedback* feedback = nullptr) override

Read block of data using given extent and size.

Parameters
bandNo band number
extent extent of block
width pixel width of block
height pixel height of block
feedback optional raster feedback object for cancelation/preview. Added in QGIS 3.0.

Returns pointer to data. Caller is responsible to free the memory returned.

void QgsSingleBandPseudoColorRenderer::createShader(QgsColorRamp* colorRamp = nullptr, QgsColorRampShader::Type colorRampType = QgsColorRampShader::Interpolated, QgsColorRampShader::ClassificationMode classificationMode = QgsColorRampShader::Continuous, int classes = 0, bool clip = false, const QgsRectangle& extent = QgsRectangle())

Creates a color ramp shader.

Parameters
colorRamp vector color ramp. Ownership is transferred to the shader.
colorRampType type of color ramp shader
classificationMode classification mode
classes number of classes
clip clip out of range values
extent extent used in classification (only used in quantile mode)

void QgsSingleBandPseudoColorRenderer::setBand(int bandNo)

Sets the band used by the renderer.

const QgsRasterShader* QgsSingleBandPseudoColorRenderer::shader() const