Skip To Content ArcGIS for Developers Sign In Dashboard

RGBRenderer Class

(Esri::ArcGISRuntime::RGBRenderer)

A RGB composite raster renderer More...

Header: #include <RGBRenderer>
Since: Esri::ArcGISRuntime 100.0
Inherits: BaseStretchRenderer

Public Functions

RGBRenderer(QObject *parent = nullptr)
RGBRenderer(const StretchParameters &stretchParameters, QObject *parent = nullptr)
RGBRenderer(const StretchParameters &stretchParameters, const QList<int> &bandIndexes, PansharpenType pansharpenType, Raster *panchromaticRaster, const QList<double> &weights, QObject *parent = nullptr)
RGBRenderer(const StretchParameters &stretchParameters, const QList<int> &bandIndexes, const QList<double> &gammas, bool estimateStatistics, QObject *parent = nullptr)
RGBRenderer(const StretchParameters &stretchParameters, const QList<int> &bandIndexes, const QList<double> &gammas, bool estimateStatistics, PansharpenType pansharpenType, Raster *panchromaticRaster, const QList<double> &weights, QObject *parent = nullptr)
~RGBRenderer()
QList<int> bandIndexes() const
Raster *panchromaticRaster() const
PansharpenType pansharpenType() const
QList<double> weights() const

Additional Inherited Members

Detailed Description

A RGB composite raster renderer

A RGB composite stretch renderer can help visualize raster data using RasterLayer.

It is similar to StretchRenderer but allows you to combine bands as red, green, blue composites. This renderer can be used for viewing color aerial photography, which is a three-band raster dataset, or to display different combinations of bands when working with multi-band raster datasets, such as satellite or aerial imagery.

Member Function Documentation

RGBRenderer::RGBRenderer(QObject *parent = nullptr)

Default constructor with an optional parent.

RGBRenderer::RGBRenderer(const StretchParameters &stretchParameters, QObject *parent = nullptr)

Constructor that takes stretchParameters and an optional parent.

RGBRenderer::RGBRenderer(const StretchParameters &stretchParameters, const QList<int> &bandIndexes, PansharpenType pansharpenType, Raster *panchromaticRaster, const QList<double> &weights, QObject *parent = nullptr)

Constructor that takes the following parameters to create a RGBRenderer with the specified settings.

  • stretchParameters - The StretchParameters.
  • bandIndexes - Indexes of bands of a multi-band raster dataset that the renderer is based on.
  • pansharpenType - The type of panchromatic sharpening method that is applied.
  • panchromaticRaster - The high-resolution panchromatic raster to use as a basis for panchoromatic sharpening.
  • weights - The weights to use in the panchromatic sharpening method.
  • parent - The optional parent.

RGBRenderer::RGBRenderer(const StretchParameters &stretchParameters, const QList<int> &bandIndexes, const QList<double> &gammas, bool estimateStatistics, QObject *parent = nullptr)

Constructor that takes the following parameters to create a RGBRenderer with with the specified settings.

  • stretchParameters - The StretchParameters.
  • bandIndexes - Indexes of bands of a multi-band raster dataset that the renderer is based on.
  • gammas - The list of gamma values.
  • estimateStatistics - Whether to estimate statistics if they exist.
  • parent - The optional parent.

RGBRenderer::RGBRenderer(const StretchParameters &stretchParameters, const QList<int> &bandIndexes, const QList<double> &gammas, bool estimateStatistics, PansharpenType pansharpenType, Raster *panchromaticRaster, const QList<double> &weights, QObject *parent = nullptr)

Constructor that takes the following parameters to create a RGBRenderer with with the specified settings.

  • stretchParameters - The StretchParameters.
  • bandIndexes - The indexes of bands of a multi-band raster dataset that the renderer is based on.
  • gammas - The list of gamma values.
  • estimateStatistics - Whether to estimate statistics if they exist.
  • pansharpenType - The type of panchromatic sharpening method that is applied.
  • panchromaticRaster - The high-resolution panchromatic raster to use as a basis for panchoromatic sharpening.
  • weights - The weights to use in the panchromatic sharpening method.
  • parent - The optional parent.

RGBRenderer::~RGBRenderer()

Destructor.

QList<int> RGBRenderer::bandIndexes() const

Returns indexes of bands of a multi-band raster dataset that the renderer is based on.

The band specified by the 0th index is used as the Red band, 1st index as the Green band, and 2nd index as the Blue band.

Raster *RGBRenderer::panchromaticRaster() const

Returns the high-resolution panchromatic raster to use as a basis for panchoromatic sharpening.

Pan-sharpening uses a higher-resolution panchromatic image (or raster band) to fuse with a lower-resolution multi-band raster dataset. The result produces a multi-band raster dataset with the resolution of the panchromatic raster where the two rasters fully overlap.

Note: Please see the ArcGIS Desktop documentation for further details.

PansharpenType RGBRenderer::pansharpenType() const

Returns the type of panchromatic sharpening method that is applied.

QList<double> RGBRenderer::weights() const

Returns the weights to use in the panchromatic sharpening method.

Each of method uses different models to improve the spatial resolution while maintaining the color, and some are adjusted to include a weighting so that a fourth band can be included (such as the near-infrared band available in many multispectral image sources). By adding the weighting and enabling the infrared component, the visual quality in the output colors is improved.


Feedback on this topic?