UNPKG

@itwin/core-frontend

Version:
83 lines 4.46 kB
/** @packageDocumentation * @module Tiles */ import { GuidString } from "@itwin/core-bentley"; import { RealityData, RealityDataSourceKey, RealityDataSourceProps } from "@itwin/core-common"; import { PublisherProductInfo, RealityDataSource, SpatialLocationAndExtents } from "../RealityDataSource"; /** This class provides access to the reality data provider services. * It encapsulates access to a reality data from the Google Photorealistic 3D Tiles service. * A valid Google 3D Tiles authentication key must be configured for this provider to work (provide the key in the [[RealityDataSourceGoogle3dTilesImpl.createFromKey]] method). * @internal */ export declare class RealityDataSourceGoogle3dTilesImpl implements RealityDataSource { readonly key: RealityDataSourceKey; /** The URL that supplies the 3d tiles for displaying the Google 3D Tiles tileset. */ private _tilesetUrl; /** Base URL of the Google 3D Tiles tileset. Does not include trailing subdirectories. */ private _baseUrl; /** Search parameters that must be passed down to child tile requests. */ private _searchParams?; /** Google Map Tiles API Key used to access Google 3D Tiles. */ private _apiKey?; /** Function that returns an OAuth token for authenticating with GP3sDT. This token is expected to not contain the "Bearer" prefix. */ private _getAuthToken?; /** This is necessary for Google 3D Tiles tilesets! This tells the iTwin.js tiling system to use the geometric error specified in the tileset rather than any of our own. */ readonly usesGeometricError = true; readonly maximumScreenSpaceError = 16; /** Construct a new reality data source. * @param props JSON representation of the reality data source */ protected constructor(props: RealityDataSourceProps, apiKey: string | undefined, _getAuthToken?: () => Promise<string | undefined>); /** * Create an instance of this class from a source key and iTwin context. */ static createFromKey(sourceKey: RealityDataSourceKey, _iTwinId: GuidString | undefined, apiKey: string | undefined, _getAuthToken?: () => Promise<string | undefined>): Promise<RealityDataSource | undefined>; get isContextShare(): boolean; /** * Returns Reality Data if available */ get realityData(): RealityData | undefined; get realityDataId(): string | undefined; /** * Returns Reality Data type if available */ get realityDataType(): string | undefined; getTilesetUrl(): string | undefined; /** Return the URL of the Google 3D Tiles tileset with its API key included. */ private getTilesetUrlWithKey; protected setBaseUrl(url: string): void; /** * This method returns the URL to access the actual 3d tiles from the service provider. * @returns string containing the URL to reality data. */ getServiceUrl(_iTwinId: GuidString | undefined): Promise<string | undefined>; getRootDocument(_iTwinId: GuidString | undefined): Promise<any>; /** Returns the tile URL relative to the base URL. * If the tile path is a relative URL, the base URL is prepended to it. * For both absolute and relative tile path URLs, the search parameters are checked. If the search params are empty, the base URL's search params are appended to the tile path. */ getTileUrl(tilePath: string): string; /** * Returns the tile content. The path to the tile is relative to the base url of present reality data whatever the type. */ getTileContent(name: string): Promise<ArrayBuffer>; /** * Returns the tile content in json format. The path to the tile is relative to the base url of present reality data whatever the type. */ getTileJson(name: string): Promise<any>; getTileContentType(url: string): "tile" | "tileset"; /** * Gets spatial location and extents of this reality data source * @returns spatial location and extents * @internal */ getSpatialLocationAndExtents(): Promise<SpatialLocationAndExtents | undefined>; /** * Gets information to identify the product and engine that create this reality data * Will return undefined if cannot be resolved * @returns information to identify the product and engine that create this reality data * @alpha */ getPublisherProductInfo(): Promise<PublisherProductInfo | undefined>; } //# sourceMappingURL=RealityDataSourceGoogle3dTilesImpl.d.ts.map