@itwin/core-frontend
Version:
iTwin.js frontend components
92 lines • 4.27 kB
TypeScript
/** @packageDocumentation
* @module Tiles
*/
import { Cartographic, ImageMapLayerSettings, ImageSource } from "@itwin/core-common";
import { ArcGISImageryProvider, ImageryMapTileTree, MapFeatureInfoOptions, MapLayerFeatureInfo, QuadId } from "../../../../tile/internal";
import { Range2dProps, XYProps } from "@itwin/core-geometry";
import { HitDetail } from "../../../../HitDetail";
import { ScreenViewport } from "../../../../Viewport";
/** @internal */
export interface ArcGISIdentifyImageDisplayProps {
width: number;
height: number;
dpi: number;
}
/** @internal */
export interface ArcGISIdentifyLayersProps {
prefix: "top" | "visible" | "all";
layerIds?: string[];
}
/** @internal */
export interface ArcGISIdentifyRequestUrlProps {
/** The geometry to identify on. Point only support */
geometry: XYProps;
/** The type of geometry specified by the geometry parameter. Point only support */
geometryType: "esriGeometryPoint";
/** The well-known ID of the spatial reference of the input and output geometries as well as the mapExtent. */
sr?: number;
/** The layers to perform the identify operation on. The default value is top.
* Format: [top | visible | all]:layerId1,layerId2
*/
layers?: ArcGISIdentifyLayersProps;
/** The distance in screen pixels from the specified geometry within which the identify operation should be performed.
* The value for the tolerance is an integer.
*/
tolerance: number;
/** The extent or bounding box of the map currently being viewed.
* Format: <xmin>, <ymin>, <xmax>, <ymax>
*/
mapExtent: Range2dProps;
/** The screen image display parameters (width, height, and DPI) of the map being currently viewed. T
* Format: <width>,<height>,<dpi>
*/
imageDisplay: ArcGISIdentifyImageDisplayProps;
/** If true, the result set will include the geometries associated with each result. The default is true.
*/
returnGeometry?: boolean;
/** This option can be used to specify the maximum allowable offset to be used for generalizing geometries returned by the identify operation.
* The maxAllowableOffset is in the units of the sr.
*/
maxAllowableOffset?: number;
/** The response format. The default response format is html.
*/
f?: "json" | "html";
}
/** @internal */
export declare class ArcGISIdentifyRequestUrl {
static fromJSON(baseUrl: URL | string, json: ArcGISIdentifyRequestUrlProps, srFractionDigits?: number): URL;
static toFixed(value: number, srFractionDigits?: number): string;
static getExtentString(range: Range2dProps, srFractionDigits?: number): string;
}
/** @internal */
export declare class ArcGISMapLayerImageryProvider extends ArcGISImageryProvider {
private _maxDepthFromLod;
private _minDepthFromLod;
private _copyrightText;
private _tileMapSupported;
private _mapSupported;
private _tilesOnly;
private _tileMap;
serviceJson: any;
constructor(settings: ImageMapLayerSettings);
protected get _filterByCartoRange(): boolean;
get minimumZoomLevel(): number;
get maximumZoomLevel(): number;
uintToString(uintArray: any): {
type: "Buffer";
data: number[];
};
private fetchTile;
loadTile(row: number, column: number, zoomLevel: number): Promise<ImageSource | undefined>;
protected _generateChildIds(quadId: QuadId, resolveChildren: (childIds: QuadId[]) => void): void;
initialize(): Promise<void>;
/** @deprecated in 5.0 - will not be removed until after 2026-06-13. Use [addAttributions] instead. */
addLogoCards(cards: HTMLTableElement): void;
addAttributions(cards: HTMLTableElement, _vp: ScreenViewport): Promise<void>;
private getIdentifyData;
getToolTip(strings: string[], quadId: QuadId, carto: Cartographic, tree: ImageryMapTileTree): Promise<void>;
getFeatureInfo(featureInfos: MapLayerFeatureInfo[], quadId: QuadId, carto: Cartographic, _tree: ImageryMapTileTree, hit: HitDetail, options?: MapFeatureInfoOptions): Promise<void>;
protected getLayerString(prefix?: string): string;
constructUrl(row: number, column: number, zoomLevel: number): Promise<string>;
}
//# sourceMappingURL=ArcGISMapLayerImageryProvider.d.ts.map