import type Point from "../../geometry/Point.js"; import type BaseImageMeasureParameters from "./BaseImageMeasureParameters.js"; import type { AngleUnit, LengthUnit } from "../../core/units.js"; import type { BaseImageMeasureParametersProperties } from "./BaseImageMeasureParameters.js"; import type { PointProperties } from "../../geometry/Point.js"; export interface ImageDistanceParametersProperties extends BaseImageMeasureParametersProperties, Partial> { /** A point that defines the from location of the distance and angle measurement. */ fromGeometry?: PointProperties; /** A point that defines the to location of the distance and angle measurement. */ toGeometry?: PointProperties; } /** * Input parameters used by the [ImageryLayer.measureDistanceAndAngle()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#measureDistanceAndAngle) * or [measureDistanceAndAngle()](https://developers.arcgis.com/javascript/latest/references/core/rest/imageService/#measureDistanceAndAngle) methods to perform imagery * distance and angle mensuration. * * @since 4.26 * @see [ImageryLayer.measureDistanceAndAngle()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#measureDistanceAndAngle) * @see [measureDistanceAndAngle()](https://developers.arcgis.com/javascript/latest/references/core/rest/imageService/#measureDistanceAndAngle) * @see [ImageDistanceResult](https://developers.arcgis.com/javascript/latest/references/core/rest/support/ImageDistanceResult/) */ export default class ImageDistanceParameters extends BaseImageMeasureParameters { constructor(properties?: ImageDistanceParametersProperties); /** * The angular unit used for angle calculation. * * @default "degrees" */ accessor angularUnit: AngleUnit; /** A point that defines the from location of the distance and angle measurement. */ get fromGeometry(): Point; set fromGeometry(value: PointProperties); /** * When `true`, this method calculates the 3D measurements for the distance and angle between two points on an image service. * The elevation surface will be incorporated when performing the calculations. * 3D calculation can only be done when the layer's [capabilities.mensuration.supports3D](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#capabilities) returns `true`. * * @default false */ accessor is3D: boolean; /** * The linear unit used for distance calculation. * * @default "meters" */ accessor linearUnit: LengthUnit; /** A point that defines the to location of the distance and angle measurement. */ get toGeometry(): Point; set toGeometry(value: PointProperties); /** The string value representing the type of imagery mensuration. */ readonly type: "distance-angle"; }