require(["esri/smartMapping/heuristics/scaleRange"], (scaleRange) => { /* code goes here */ });
import scaleRange from "@arcgis/core/smartMapping/heuristics/scaleRange.js";
esri/smartMapping/heuristics/scaleRange
Function for determining suggested min and max scale ranges for an input layer.
Known Limitations
- Input SceneLayers must meet the following conditions:
- SceneLayers without the
supportsRenderer
andsupportsLayerQuery
capabilities enabled, unless a predefined statistics object is passed to thestatistics
parameter of the method in conjunction with the layer. To check a SceneLayer's capabilities, use the getFieldInfoUsage() method.
- SceneLayers without the
Method Overview
Name | Return Type | Summary | Function |
---|---|---|---|
Promise<ScaleRangeResult> | Generates a suggested scale range (i.e. more details | scaleRange |
Method Details
-
scaleRange(params){Promise<ScaleRangeResult>}
-
Generates a suggested scale range (i.e. minScale and maxScale) to apply to the input
layer
. These values suggest the best scale range for viewing the input layer.ParametersSpecificationparams ObjectSee the table below for details about parameters that may be passed to this function.
SpecificationThe layer for which to generate a suggested min/max scale range.
view ViewsampleSize NumberoptionalDefault Value: 500The number of features in the
layer
to sample for spatial statistics. A higher sample size will yield more precise results. However, higher sample sizes also require more time for the function to process the result.forBinning BooleanoptionalIndicates whether the generated renderer is for a binning visualization.
signal AbortSignaloptionalAllows for cancelable requests. If canceled, the promise will be rejected with an error named
AbortError
. See also AbortController.ReturnsType Description Promise<ScaleRangeResult> Resolves to an object containing the suggested min
andmax
scale for the layer.ExamplescaleRange({ layer: featureLayer, view: view }).then(function(response){ // apply the suggested scale range to the input layer featureLayer.minScale = response.minScale; featureLayer.maxScale = response.maxScale; view.map.add(featureLayer); });
Type Definitions
-
ScaleRangeResult
-
Suggested
min
andmax
scales to apply to the input layer for the scaleRange() function.