@itwin/core-frontend
Version:
iTwin.js frontend components
36 lines • 2 kB
TypeScript
/** @packageDocumentation
* @module Tiles
*/
import { Range1d } from "@itwin/core-geometry";
import { RealityMeshParams } from "../../render/RealityMeshParams";
import { MapCartoRectangle, MapTile, MapTilingScheme, QuadId, ReadMeshArgs, TerrainMeshProvider, TerrainMeshProviderOptions, TileRequest } from "../internal";
/** A terrain mesh provider that produces geometry that represents a smooth ellipsoid without any height perturbations.
* The area within the project extents are represented as planar tiles and other tiles are facetted approximations
* of the WGS84 ellipsoid.
* This is the terrain provider used when the background map is enabled but 3d terrain is disabled.
* @public
*/
export declare class EllipsoidTerrainProvider extends TerrainMeshProvider {
private _tilingScheme;
private readonly _wantSkirts;
/** Construct a new terrain provider.
* @note [[TerrainMeshProviderOptions.wantNormals]] is ignored - no normals are produced.
*/
constructor(opts: TerrainMeshProviderOptions);
/** Implements [[TerrainMeshProvider.maxDepth]] to return a fixed maximum depth of 22. */
get maxDepth(): number;
/** Implements [[TerrainMeshProvider.getChildHeightRange]] to return an empty range, because the ellipsoid is smooth. */
getChildHeightRange(_quadId: QuadId, _rectangle: MapCartoRectangle, _parent: MapTile): Range1d | undefined;
/** Implements [[TerrainMeshProvider.tilingScheme]]. */
get tilingScheme(): MapTilingScheme;
private createSkirtlessPlanarMesh;
private createSkirtedPlanarMesh;
/** @internal override */
readMesh(args: ReadMeshArgs): Promise<RealityMeshParams | undefined>;
private createGlobeMesh;
/** Implements [[TerrainMeshProvider.requestMeshData]] to return an empty string because the mesh can be generated
* purely from information provided by the [[MapTile]].
*/
requestMeshData(): Promise<TileRequest.Response>;
}
//# sourceMappingURL=EllipsoidTerrainProvider.d.ts.map