@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
37 lines (36 loc) • 2.16 kB
TypeScript
/**
* Function for determining suggested [min](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#minScale) and
* [max](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#maxScale) scale ranges for an input layer.
*
* > [!WARNING]
* >
* > **Known Limitations**
* >
* > Input [SceneLayers](https://developers.arcgis.com/javascript/latest/references/core/layers/SceneLayer/) must meet the following conditions:
* > - [SceneLayers](https://developers.arcgis.com/javascript/latest/references/core/layers/SceneLayer/) without the `supportsRenderer` and `supportsLayerQuery` capabilities enabled, unless a predefined
* > [statistics](https://developers.arcgis.com/javascript/latest/references/core/smartMapping/statistics/types/#SummaryStatisticsResult) object is passed to the `statistics` parameter of the
* > method in conjunction with the layer. To check a SceneLayer's capabilities, use the [SceneLayer.getFieldUsageInfo()](https://developers.arcgis.com/javascript/latest/references/core/layers/SceneLayer/#getFieldUsageInfo) method.
*
* @since 4.12
*/
import type { ScaleRangeResult, ScaleRangeParameters } from "./types.js";
/**
* Generates a suggested scale range (i.e. [FeatureLayer.minScale](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#minScale)
* and [FeatureLayer.maxScale](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#maxScale)) to apply to the input `layer`. These
* values suggest the best scale range for viewing the input layer.
*
* @param parameters - The function parameters.
* @returns Resolves to an object containing the suggested `min` and `max` scale for the layer.
* @example
* scaleRange({
* 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);
* });
*/
export default function scaleRange(parameters: ScaleRangeParameters): Promise<ScaleRangeResult>;