@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
78 lines (75 loc) • 4.32 kB
TypeScript
import type { JSONSupport } from "../core/JSONSupport.js";
import type { ProjectionLengthUnit } from "../core/units.js";
export interface HeightModelInfoProperties {
/**
* The surface type or height model of the vertical coordinate system (VCS). A
* [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/) will only render layers containing data that
* is compatible with the HeightModelInfo of the scene.
*
* Value | Description
* ------|------------
* gravity-related-height | A gravity-related VCS may set its zero point through a local mean sea level or a benchmark, and is compatible with other gravity-related VCS for the purposes of rendering.
* ellipsoidal | An ellipsoidal VCS defines heights that are referenced to an ellipsoid of a geographic coordinate system.
*
* @default "gravity-related-height"
*/
heightModel?: HeightModel;
/**
* The unit of the vertical coordinate system. A [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/)
* will use this property to check that the vertical data of layers that
* define a HeightModelInfo is compatible with the view.
*
* @default "meters"
*/
heightUnit?: ProjectionLengthUnit;
/**
* The datum realization of the vertical coordinate system. A
* [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/) will only render layers that define a
* HeightModelInfo with an identical `vertCRS` to that of the scene,
* when using an `ellipsoidal` height model.
*/
vertCRS?: string | null;
}
export type HeightModel = "gravity-related-height" | "ellipsoidal";
/**
* The height model info defines the characteristics of a vertical coordinate system.
* In a [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/), the height model info of a
* [WebScene.heightModelInfo](https://developers.arcgis.com/javascript/latest/references/core/WebScene/#heightModelInfo) is used to avoid rendering layers
* that have incompatible vertical coordinate systems.
* A height model info object is defined by a [surface type](https://developers.arcgis.com/javascript/latest/references/core/geometry/HeightModelInfo/#heightModel), a [vertical unit](https://developers.arcgis.com/javascript/latest/references/core/geometry/HeightModelInfo/#heightUnit), and an
* [optional datum realization](https://developers.arcgis.com/javascript/latest/references/core/geometry/HeightModelInfo/#vertCRS).
*
* @since 4.5
* @see [Vertical coordinate systems](https://developers.arcgis.com/rest/services-reference/enterprise/using-spatial-references.htm)
*/
export default class HeightModelInfo extends JSONSupport {
constructor(properties?: HeightModelInfoProperties);
/**
* The surface type or height model of the vertical coordinate system (VCS). A
* [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/) will only render layers containing data that
* is compatible with the HeightModelInfo of the scene.
*
* Value | Description
* ------|------------
* gravity-related-height | A gravity-related VCS may set its zero point through a local mean sea level or a benchmark, and is compatible with other gravity-related VCS for the purposes of rendering.
* ellipsoidal | An ellipsoidal VCS defines heights that are referenced to an ellipsoid of a geographic coordinate system.
*
* @default "gravity-related-height"
*/
get heightModel(): HeightModel;
/**
* The unit of the vertical coordinate system. A [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/)
* will use this property to check that the vertical data of layers that
* define a HeightModelInfo is compatible with the view.
*
* @default "meters"
*/
get heightUnit(): ProjectionLengthUnit;
/**
* The datum realization of the vertical coordinate system. A
* [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/) will only render layers that define a
* HeightModelInfo with an identical `vertCRS` to that of the scene,
* when using an `ellipsoidal` height model.
*/
get vertCRS(): string | null | undefined;
}