/** * @author: xd * @Date: 2021-12-28 20:51:21 * @LastEditors: xd * @LastEditTime: 2023-06-05 19:58:10 * @Description: 功能 */ import { Feature, Map } from "ol"; import { GraphicImageLayer } from "./graphicLayer/GraphicImageLayer"; import { baseLayer } from "./../base/baseLayer"; import { OverviewMap } from "ol/control"; import { XMeasure } from "../Tools/measure"; import { crsType } from "../Enum/typeEnum"; import { baseMap } from "../base/baseMap"; import { IMapViewOption } from "../base/baseOptionType"; import { FitOptions } from "ol/View"; import { Extent } from "ol/extent"; import { Geometry, SimpleGeometry } from "ol/geom"; import * as mapControls from "../extend/Control"; import { SelectTransform } from "../extend/interaction/SelectTransform"; import { proj } from "../proj4/proj"; import { CrossStars } from "../extend/Control/CrossStars"; export declare class MirageMap extends baseMap { private _mapOption; private _layerArray; private _view; private _popupDiv; private _popupContent; private _popupCloser; private _popup; baseLayer: Array; private _draw; GraphicLayer: GraphicImageLayer | undefined; MeasureLayer: XMeasure | undefined; overviewMapControl: OverviewMap | undefined; private _tooltip; private _tooltipcontent; private _tooltipElement; private _select; private _select2; private option; controls: { locationbar: mapControls.Locationbar; baseLayerSwitch: mapControls.baseLayerSwitch; swipe: mapControls.swipeControl; selectTransform: SelectTransform; CrossStars: CrossStars; }; Proj: proj; private splitInteraction; private _multiWindow; private highFeature; constructor(mapID: string, option: any); private _addTipElement; /** * 初始化地图 * @param {string} mapID */ init(mapID: string): void; /** * 打开卷帘 * @param {object} layer - 配置项对象 */ openSplitInteraction(layer: any): void; /** * 关闭卷帘 */ closeSplitInteraction(): void; /** * 显示网格 */ showGridkInfo(): void; /** * 显示网格 * @param {object} option - 配置项对象 * @param {string} option.lineColor - 线颜色 * @param {number} option.size - 网格大小 */ showGrid(option: { lineColor: "rgba(0, 0, 0, 1)"; size: 50; }): void; /** * 显示鹰眼 * @param { string | HTMLElement} target 承载元素 * @param {string} layername option所包含的图层名称 */ showOverView(target: string | HTMLElement, layername?: string): void; bindmenu(): void; bindContextmenu(menu?: any): void; appendContextmenu(menu: any): void; scaleControl(scaleType: any): any; /** * 设置背景图显示/隐藏 * @param {boolean} isshow */ setZoomControlVisible(isshow?: boolean): void; /** * 设置背景图显示/隐藏 * @param {boolean} isshow */ setBaseLayerVisible(isshow?: boolean): void; /** * 更新基础图层 * @param {string} layername -图层名称 * @param {object} maskOption -配置项 * @param {string} maskOption.feature -图形 * @param {string} maskOption.wrapX -wrapX * @param {string} maskOption.inner -inner * @param {string} maskOption.color -color */ setBaseLayer(layername: any, maskOption?: { feature: Feature; wrapX?: boolean; inner?: boolean; color?: string; }): void; getMap(): Map; /** * 获取已加载所有图层 * @returns {baseLayer[]} -图层数组 */ getLayers(): baseLayer[]; /** * 获取原始图层 * @param {string} layerid * @returns {any} layer */ getLayer(layerid: string): any; /** * 获取配置的底图数组 * @returns {any} layer */ getBasemaps(): any; /** * 获取用户定义的图层 * @param {string} layerid * @returns {baseLayer} layer */ getUserLayer(layerid: string): any; getTileLayer(): any[]; /** * 获取基础图层 * @param {string} layername * @returns {any} 返回一个系统基础图层 */ private getBaseLayer; addLayer(layer: any): void; removeLayer(layerid: any): void; /** * : 设置经纬度中心点 * @param {number[]} lnglat 坐标数组 * @param {number} zoom 级别 * @param {boolean} flash 是否闪烁 */ setCenterBy4326(lnglat: number[], zoom?: number, flash?: boolean): void; /** * : 设置中心点,默认3857坐标 * @param {number[]} lnglat 坐标数组 * @param {number} zoom 级别 * @param {crsType} dataWkID 坐标wkid * @param {boolean} flash 是否闪烁 */ setCenter(lnglat: number[], zoom?: number, dataWkID?: crsType, flash?: boolean): void; /** * : 获取当前视窗中心及级别 * @returns {any} {center,level} */ getView(): { center: import("ol/coordinate").Coordinate; level: number; }; /** * : 获取当前视窗四角范围 * @returns {Extent} {x1,y1,x2,y2} */ getExtent(): Extent; /** * : 显示闪烁点 * @param {number[]} coordinate 坐标数组 */ showflashPoint(coordinate: number[]): void; /** * : 视角定位动画,默认当前定位后放大1级 * @param {number[]} coordinate 坐标数组 * @param {number} duration 过程时间 * @param {number[]} zoomIn */ lookToAnimate(coordinate: number[], duration?: number, zoomIn?: number): void; /** * 定位到经纬度 * @param {object} option - 配置项 * @param {number[]} option.location - 经纬度[] * @param {number} option.firstzoom - 初始zoom * @param {number} option.tozoom - 目标zoom * @param {number} option.duration1 - 拉高时间 * @param {number} option.duration2 - 平移时间 * @param {number} option.duration3 - 降落时间 * @param {Function} option.callback -Function 完成后回调 */ flyToLnglat(option: { location: number[]; firstzoom?: number; tozoom: number; duration1?: number; duration2?: number; duration3?: number; callback?: Function; }): any; /** * 定位到经纬度 * @param {object} option - 配置项 * @param {number[] | Geometry | Feature} option.location - 经纬度[]或 Geometry | Feature, * @param {number} option.firstzoom - 初始zoom, * @param {number} option.tozoom - 目标zoom, * @param {number} option.duration1 - 拉高时间, * @param {number} option.duration2 - 平移时间, * @param {number} option.duration3 - 降落时间, * @param {Function} option.callback - Function 完成后回调 */ flyTo(option: { location: number[] | Geometry | Feature; firstzoom?: number; tozoom: number; duration1?: number; duration2?: number; duration3?: number; callback?: Function; }): void; /** * : 定位到范围或图形 * @param {Extent | SimpleGeometry} geometryOrExtent * @param {FitOptions} opt_options * @example {FitOptions} opt_options * { size?: import("./size.js").Size | undefined; padding?: number[] | undefined; nearest?: boolean | undefined; minResolution?: number | undefined; maxZoom?: number | undefined; duration?: number | undefined; easing?: (arg0: number) => number; callback?: (arg0: boolean) => void; } */ fit(geometryOrExtent: Extent | SimpleGeometry, opt_options: FitOptions): void; /** * 获取地图鼠标点击 * @param {any} evt * @returns {any} */ displayFeatureInfo(evt: any): void; /** * : 根据选择器导出图片 * @param {string} querySelector * @param {Function} callbackCanvas 返回Canvas 不传值则返回图片下载 * @param {Function} errinfo 返回错误信息 */ exportMapSelector(querySelector?: string, callbackCanvas?: Function, errinfo?: Function): void; /** * : 导出图片 * @param {string} type "png" * @param {Function} errinfo * @returns {*} */ exportMap(type: string, errinfo?: Function): void; exportMapPdf(): void; /** * : 开关选择器状态 * @param {boolean} val */ setSelectState(val: boolean): void; /** * : 设置鼠标图标,支持cur,svg,文本 * @param {string} val */ setMapCursor(val: string): void; /** * : 设置地图旋转 * @param {number} val 角度值 */ setRotation(val: number): void; /** * : 显示/隐藏基础底图 * @param {boolean} enabled */ showBaseMap(enabled: boolean): void; /** * : 显示多窗口,options参数数量决定窗口数量 * @param {object} options * @ {string | HTMLElement} options.target 承载div的id * @ {string } options.baselayer 底图名,默认当前底图 * @ {any} options.overLayer 覆盖层,tilelayer * @ {boolean} options.syncGraphicLayer 是否同步矢量层 */ showMultiWindow(options: IMapViewOption[]): void; /** * :隐藏多窗口,仅做地图关联销毁,不处理样式及div销毁 */ hideMultiWindow(): void; /** * 设置地图参数 * @param {string} key * @param {string} val */ setOptions(key: string, val: any): void; destroy(): void; }