UNPKG

@arcgis/core

Version:

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

80 lines (78 loc) 3.15 kB
import type Collection from "../../core/Collection.js"; import type VoxelDynamicSection from "./VoxelDynamicSection.js"; import type VoxelSlice from "./VoxelSlice.js"; import type { JSONSupport } from "../../core/JSONSupport.js"; import type { VoxelSliceProperties } from "./VoxelSlice.js"; import type { ReadonlyArrayOrCollection } from "../../core/Collection.js"; import type { VoxelDynamicSectionProperties } from "./VoxelDynamicSection.js"; export interface VoxelVolumeStyleProperties extends Partial<Pick<VoxelVolumeStyle, "verticalExaggeration" | "verticalOffset">> { /** * The collection of [VoxelDynamicSection](https://developers.arcgis.com/javascript/latest/references/core/layers/voxel/VoxelDynamicSection/). * * @since 4.25 */ dynamicSections?: ReadonlyArrayOrCollection<VoxelDynamicSectionProperties>; /** * The collection of [VoxelSlice](https://developers.arcgis.com/javascript/latest/references/core/layers/voxel/VoxelSlice/). * * @since 4.25 */ slices?: ReadonlyArrayOrCollection<VoxelSliceProperties>; } /** * The VolumeStyle allows you to define rendering properties that apply to the volume itself, such as vertical exaggeration and offset. * * @since 4.24 * @see [Sample - VoxelLayer variable and render mode](https://developers.arcgis.com/javascript/latest/sample-code/layers-voxel-variable/) * @see [Sample - Explore a VoxelLayer using dynamic section](https://developers.arcgis.com/javascript/latest/sample-code/layers-voxel-dynamic-sections/) * @see [Sample - Create area of interest for VoxelLayer](https://developers.arcgis.com/javascript/latest/sample-code/layers-voxel-slices/) */ export default class VoxelVolumeStyle extends JSONSupport { /** * @example * // Typical usage * let volumeStyle = new VoxelVolumeStyle({ * verticalExaggeration: 183677 * }); */ constructor(properties?: VoxelVolumeStyleProperties); /** * The collection of [VoxelDynamicSection](https://developers.arcgis.com/javascript/latest/references/core/layers/voxel/VoxelDynamicSection/). * * @since 4.25 */ get dynamicSections(): Collection<VoxelDynamicSection>; set dynamicSections(value: ReadonlyArrayOrCollection<VoxelDynamicSectionProperties>); /** * The collection of [VoxelSlice](https://developers.arcgis.com/javascript/latest/references/core/layers/voxel/VoxelSlice/). * * @since 4.25 */ get slices(): Collection<VoxelSlice>; set slices(value: ReadonlyArrayOrCollection<VoxelSliceProperties>); /** * The vertical exaggeration factor. * * @default 1 */ accessor verticalExaggeration: number; /** * The vertical offset amount. * * @default 0 */ accessor verticalOffset: number; /** * Id of the volume. Should always be 0, as only 1 volume is currently supported. * * @default 0 */ get volumeId(): number; /** * Creates a deep clone of this object. Any properties that store values by reference will be * assigned copies of the referenced values on the cloned instance. * * @returns A deep clone of the class instance that invoked this method. */ clone(): VoxelVolumeStyle; }