BlendRenderer Class

  • BlendRenderer
  • class Esri::ArcGISRuntime::BlendRenderer

    A blend renderer can apply a color ramp to a hillshade to emphasize areas of high or low elevation of raster data in a RasterLayer. More...

    Header: #include <BlendRenderer.h>
    Since: Esri::ArcGISRuntime 100.0
    Inherits: Esri::ArcGISRuntime::HillshadeRenderer

    Public Functions

    BlendRenderer(Esri::ArcGISRuntime::Raster *elevationRaster, QObject *parent = nullptr)
    BlendRenderer(Esri::ArcGISRuntime::Raster *elevationRaster, double altitude, double azimuth, double zFactor, QObject *parent = nullptr)
    BlendRenderer(Esri::ArcGISRuntime::Raster *elevationRaster, const QList<double> &outputMinValues, const QList<double> &outputMaxValues, const QList<double> &sourceMinValues, const QList<double> &sourceMaxValues, const QList<double> &noDataValues, const QList<double> &gammas, Esri::ArcGISRuntime::ColorRamp *colorRamp, double altitude, double azimuth, double zFactor, Esri::ArcGISRuntime::SlopeType slopeType, double pixelSizeFactor, double pixelSizePower, int outputBitDepth, QObject *parent = nullptr)
    virtual ~BlendRenderer() override
    Esri::ArcGISRuntime::ColorRamp *colorRamp() const
    Esri::ArcGISRuntime::Raster *elevationRaster() const
    QList<double> gammas() const
    QList<double> noDataValues() const
    QList<double> outputMaxValues() const
    QList<double> outputMinValues() const
    QList<double> sourceMaxValues() const
    QList<double> sourceMinValues() const

    Detailed Description

    The blend renderer extends HillshadeRenderer with options to provide minimum and maximum stretch values, gamma adjustments, elevation raster, and color ramp. It provides a look similar to the original raster, but with some terrain shading, giving it a textured look and making changes in elevation more visible.

    Member Function Documentation

    [explicit] BlendRenderer::BlendRenderer(Esri::ArcGISRuntime::Raster *elevationRaster, QObject *parent = nullptr)

    Constructor that takes an elevationRaster with an optional parent.

    The default values are:

    • minValues - none
    • maxValues - none
    • gammas - none
    • altitude - 45 degrees
    • azimuth - 315 degrees
    • zFactor - 1
    • slopeType - SlopeType::None
    • pixelSizeFactor - 1
    • pixelSizePower - 1
    • outputBitDepth - 8

    BlendRenderer::BlendRenderer(Esri::ArcGISRuntime::Raster *elevationRaster, double altitude, double azimuth, double zFactor, QObject *parent = nullptr)

    Constructor that takes the following parameters:

    • elevationRaster - The raster elevation source.
    • altitude - The light's angle of elevation above the horizon.
    • azimuth - The light's relative angle along the horizon measured clockwise, where 0 is north.
    • zFactor - The z-factor used to convert z unit to x,y units.
    • parent - The optional parent.

    The default values are:

    • minValues - none
    • maxValues - none
    • gammas - none
    • slopeType - SlopeType::None
    • pixelSizeFactor - 1
    • pixelSizePower - 1
    • outputBitDepth - 8

    BlendRenderer::BlendRenderer(Esri::ArcGISRuntime::Raster *elevationRaster, const QList<double> &outputMinValues, const QList<double> &outputMaxValues, const QList<double> &sourceMinValues, const QList<double> &sourceMaxValues, const QList<double> &noDataValues, const QList<double> &gammas, Esri::ArcGISRuntime::ColorRamp *colorRamp, double altitude, double azimuth, double zFactor, Esri::ArcGISRuntime::SlopeType slopeType, double pixelSizeFactor, double pixelSizePower, int outputBitDepth, QObject *parent = nullptr)

    Creates a blend renderer.

    • elevationRaster - The elevation data, Raster. Can be nullptr.
    • outputMinValues - QList of double. Output stretch values, one for each band. Can be empty.
    • outputMaxValues - QList of double. Output stretch values, one for each band. Can be empty.
    • sourceMinValues - QList of double. Input stretch values, one for each band. Can be empty.
    • sourceMaxValues - QList of double. Input stretch values, one for each band. Can be empty.
    • noDataValues - QList of double. NoData values, one for each band. Can be empty.
    • gammas - QList of double. Gamma adjustment. Can be empty.
    • colorRamp - The color ramp object.
    • altitude - Altitude angle of the light source.
    • azimuth - Azimuth angle of the light source, measured clockwise from north.
    • zFactor - Factor to convert z unit to x,y unit, default is 1.
    • slopeType - SlopeType.
    • pixelSizeFactor - Pixel size factor, default is 1.
    • pixelSizePower - Pixel size power value, default is 1.
    • outputBitDepth - Output bit depth, default is 8-bit.
    • parent - The optional parent QObject.

    [override virtual] BlendRenderer::~BlendRenderer()

    Destructor.

    [since Esri::ArcGISRuntime 100.8] Esri::ArcGISRuntime::ColorRamp *BlendRenderer::colorRamp() const

    Returns the color ramp for creating the blend renderer.

    This function was introduced in Esri::ArcGISRuntime 100.8.

    Esri::ArcGISRuntime::Raster *BlendRenderer::elevationRaster() const

    Returns the elevation raster, Raster.

    QList<double> BlendRenderer::gammas() const

    Returns the gamma adjustments.

    Any changes to this array are not applied to the renderer.

    QList<double> BlendRenderer::noDataValues() const

    Returns the no-data values, one for each band.

    Any changes to this array are not applied to the renderer.

    QList<double> BlendRenderer::outputMaxValues() const

    Returns the maximum output values for blending, one for each band.

    Any changes to this array are not applied to the renderer.

    QList<double> BlendRenderer::outputMinValues() const

    Returns the minimum output values for blending, one for each band.

    Any changes to this array are not applied to the renderer.

    QList<double> BlendRenderer::sourceMaxValues() const

    Returns the maximum input values for blending, one for each band.

    Any changes to this array are not applied to the renderer.

    QList<double> BlendRenderer::sourceMinValues() const

    Returns the minimum input values for blending, one for each band.

    Any changes to this array are not applied to the renderer.

    Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.