237 lines
4.5 KiB
TypeScript
237 lines
4.5 KiB
TypeScript
import { MDOptions } from './map.class';
|
||
export type layerType =
|
||
| 'markers'
|
||
| 'tiledMap'
|
||
| 'tiledMapQuery'
|
||
| 'geoJson'
|
||
| 'arcgisFeature'
|
||
| 'dynamicMapLayer'
|
||
| 'arcgisMap'
|
||
| 'label'
|
||
| 'vector';
|
||
export type layerOption = {
|
||
opacity?: number;
|
||
data?: Array<any>;
|
||
zIndex?: number;
|
||
clickEvent?: Function;
|
||
hoverEvent?: Function;
|
||
legendImages?: Array<any> | null | undefined;
|
||
geoJsonLegend?: Array<any> | null | undefined;
|
||
tiledMapType?: undefined | 'superMap';
|
||
};
|
||
|
||
export interface layer {
|
||
id: string;
|
||
key: string;
|
||
_layer?: any;
|
||
type?: layerType;
|
||
url?: string;
|
||
url_3d?: string;
|
||
geojson_url: string;
|
||
label?: string;
|
||
thumbnail?: string;
|
||
visible?: boolean;
|
||
option?: layerOption;
|
||
tempobj?: any;
|
||
layers?: any;
|
||
rasteropacity?: any;
|
||
imgUrl?: any;
|
||
minZoom?: any;
|
||
maxZoom?: any;
|
||
minHeight?: number;
|
||
maxHeight?: number;
|
||
/** layer 类型 */
|
||
layerType?: string;
|
||
matrixIds_index?: string[];
|
||
tileMatrixSetID?: string;
|
||
urlType: string;
|
||
}
|
||
|
||
export interface MapInterface {
|
||
/**
|
||
* 地图初始化
|
||
* @param container DOM容器
|
||
* @return any 地图视图
|
||
*/
|
||
init(
|
||
container: HTMLElement,
|
||
rectangle?: any,
|
||
center?: any,
|
||
altitude?: number,
|
||
bearing?: number
|
||
): Promise<any>;
|
||
|
||
/**
|
||
* 初始化加载描点数据
|
||
* @param pointData
|
||
* @param layerType
|
||
*/
|
||
addInitDataLayer(
|
||
pointData: any[],
|
||
layerType: any,
|
||
mdoptions: MDOptions
|
||
): void;
|
||
|
||
/**
|
||
* 初始化弹窗
|
||
* @param popupContainer
|
||
*/
|
||
initPopupOverlay(popupContainer: HTMLDivElement): void;
|
||
|
||
/**
|
||
* 初始化加载基础图层
|
||
* @param layer
|
||
*/
|
||
addBaseDataLayer(layer: any, isShow: boolean): void;
|
||
|
||
/**
|
||
* 切换底图
|
||
* @param layer
|
||
*/
|
||
baseLayerSwitcher(key: string, checked: boolean): void;
|
||
|
||
/**
|
||
* 切换2D或者3D视图
|
||
* @param type '2D' | '3D'
|
||
*/
|
||
switchView(type: '2D' | '3D'): any | null;
|
||
|
||
/**
|
||
* 缩放
|
||
* out 缩小
|
||
* in 放大
|
||
*/
|
||
zoomToggle(type: 'out' | 'in'): void;
|
||
|
||
/**
|
||
* 检查图层是否存在
|
||
* @param layerKey 图层 key
|
||
* @returns 是否存在
|
||
*/
|
||
hasLayer(layerKey: string): void;
|
||
/**
|
||
* 地图输出打印
|
||
*/
|
||
mapOutPut(): void;
|
||
|
||
//飞行到指定的点
|
||
fitBounds(bbox, bearing): void;
|
||
|
||
flyTopanto(positon, zoom): void;
|
||
// /**
|
||
// * 加载倾斜摄影数据
|
||
// * @param HH3DUrlArray
|
||
// */
|
||
// addQxsyLayer(HH3DUrlArray: siteItem): void
|
||
|
||
// /**
|
||
// * 移除倾斜摄影数据
|
||
// * @param HH3DUrlArray
|
||
// */
|
||
// removeQxsyLayer(HH3DUrlArray: siteItem): void
|
||
|
||
// /**
|
||
// * 倾斜摄影定位
|
||
// * @param HH3DUrlArray
|
||
// */
|
||
// qxsyToPosition(HH3DUrlArray: siteItem): void
|
||
|
||
// /**
|
||
// * 倾斜摄影裁剪
|
||
// * @param HH3DUrlArray
|
||
// */
|
||
// qxsyClipBoundary(HH3DUrlArray: siteItem): void
|
||
|
||
// /**
|
||
// * 移除倾斜摄影裁剪
|
||
// * @param HH3DUrlArray
|
||
// */
|
||
// removeQxsyClipBoundary(HH3DUrlArray: siteItem): void
|
||
|
||
/**
|
||
* 基地面板控制
|
||
* @param baseid
|
||
* @param isAll
|
||
*/
|
||
jdPanelControlShowAndHidden(baseid: string, isAll: boolean): void;
|
||
/**
|
||
* 图例和基地面板控制描点数据显示隐藏方法
|
||
* @param layerType
|
||
* @param key
|
||
* @param checked
|
||
* @param isAll
|
||
*/
|
||
mdLayerShowOrHidden(
|
||
layerType: string,
|
||
baseid: string,
|
||
key?: string,
|
||
checked?: boolean,
|
||
isAll?: boolean
|
||
): void;
|
||
|
||
/**
|
||
* 基础图层显示影隐藏方法
|
||
* @param layerType
|
||
* @param checked
|
||
*/
|
||
controlBaseLayerTreeShowAndHidden(
|
||
layerType: string,
|
||
key: string,
|
||
checked: boolean
|
||
): void;
|
||
|
||
/**
|
||
* 图层树控制描点数据显示隐藏方法
|
||
* @param layerType
|
||
* @param checked
|
||
*/
|
||
mdLayerTreeShowOrHidden(layerType: string, checked?: boolean): void;
|
||
|
||
/**
|
||
* 根据 anchoPointState 控制单个图例的锚点显示隐藏
|
||
* @param layerKey 图层 key
|
||
* @param anchoPointState 锚点状态(对应图例的 nameEn)
|
||
* @param checked 是否显示
|
||
*/
|
||
setLegendPointVisible(
|
||
layerKey: string,
|
||
anchoPointState: string,
|
||
checked: boolean
|
||
): void;
|
||
|
||
/**
|
||
* 长度量算
|
||
*/
|
||
lengthCalculate(): void;
|
||
/**
|
||
* 面积量算
|
||
*/
|
||
areCalculate(): void;
|
||
|
||
/**
|
||
* 移除量算结果
|
||
*/
|
||
removeQueryLayer(): void;
|
||
/**
|
||
* 添加梯级流域图
|
||
* @param layer
|
||
* @param fillcolor
|
||
*/
|
||
addTertiarybasinLayer(
|
||
layer: layer,
|
||
fillcolor: any,
|
||
outlineColor: any,
|
||
datas: any
|
||
): void;
|
||
|
||
/**
|
||
* 移除梯级流域图
|
||
* @param layer
|
||
*/
|
||
removeTertiarybasinLayer(layer: layer): void;
|
||
/**
|
||
* 移除地图对象
|
||
*/
|
||
destroy(): void;
|
||
}
|