gisviewer-vue3-arcgis
Version:
在应用中引入私服的包, 项目根目录下 新建文件 .npmrc 在 .npmrc 中对包源进行配置:
78 lines (77 loc) • 2.72 kB
TypeScript
import { default as OlMap } from 'ol/Map';
import { ILayerVisibleParams, IMapInitializerParams, IResult, ISetMapCameraParams, ISetMapCenterParams, IStartGetClickCoordinatesParams } from '../../types';
declare type FeatureClickListener = (type: string, id: string, detail: any, event?: any) => void;
interface IClickSubscriptionOptions {
triggerOnBlankClick?: boolean;
}
export default class OlMapInitializer {
private mapConfig;
private map;
private mapView;
private pointerMoveRaf;
private isCursorCrosshair;
/** getClickCoordinates 坐标回调 */
private coordinateClickCallback;
/** 外部点击回调 */
private markerClick;
/** 地图点击回调(点击要素或空白处都会触发) */
private mapClick;
/** 内部订阅回调列表 */
private clickListeners;
subscribeClick(listener: FeatureClickListener, options?: IClickSubscriptionOptions): () => void;
/** 统一派发给所有监听者 */
private emitFeatureClick;
/** 点击地图空白处时,仅派发给需要此事件的监听者 */
private emitBlankClick;
initialize(params: IMapInitializerParams): OlMap;
private processUrl;
private getRendererSymbol;
private loadLayers;
private createMap;
/**
* 查询 ImageWMS 图层的要素信息
* @param evt 点击事件
*/
private queryImageWMSFeatureInfo;
/**
* 设置地图中心点和缩放级别
* @param params
* @returns
*/
setMapCenter(params: ISetMapCenterParams): Promise<IResult>;
/**
* 解析 ArcGIS API geometry 格式
* @param target ArcGIS geometry 对象
* @returns 中心点和范围
*/
private parseArcGISGeometry;
/**
* 从 paths 或 rings 坐标数组计算 extent
* @param coordinateArrays paths 或 rings 数组,格式为 [[[x, y], [x, y], ...], ...]
* @returns [xmin, ymin, xmax, ymax] 或 null
*/
private calculateExtentFromCoordinates;
/**
* 从 points 坐标数组计算 extent(用于 Multipoint)
* @param points 点数组,格式为 [[x, y], [x, y], ...]
* @returns [xmin, ymin, xmax, ymax] 或 null
*/
private calculateExtentFromPoints;
setMapZoom(params: {
zoom: number;
}): IResult;
/**
* 设置地图预存的相机视图
* @param params
* @returns
*/
setMapCamera(params: ISetMapCameraParams): Promise<IResult>;
setLayerVisibility(params: ILayerVisibleParams): Promise<IResult>;
/**
* 注册地图点击事件,并返回取消注册的函数
* @param params
* @returns
*/
getClickCoordinates(params: IStartGetClickCoordinatesParams): () => void;
}
export {};