UNPKG

@arcgis/core

Version:

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

65 lines (62 loc) 3.61 kB
/** * This object contains helper methods for generating a [VectorFieldRenderer](https://developers.arcgis.com/javascript/latest/references/core/renderers/VectorFieldRenderer/) for a * `Vector-UV` or `Vector-MagDir` [ImageryLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/) or * [ImageryTileLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryTileLayer/). * * The [createRenderer()](https://developers.arcgis.com/javascript/latest/references/core/smartMapping/raster/renderers/vectorField/#createRenderer) method in this module generates a renderer that may be * applied directly to the input layer. * * > [!WARNING] * > * > **Known Limitations** * > * > VectorFieldRenderer is only supported with [ImageryTileLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryTileLayer/) and * > [ImageryLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/) where the * > [source type](https://pro.arcgis.com/en/pro-app/latest/help/data/imagery/raster-dataset-properties.htm) * > is `Vector-UV` or `Vector-MagDir`. * > VectorFieldRenderer is only supported in 2D [MapView](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/). * * @since 4.20 */ import type VectorFieldRenderer from "../../../renderers/VectorFieldRenderer.js"; import type { RotationType } from "../../../core/quantity.js"; import type { RasterRendererParameters } from "./types.js"; export interface VectorFieldRendererParameters extends RasterRendererParameters { /** * Defines the flow direction of the * data. This can be modified to display meteorological (the direction it is flowing from) or * oceanographic data (the direction it is flowing to). See [VectorFieldRenderer.flowRepresentation](https://developers.arcgis.com/javascript/latest/references/core/renderers/VectorFieldRenderer/#flowRepresentation) for more information. */ flowRepresentation?: VectorFieldRenderer["flowRepresentation"]; /** * Defines the origin and direction of rotation depending on how * the angle of rotation was measured. This property only applies to rotations around the `heading` axis. */ rotationType?: RotationType; /** * The predefined symbol styles used to represent * the vector flow. See [VectorFieldRenderer.style](https://developers.arcgis.com/javascript/latest/references/core/renderers/VectorFieldRenderer/#style) for more information. */ style?: VectorFieldRenderer["style"]; } /** * The result object of the [createRenderer()](https://developers.arcgis.com/javascript/latest/references/core/smartMapping/raster/renderers/vectorField/#createRenderer) method. See the table * below for details of each property. */ export interface VectorFieldRendererResult { /** * The VectorFieldRenderer renderer to apply * to the input layer. */ renderer: VectorFieldRenderer; } /** * Generates a [VectorFieldRenderer](https://developers.arcgis.com/javascript/latest/references/core/renderers/VectorFieldRenderer/) to display raster data with vector symbols. * This renderer is often used for visualizing flow direction and magnitude information in meteorology * and oceanography raster data. * * @param parameters - Input parameters for generating a vector field visualization. * @returns Resolves * to an object containing a VectorFieldRenderer that can be set on the input layer. */ export function createRenderer(parameters: VectorFieldRendererParameters): Promise<VectorFieldRendererResult>;