UNPKG

@itwin/core-frontend

Version:
56 lines 3.09 kB
/** @packageDocumentation * @module Views */ import { Ellipsoid, Matrix3d, Plane3dByOriginAndUnitNormal, Point3d, Range1d, Range3d, Ray3d, Transform, XYAndZ } from "@itwin/core-geometry"; import { Cartographic, Frustum, GlobeMode } from "@itwin/core-common"; import { IModelConnection } from "./IModelConnection"; import { GraphicBuilder } from "./render/GraphicBuilder"; /** @internal */ export declare function getFrustumPlaneIntersectionDepthRange(frustum: Frustum, plane: Plane3dByOriginAndUnitNormal): Range1d; /** Geometry of background map - either an ellipsoid or a plane as defined by GlobeMode. * @internal */ export declare class BackgroundMapGeometry { private _bimElevationBias; private _iModel; readonly globeMode: GlobeMode; readonly geometry: Plane3dByOriginAndUnitNormal | Ellipsoid; readonly globeOrigin: Point3d; readonly globeMatrix: Matrix3d; readonly cartesianRange: Range3d; readonly cartesianTransitionRange: Range3d; readonly cartesianPlane: Plane3dByOriginAndUnitNormal; readonly cartesianDiagonal: number; readonly cartesianChordHeight: number; readonly maxGeometryChordHeight: number; private _mercatorFractionToDb; private _mercatorTilingScheme; private _ecefToDb; static maxCartesianDistance: number; private static _transitionDistanceMultiplier; private static _scratchRayFractions; private static _scratchRayAngles; private static _scratchPoint; constructor(_bimElevationBias: number, globeMode: GlobeMode, _iModel: IModelConnection); static getCartesianRange(iModel: IModelConnection, result?: Range3d): Range3d; static getCartesianTransitionDistance(iModel: IModelConnection): number; dbToCartographicFromGcs(db: XYAndZ[]): Promise<Cartographic[]>; dbToWGS84CartographicFromGcs(db: XYAndZ[]): Promise<Cartographic[]>; dbToCartographic(db: XYAndZ, result?: Cartographic): Cartographic; cartographicToDbFromGcs(cartographic: Cartographic[]): Promise<Point3d[]>; cartographicToDbFromWgs84Gcs(cartographic: Cartographic[]): Promise<Point3d[]>; cartographicToDb(cartographic: Cartographic, result?: Point3d): Point3d; getEarthEllipsoid(radiusOffset?: number): Ellipsoid; getPlane(offset?: number): Plane3dByOriginAndUnitNormal; getRayIntersection(ray: Ray3d, positiveOnly: boolean): Ray3d | undefined; getPointHeight(point: Point3d): number | undefined; /** @internal */ getFrustumIntersectionDepthRange(frustum: Frustum, bimRange: Range3d, heightRange?: Range1d, gridPlane?: Plane3dByOriginAndUnitNormal, doGlobalScope?: boolean): Range1d; addFrustumDecorations(builder: GraphicBuilder, frustum: Frustum): void; } /** Calculate the ECEF to database (IModel) coordinate transform at a provided location, using the GCS of the iModel. * The transform will exactly represent the GCS at the provided location. * @public */ export declare function calculateEcefToDbTransformAtLocation(originIn: Point3d, iModel: IModelConnection): Promise<Transform | undefined>; //# sourceMappingURL=BackgroundMapGeometry.d.ts.map