UNPKG

@arcgis/core

Version:

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

82 lines (80 loc) 3.77 kB
import type Color from "../Color.js"; import type { ColorLike } from "../Color.js"; import type { ClonableMixin } from "../core/Clonable.js"; import type { JSONSupport } from "../core/JSONSupport.js"; import type { LineMarkerPlacement, LineMarkerStyle } from "./types.js"; export interface LineStyleMarker3DProperties extends Partial<Pick<LineStyleMarker3D, "placement" | "style">> { /** The color of the marker. If not specified, the marker will match the color of the line. */ color?: ColorLike | null; } /** * LineStyleMarker3D is used for rendering a simple marker graphic on * a [LineSymbol3DLayer](https://developers.arcgis.com/javascript/latest/references/core/symbols/LineSymbol3DLayer/). * * Markers can enhance the cartographic information of a line by * providing additional visual cues about the associated feature. * * ![symbols-3d-line-markers](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-3d-line-markers.png) * * @since 4.23 * @see [LineSymbol3DLayer](https://developers.arcgis.com/javascript/latest/references/core/symbols/LineSymbol3DLayer/) * @see [Sample - Line markers and label placement](https://developers.arcgis.com/javascript/latest/sample-code/visualization-line-markers/) * @see [Sample - Query Elevation (points)](https://developers.arcgis.com/javascript/latest/sample-code/elevation-query-points/) * @example * const symbol = { * type: "line-3d", // autocasts as new LineSymbol3D() * symbolLayers: [{ * type: "line", // autocasts as new LineSymbol3DLayer() * marker: { // autocasts as new LineStyleMarker3D() * type: "style", * style: "x", * color: "blue", * placement: "begin" * }) * }] * }; */ export default class LineStyleMarker3D extends LineStyleMarker3DSuperclass { /** * @example * const marker = new LineStyleMarker3D({ * color: new Color("red"), * placement: "begin-end", * style: "cross" * }) */ constructor(properties?: LineStyleMarker3DProperties); /** The color of the marker. If not specified, the marker will match the color of the line. */ get color(): Color | null | undefined; set color(value: ColorLike | null | undefined); /** * Indicates where the marker is placed. Possible values are listed in the table below. * * Value | Description * -------|--------------- * begin | Single marker at the start of the line * end | Single marker at the end of the line * begin-end | Two markers, one at the start and one at the end of the line * * @default "begin-end" */ accessor placement: LineMarkerPlacement; /** * Style of the marker. Possible values are listed in the table below. * * Value | Example * -------|-------- * arrow | ![lsm-arrow](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-lsm-arrow.png) * circle | ![lsm-circle](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-lsm-circle.png) * square | ![lsm-square](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-lsm-square.png) * diamond| ![lsm-diamond](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-lsm-diamond.png) * cross | ![lsm-cross](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-lsm-cross.png) * x | ![lsm-x](https://developers.arcgis.com/javascript/latest/assets/references/core/symbols/symbols-lsm-x.png) * * @default "arrow" */ accessor style: LineMarkerStyle; /** The type of marker applied to a line. */ get type(): "style"; } declare const LineStyleMarker3DSuperclass: typeof JSONSupport & typeof ClonableMixin