UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

80 lines (78 loc) 6.48 kB
import type { JSONSupport } from "../../core/JSONSupport.js"; import type { SymbolUnion } from "../../symbols/types.js"; import type { WebStyleSymbolProperties } from "../../symbols/WebStyleSymbol.js"; import type { PolygonSymbol3DProperties } from "../../symbols/PolygonSymbol3D.js"; import type { PointSymbol3DProperties } from "../../symbols/PointSymbol3D.js"; import type { MeshSymbol3DProperties } from "../../symbols/MeshSymbol3D.js"; import type { LineSymbol3DProperties } from "../../symbols/LineSymbol3D.js"; import type { LabelSymbol3DProperties } from "../../symbols/LabelSymbol3D.js"; import type { CIMSymbolProperties } from "../../symbols/CIMSymbol.js"; import type { TextSymbolProperties } from "../../symbols/TextSymbol.js"; import type { SimpleMarkerSymbolProperties } from "../../symbols/SimpleMarkerSymbol.js"; import type { SimpleLineSymbolProperties } from "../../symbols/SimpleLineSymbol.js"; import type { SimpleFillSymbolProperties } from "../../symbols/SimpleFillSymbol.js"; import type { PictureMarkerSymbolProperties } from "../../symbols/PictureMarkerSymbol.js"; import type { PictureFillSymbolProperties } from "../../symbols/PictureFillSymbol.js"; export interface ClassBreakInfoProperties extends Partial<Pick<ClassBreakInfo, "label" | "maxValue" | "minValue">> { /** * Defines the symbol used to render features with data values that are within the bounds * defined for the class break. This value may be autocast by specifying the symbol `type`. * * @see [Guide - Esri color ramps](https://developers.arcgis.com/javascript/latest/esri-color-ramps/) * @see [Guide - Visualization best practices](https://developers.arcgis.com/javascript/latest/visualization-best-practices/) */ symbol?: (((PictureFillSymbolProperties & { type: "picture-fill" }) | (PictureMarkerSymbolProperties & { type: "picture-marker" }) | (SimpleFillSymbolProperties & { type: "simple-fill" }) | (SimpleLineSymbolProperties & { type: "simple-line" }) | (SimpleMarkerSymbolProperties & { type: "simple-marker" }) | (TextSymbolProperties & { type: "text" }) | (CIMSymbolProperties & { type: "cim" })) | ((LabelSymbol3DProperties & { type: "label-3d" }) | (LineSymbol3DProperties & { type: "line-3d" }) | (MeshSymbol3DProperties & { type: "mesh-3d" }) | (PointSymbol3DProperties & { type: "point-3d" }) | (PolygonSymbol3DProperties & { type: "polygon-3d" })) | (WebStyleSymbolProperties & { type: "web-style" })); } /** * Defines a class break for a [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/references/core/renderers/ClassBreaksRenderer/). A class break * defines a symbol for a range of numeric values. The [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/references/core/renderers/ClassBreaksRenderer/) * determines the field or expression from which to request data used to drive the rendering. Each * feature's value is then used to assign the feature a symbol based on the break (or range) in which * the value falls. * * @since 4.0 * @see [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/references/core/renderers/ClassBreaksRenderer/) * @see [Guide - Esri color ramps](https://developers.arcgis.com/javascript/latest/esri-color-ramps/) * @see [Guide - Visualization best practices](https://developers.arcgis.com/javascript/latest/visualization-best-practices/) */ export default class ClassBreakInfo extends JSONSupport { constructor(properties?: ClassBreakInfoProperties); /** * Describes the data represented by the class break. This label will appear in the * [Legend](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-legend/) next to the symbol representing the break. * If no label is provided, then a default label is derived using the * [minValue](https://developers.arcgis.com/javascript/latest/references/core/renderers/support/ClassBreakInfo/#minValue) and [maxValue](https://developers.arcgis.com/javascript/latest/references/core/renderers/support/ClassBreakInfo/#maxValue). */ accessor label: string | null | undefined; /** * Sets the maximum value for the class break. Features with this value or smaller as small as * the provided [minValue](https://developers.arcgis.com/javascript/latest/references/core/renderers/support/ClassBreakInfo/#minValue) will be rendered with the given [symbol](https://developers.arcgis.com/javascript/latest/references/core/renderers/support/ClassBreakInfo/#symbol). * * @default 0 */ accessor maxValue: number; /** * Sets the minimum value for the class break. Features with this value or greater up to * the provided [maxValue](https://developers.arcgis.com/javascript/latest/references/core/renderers/support/ClassBreakInfo/#maxValue) will be rendered with the given [symbol](https://developers.arcgis.com/javascript/latest/references/core/renderers/support/ClassBreakInfo/#symbol). */ accessor minValue: number; /** * Defines the symbol used to render features with data values that are within the bounds * defined for the class break. This value may be autocast by specifying the symbol `type`. * * @see [Guide - Esri color ramps](https://developers.arcgis.com/javascript/latest/esri-color-ramps/) * @see [Guide - Visualization best practices](https://developers.arcgis.com/javascript/latest/visualization-best-practices/) */ get symbol(): SymbolUnion; set symbol(value: (((PictureFillSymbolProperties & { type: "picture-fill" }) | (PictureMarkerSymbolProperties & { type: "picture-marker" }) | (SimpleFillSymbolProperties & { type: "simple-fill" }) | (SimpleLineSymbolProperties & { type: "simple-line" }) | (SimpleMarkerSymbolProperties & { type: "simple-marker" }) | (TextSymbolProperties & { type: "text" }) | (CIMSymbolProperties & { type: "cim" })) | ((LabelSymbol3DProperties & { type: "label-3d" }) | (LineSymbol3DProperties & { type: "line-3d" }) | (MeshSymbol3DProperties & { type: "mesh-3d" }) | (PointSymbol3DProperties & { type: "point-3d" }) | (PolygonSymbol3DProperties & { type: "polygon-3d" })) | (WebStyleSymbolProperties & { type: "web-style" }))); /** * Creates a deep clone of the class break info object. * * @returns A deep clone of the class break * that invoked this method. * @example * // Creates a deep clone of the first class break in the renderer * let firstClassBreak = renderer.classBreaks[0].clone(); */ clone(): ClassBreakInfo; }