2026-05-13 08:44:35 +08:00
|
|
|
import { MDOptions } from './map.class';
|
2026-04-03 16:04:16 +08:00
|
|
|
export type layerType =
|
2026-05-13 08:44:35 +08:00
|
|
|
| 'markers'
|
|
|
|
|
| 'tiledMap'
|
|
|
|
|
| 'tiledMapQuery'
|
|
|
|
|
| 'geoJson'
|
|
|
|
|
| 'arcgisFeature'
|
|
|
|
|
| 'dynamicMapLayer'
|
|
|
|
|
| 'arcgisMap'
|
|
|
|
|
| 'label'
|
|
|
|
|
| 'vector';
|
2026-04-03 16:04:16 +08:00
|
|
|
export type layerOption = {
|
|
|
|
|
opacity?: number;
|
|
|
|
|
data?: Array<any>;
|
|
|
|
|
zIndex?: number;
|
|
|
|
|
clickEvent?: Function;
|
|
|
|
|
hoverEvent?: Function;
|
|
|
|
|
legendImages?: Array<any> | null | undefined;
|
|
|
|
|
geoJsonLegend?: Array<any> | null | undefined;
|
2026-05-13 08:44:35 +08:00
|
|
|
tiledMapType?: undefined | 'superMap';
|
2026-04-03 16:04:16 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export interface layer {
|
2026-05-13 08:44:35 +08:00
|
|
|
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;
|
2026-04-03 16:04:16 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface MapInterface {
|
2026-05-13 08:44:35 +08:00
|
|
|
/**
|
|
|
|
|
* 地图初始化
|
|
|
|
|
* @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 layer
|
|
|
|
|
*/
|
|
|
|
|
addBaseDataLayer(layer: any): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 切换底图
|
|
|
|
|
* @param layer
|
|
|
|
|
*/
|
|
|
|
|
baseLayerSwitcher(key: string): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 切换2D或者3D视图
|
|
|
|
|
* @param type '2D' | '3D'
|
|
|
|
|
*/
|
|
|
|
|
switchView(type: '2D' | '3D'): any | null;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 缩放
|
|
|
|
|
* out 缩小
|
|
|
|
|
* in 放大
|
|
|
|
|
*/
|
|
|
|
|
zoomToggle(type: 'out' | 'in'): 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(): void;
|
|
|
|
|
// layerType: String, key?: String, baseid: String, checked: boolean, isAll: boolean
|
|
|
|
|
/**
|
|
|
|
|
* 基础图层显示影隐藏方法
|
|
|
|
|
* @param layerType
|
|
|
|
|
* @param checked
|
|
|
|
|
*/
|
|
|
|
|
controlBaseLayerTreeShowAndHidden(
|
|
|
|
|
layerType: String,
|
|
|
|
|
key: String,
|
|
|
|
|
checked: boolean
|
|
|
|
|
): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 图层树控制描点数据显示隐藏方法
|
|
|
|
|
* @param layerType
|
|
|
|
|
* @param checked
|
|
|
|
|
*/
|
|
|
|
|
mdLayerTreeShowOrHidden(layerType: 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;
|
2026-04-03 16:04:16 +08:00
|
|
|
}
|