Skip to content
import { createRenderer } from "@arcgis/core/smartMapping/raster/renderers/stretch.js";
Since
ArcGIS Maps SDK for JavaScript 4.20

This object contains helper methods for generating a single-band stretch visualization for raster layers (i.e. ImageryLayer, ImageryTileLayer, or WCSLayer).

The createRenderer() method in this module generates a renderer that may be applied directly to the input layer.

Type definitions

RasterStretchColorrampRendererParameters

Type definition

stretchType

Property
Type
RasterStretchType | undefined

A preferred stretch type can be provided. See RasterStretchRenderer.stretchType for more information.

bandId

Property
Type
number | undefined

The 0-based index of a selected band.

colorRamp

Property
Type
AlgorithmicColorRamp | MultipartColorRamp | undefined

The color ramp to apply to the renderer.

gamma

Property
Type
number | undefined

The gamma values to be used if useGamma is true. Gamma refers to the degree of contrast between the mid-level gray values of a raster dataset. It does not affect the black or white values in a raster dataset, only the middle values. By applying a gamma correction, you can control the overall brightness of an ImageryLayer. Gamma stretching is only valid when stretchType is none, standard-deviation, or min-max. See RasterStretchRenderer.gamma for more information.

useGamma

Property
Type
boolean | undefined

Indicates whether the gamma values should be used. When false, the gamma is calculated from the statistics and histogram of the data.

dynamicRangeAdjustment

Property
Type
boolean | undefined

When true, calculates the renderer's statistics based on the current display extent and recalculates them as you zoom and pan around the image.

estimateStatistics

Property
Type
boolean | undefined

Useful in scenarios where an image service does not have statistics. When true, this function estimates global statistics to keep a constant visual on pan and zoom, unlike dynamicRangeAdjustment which recalculates statistics on each extent change.

variableName

Property
Type
string | undefined

Only applicable to multidimensional datasets where a raster layer can contain more than one variable (such as temperature, humidity, wind speed) with different statistics. Indicate the variable name here.

RasterStretchColorrampResult

Type definition

The result object of the createRenderer() method. See the table below for details of each property.

renderer

Property
Type
RasterStretchRenderer

The RasterStretchRenderer renderer to apply to the input layer.

bandId

Property
Type
number

The zero-based index of the band represented by the renderer.

Functions

createRenderer

Function

Generates a RasterStretchRenderer to render data from a single raster band.

Signature
createRenderer (parameters: RasterStretchColorrampRendererParameters): Promise<RasterStretchColorrampResult>
Parameters
ParameterTypeDescriptionRequired
parameters

Input parameters for generating a single-band stretch visualization. The colorRamp, gamma, useGamma, dynamicRangeAdjustment parameters are not related to stretch type. Pass them in to preserve the existing renderer settings if desired.

Returns
Promise<RasterStretchColorrampResult>

Resolves to an object containing a stretch renderer that can be set on the input renderer.