@tianditu/core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +68 -0
- package/dist/index.d.mts +662 -0
- package/dist/index.mjs +1617 -0
- package/package.json +53 -0
- package/types/base.d.ts +97 -0
- package/types/control/control.d.ts +55 -0
- package/types/control/copyright.d.ts +30 -0
- package/types/control/index.d.ts +6 -0
- package/types/control/mapType.d.ts +63 -0
- package/types/control/overviewMap.d.ts +64 -0
- package/types/control/scale.d.ts +17 -0
- package/types/control/zoom.d.ts +24 -0
- package/types/global.d.mts +2 -0
- package/types/index.d.ts +19 -0
- package/types/layer/gridlineLayer.d.ts +33 -0
- package/types/layer/index.d.ts +4 -0
- package/types/layer/tdt.d.ts +14 -0
- package/types/layer/tileLayer.d.ts +78 -0
- package/types/layer/wms.d.ts +24 -0
- package/types/map.d.ts +290 -0
- package/types/militarySymbols/base.d.ts +71 -0
- package/types/militarySymbols/control.d.ts +24 -0
- package/types/militarySymbols/entities.d.ts +547 -0
- package/types/militarySymbols/index.d.ts +4 -0
- package/types/militarySymbols/tools.d.ts +191 -0
- package/types/modular.d.ts +258 -0
- package/types/mousetool/circleTool.d.ts +32 -0
- package/types/mousetool/coordinatePickup.d.ts +28 -0
- package/types/mousetool/index.d.ts +8 -0
- package/types/mousetool/markTool.d.ts +40 -0
- package/types/mousetool/mousetool.d.ts +28 -0
- package/types/mousetool/paintBrushTool.d.ts +23 -0
- package/types/mousetool/polygonTool.d.ts +47 -0
- package/types/mousetool/polylineTool.d.ts +47 -0
- package/types/mousetool/rectangleTool.d.ts +28 -0
- package/types/overlay/circle.d.ts +67 -0
- package/types/overlay/cloudMarkerCollection.d.ts +50 -0
- package/types/overlay/contextMenu.d.ts +75 -0
- package/types/overlay/icon.d.ts +33 -0
- package/types/overlay/index.d.ts +13 -0
- package/types/overlay/infowindow.d.ts +59 -0
- package/types/overlay/label.d.ts +53 -0
- package/types/overlay/marker.d.ts +50 -0
- package/types/overlay/markerClusterer.d.ts +103 -0
- package/types/overlay/overlay.d.ts +109 -0
- package/types/overlay/polygon.d.ts +59 -0
- package/types/overlay/polyline.d.ts +47 -0
- package/types/overlay/rectangle.d.ts +57 -0
- package/types/overlay/svg.d.ts +19 -0
- package/types/service/administrativeDivision.d.ts +48 -0
- package/types/service/busLineSearch.d.ts +89 -0
- package/types/service/dataSources.d.ts +30 -0
- package/types/service/drivingRoute.d.ts +135 -0
- package/types/service/geocoder.d.ts +47 -0
- package/types/service/geolocation.d.ts +39 -0
- package/types/service/index.d.ts +9 -0
- package/types/service/localCity.d.ts +24 -0
- package/types/service/localSearch.d.ts +178 -0
- package/types/service/transitRoute.d.ts +132 -0
package/package.json
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@tianditu/core",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Headless core for tianditu — idempotent SDK loader, map session, and lifecycle orchestration shared by every framework adapter, with a component definition layer for Vue and Web Components",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"core",
|
|
7
|
+
"framework-agnostic",
|
|
8
|
+
"gis",
|
|
9
|
+
"headless",
|
|
10
|
+
"lbs",
|
|
11
|
+
"map",
|
|
12
|
+
"overlay",
|
|
13
|
+
"sdk-loader",
|
|
14
|
+
"tianditu",
|
|
15
|
+
"typescript"
|
|
16
|
+
],
|
|
17
|
+
"homepage": "https://github.com/DemoMacro/tianditu#readme",
|
|
18
|
+
"bugs": {
|
|
19
|
+
"url": "https://github.com/DemoMacro/tianditu/issues"
|
|
20
|
+
},
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"author": {
|
|
23
|
+
"name": "Demo Macro",
|
|
24
|
+
"email": "abc@imst.xyz",
|
|
25
|
+
"url": "https://www.demomacro.com/"
|
|
26
|
+
},
|
|
27
|
+
"repository": {
|
|
28
|
+
"type": "git",
|
|
29
|
+
"url": "git+https://github.com/DemoMacro/tianditu.git"
|
|
30
|
+
},
|
|
31
|
+
"files": [
|
|
32
|
+
"dist",
|
|
33
|
+
"types"
|
|
34
|
+
],
|
|
35
|
+
"main": "dist/index.mjs",
|
|
36
|
+
"types": "dist/index.d.mts",
|
|
37
|
+
"exports": {
|
|
38
|
+
".": {
|
|
39
|
+
"types": "./dist/index.d.mts",
|
|
40
|
+
"default": "./dist/index.mjs"
|
|
41
|
+
},
|
|
42
|
+
"./modular": {
|
|
43
|
+
"types": "./types/modular.d.ts"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"dependencies": {
|
|
47
|
+
"@vue/reactivity": "3.4.37"
|
|
48
|
+
},
|
|
49
|
+
"devDependencies": {},
|
|
50
|
+
"scripts": {
|
|
51
|
+
"build": "vp pack && node ./scripts/inject-types.mjs"
|
|
52
|
+
}
|
|
53
|
+
}
|
package/types/base.d.ts
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
class LngLat {
|
|
6
|
+
/**
|
|
7
|
+
* 根据给定经度和纬度创建地理位置坐标点
|
|
8
|
+
* @param lng 地理经度
|
|
9
|
+
* @param lat 地理纬度
|
|
10
|
+
*/
|
|
11
|
+
constructor(lng: number, lat: number);
|
|
12
|
+
/** 经度 */
|
|
13
|
+
lng: number;
|
|
14
|
+
/** 纬度 */
|
|
15
|
+
lat: number;
|
|
16
|
+
/** 获取地理坐标点的经度 */
|
|
17
|
+
getLng(): number;
|
|
18
|
+
/** 获取地理坐标点的经度 */
|
|
19
|
+
getLat(): number;
|
|
20
|
+
/** 计算当前地理坐标点与给定坐标点之间的距离 */
|
|
21
|
+
distanceTo(lnglat: LngLat): number;
|
|
22
|
+
/** 判断坐标点是否相等,当且仅当两点的经度和纬度均相等时返回true */
|
|
23
|
+
equals(other: LngLat): boolean;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
class LngLatBounds {
|
|
27
|
+
/**
|
|
28
|
+
* 根据给定的多个地理位置坐标点创建矩形
|
|
29
|
+
* @param sw 矩形区域的西南角
|
|
30
|
+
* @param ne 矩形区域的东北角
|
|
31
|
+
*/
|
|
32
|
+
constructor(sw: LngLat, ne: LngLat);
|
|
33
|
+
/** 返回西南点坐标 */
|
|
34
|
+
getSouthWest(): LngLat;
|
|
35
|
+
/** 返回东北点坐标 */
|
|
36
|
+
getNorthEast(): LngLat;
|
|
37
|
+
/** 返回边界的中心点 */
|
|
38
|
+
getCenter(): LngLat;
|
|
39
|
+
/** 放大此矩形,使其包含给定的点 */
|
|
40
|
+
extend(lnglat: LngLat): LngLatBounds;
|
|
41
|
+
/** 如果点的地理坐标位于此矩形内或者传入的矩形区域完全包含于此矩形区域中,则返回true */
|
|
42
|
+
contains(lnglat: LngLat | LngLatBounds): boolean;
|
|
43
|
+
/** 如果矩形与给定边界相交则返回true */
|
|
44
|
+
intersects(other: LngLatBounds): boolean;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
class Point {
|
|
48
|
+
/**
|
|
49
|
+
* 根据给定x和y坐标创建地图上的一个像素坐标点
|
|
50
|
+
* @param x 像素坐标中x坐标,x坐标向右增大
|
|
51
|
+
* @param y 像素坐标中y坐标,y坐标向下增大
|
|
52
|
+
*/
|
|
53
|
+
constructor(x: number, y: number);
|
|
54
|
+
/** x坐标 */
|
|
55
|
+
x: number;
|
|
56
|
+
/** y坐标 */
|
|
57
|
+
y: number;
|
|
58
|
+
/** 判断坐标点是否相等,当且仅当两点的x坐标和y坐标均相等时返回true */
|
|
59
|
+
equals(point: Point): boolean;
|
|
60
|
+
/**获得当前点与给定点的距离 */
|
|
61
|
+
distanceTo(point: Point): number;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
class LayerGroup {
|
|
65
|
+
/**
|
|
66
|
+
* 构建一个存储图层的容器。
|
|
67
|
+
* @param layers 叠加层数组
|
|
68
|
+
*/
|
|
69
|
+
constructor(layers: Overlay[]);
|
|
70
|
+
/** 从容器中增加一个图层 */
|
|
71
|
+
addLayer(layer: Overlay): void;
|
|
72
|
+
/** 从容器中移除一个图层 */
|
|
73
|
+
removeLayer(layer: Overlay): void;
|
|
74
|
+
/** 判断图层是否在容器中 */
|
|
75
|
+
hasLayer(layer: Overlay): boolean;
|
|
76
|
+
/** 得到容器中的所有图层 */
|
|
77
|
+
getLayers(): Overlay[];
|
|
78
|
+
/** 清除容器中的所有图层 */
|
|
79
|
+
clearLayers(): void;
|
|
80
|
+
/**设置容器z-index值 */
|
|
81
|
+
setZIndex(): void;
|
|
82
|
+
/**通过ID获取其对应的图层 */
|
|
83
|
+
getLayer(id: string): Overlay;
|
|
84
|
+
/** 获取容器中存在图层的唯一ID */
|
|
85
|
+
getLayerId(layer: Overlay): string;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
class MapType {
|
|
89
|
+
/** 创建TMapType对象实例 */
|
|
90
|
+
constructor(layers: TileLayer[], name: string);
|
|
91
|
+
/** 返回地图类型名称 */
|
|
92
|
+
getName(): string;
|
|
93
|
+
/** 返回地图类型对应的图层 */
|
|
94
|
+
getLayers(): MapType;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
/**
|
|
6
|
+
* 自定义控件基类
|
|
7
|
+
*/
|
|
8
|
+
class Control {
|
|
9
|
+
static Zoom: typeof ControlZoom;
|
|
10
|
+
static Scale: typeof ControlScale;
|
|
11
|
+
static Copyright: typeof ControlCopyright;
|
|
12
|
+
static OverviewMap: typeof ControlOverviewMap;
|
|
13
|
+
static MapType: typeof ControlMapType;
|
|
14
|
+
/** 标绘工具条(官方命名 Control.militarySymbols,末段即为小写) */
|
|
15
|
+
static militarySymbols: typeof ControlMilitarySymbols;
|
|
16
|
+
|
|
17
|
+
constructor(opts?: ControlOptions);
|
|
18
|
+
/**
|
|
19
|
+
* 设置控件的位置。参数请参见ControlPosition常量。
|
|
20
|
+
* @param position "topleft" | "topright" | "bottomleft" | "bottomright"
|
|
21
|
+
*/
|
|
22
|
+
setPosition(position: ControlPosition): void;
|
|
23
|
+
/** 返回控件的位置 */
|
|
24
|
+
getPosition(): ControlPosition;
|
|
25
|
+
/** 向地图上添加叠加物。当调用map.addControl时,API将调用此方法。自定义控件时需要实现此方法。自定义控件时需要将控件对应的HTML元素返回 */
|
|
26
|
+
onAdd(map: Map): void;
|
|
27
|
+
/** 移除控件,释放控件对象所占用的内存。自定义控件时需要实现此方法 */
|
|
28
|
+
onRemove(): void;
|
|
29
|
+
/** 返回控件所在的容器的标签 */
|
|
30
|
+
getContainer(): HTMLElement;
|
|
31
|
+
/** 显示控件 */
|
|
32
|
+
show(): void;
|
|
33
|
+
/** 隐藏控件 */
|
|
34
|
+
hide(): void;
|
|
35
|
+
/** 判断控件的可见性 */
|
|
36
|
+
isVisible(): boolean;
|
|
37
|
+
/** 设置控件停靠的偏移量 */
|
|
38
|
+
setOffset(offset: Point): void;
|
|
39
|
+
/** 返回控件停靠的偏移量 */
|
|
40
|
+
getOffset(): Point;
|
|
41
|
+
/** 对ControlOptions属性值赋值 */
|
|
42
|
+
setOptions(opt: ControlOptions): ControlOptions;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
type ControlPosition = "topleft" | "topright" | "bottomleft" | "bottomright";
|
|
46
|
+
|
|
47
|
+
interface ControlOptions {
|
|
48
|
+
/**
|
|
49
|
+
* 控件的位置。参数请参见ControlPosition常量。
|
|
50
|
+
* "topleft" | "topright" | "bottomleft" | "bottomright"
|
|
51
|
+
*/
|
|
52
|
+
position?: ControlPosition;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
/**
|
|
6
|
+
* 此类表示版权控件,您可以在地图上添加自己的版权信息。每一个版权信息需要包含如下内容:版权的唯一标识、版权内容和其适用的区域范围。
|
|
7
|
+
*/
|
|
8
|
+
class ControlCopyright extends T.Control {
|
|
9
|
+
/** 创建一个版权控件 */
|
|
10
|
+
constructor(opts?: ControlCopyrightOptions);
|
|
11
|
+
/** 添加一个版权信息 */
|
|
12
|
+
addCopyright(copyright: ControlCopyrightOptions): void;
|
|
13
|
+
/** 移除版权信息 */
|
|
14
|
+
removeCopyright(copyright: ControlCopyrightOptions): void;
|
|
15
|
+
/** 获得单个版权信息 */
|
|
16
|
+
getCopyright(id: string): ControlCopyrightOptions;
|
|
17
|
+
/** 获得版权信息列表 */
|
|
18
|
+
getCopyrightCollection(): ControlCopyright[];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
interface ControlCopyrightOptions extends T.ControlOptions {
|
|
22
|
+
/** 该版权信息的唯一标识符 */
|
|
23
|
+
id?: string;
|
|
24
|
+
/** 该版权的文本信息,用于显示在地图上,支持HTML内容 */
|
|
25
|
+
content?: string;
|
|
26
|
+
/** 该版权信息所适用的地理区域 */
|
|
27
|
+
bounds?: LngLatBounds;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
/**
|
|
6
|
+
* 负责切换地图类型的控件
|
|
7
|
+
*/
|
|
8
|
+
class ControlMapType extends T.Control {
|
|
9
|
+
/**
|
|
10
|
+
* 创建地图类型控件,opts为可选参数。
|
|
11
|
+
* @param mapTypes 控件展示的地图类型,默认为普通图、卫星图、卫星加路网混合图。通过此属性可配置控件展示的地图类型。
|
|
12
|
+
*/
|
|
13
|
+
constructor(opts?: ControlMapTypeOptions);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
type TMapTypeControlOptions = ControlMapTypeOptions;
|
|
17
|
+
|
|
18
|
+
interface ControlMapTypeOptions extends T.ControlOptions {
|
|
19
|
+
/** 控件展示的地图类型,默认为普通图、卫星图、卫星加路网混合图 */
|
|
20
|
+
mapTypes?: ControlMapTypeOptionsMapType[];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* ```
|
|
25
|
+
* [
|
|
26
|
+
* {
|
|
27
|
+
* title: "地图";
|
|
28
|
+
* icon: "http://api.tianditu.gov.cn/v4.0/image/map/maptype/vector.png";
|
|
29
|
+
* layer: TMAP_NORMAL_MAP;
|
|
30
|
+
* },
|
|
31
|
+
* {
|
|
32
|
+
* title: "卫星";
|
|
33
|
+
* icon: " http://api.tianditu.gov.cn/v4.0/image/map/maptype/satellite.png";
|
|
34
|
+
* layer: TMAP_SATELLITE_MAP;
|
|
35
|
+
* },
|
|
36
|
+
* {
|
|
37
|
+
* title: "卫星混合";
|
|
38
|
+
* icon: "http://api.tianditu.gov.cn/v4.0/image/map/maptype/satellitepoi.png";
|
|
39
|
+
* layer: TMAP_HYBRID_MAP;
|
|
40
|
+
* },
|
|
41
|
+
* {
|
|
42
|
+
* title: "地形";
|
|
43
|
+
* icon: " http://api.tianditu.gov.cn/v4.0/image/map/maptype/terrain.png";
|
|
44
|
+
* layer: TMAP_TERRAIN_MAP;
|
|
45
|
+
* },
|
|
46
|
+
* {
|
|
47
|
+
* title: "地形混合";
|
|
48
|
+
* icon: " http://api.tianditu.gov.cn/v4.0/image/map/maptype/terrainpoi.png";
|
|
49
|
+
* layer: TMAP_TERRAIN_HYBRID_MAP;
|
|
50
|
+
* }
|
|
51
|
+
* ]
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
interface ControlMapTypeOptionsMapType {
|
|
55
|
+
/** 地图控件上所要显示的图层名称 */
|
|
56
|
+
title?: string;
|
|
57
|
+
/** 地图控件上所要显示的图层图标(默认图标大小80x80) */
|
|
58
|
+
icon?: string;
|
|
59
|
+
/** 地图类型对象,即MapType */
|
|
60
|
+
layer?: MapType;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
/**
|
|
6
|
+
* 鹰眼地图控件,用来显示一个鹰眼地图, 继承自Control基类,拥有基类的所有方法。
|
|
7
|
+
*/
|
|
8
|
+
class ControlOverviewMap extends T.Control {
|
|
9
|
+
/** 创建一个鹰眼地图控件 */
|
|
10
|
+
constructor(opts?: ControlOverviewMapOptions);
|
|
11
|
+
/**
|
|
12
|
+
* 设置鹰眼地图的按钮图片,要同时设置鹰眼地图打开和关闭状态下的两张图片。
|
|
13
|
+
* @param imgOpen 鹰眼地图在打开状态下的按钮图片。
|
|
14
|
+
* @param imgClose 鹰眼地图在关闭状态下的按钮图片。
|
|
15
|
+
*/
|
|
16
|
+
setButtonImage(imgOpen: string, imgClose: string): void;
|
|
17
|
+
/** 设置鹰眼地图和主地图之间空隙的背景颜色 */
|
|
18
|
+
setBorderColor(color: string): void;
|
|
19
|
+
/** 设置鹰眼地图上的矩形框边框颜色 */
|
|
20
|
+
setRectBorderColor(color: string): void;
|
|
21
|
+
/** 设置鹰眼地图上的矩形框背景颜色 */
|
|
22
|
+
setRectBackColor(color: string): void;
|
|
23
|
+
/** 切换鹰眼地图的开-合状态 */
|
|
24
|
+
changeView(): void;
|
|
25
|
+
/** 返回该鹰眼的视图是否被打开 */
|
|
26
|
+
isOpen(): boolean;
|
|
27
|
+
/** 返回该鹰眼的地图对象 */
|
|
28
|
+
getMiniMap(): Map;
|
|
29
|
+
/** 添加事件监听函数 */
|
|
30
|
+
addEventListener<E extends keyof ControlOverviewMapEvents>(
|
|
31
|
+
event: E,
|
|
32
|
+
handler: ControlOverviewMapEvents[E],
|
|
33
|
+
): void;
|
|
34
|
+
/** 移除事件监听函数 */
|
|
35
|
+
removeEventListener<E extends keyof ControlOverviewMapEvents>(
|
|
36
|
+
event: E,
|
|
37
|
+
handler: ControlOverviewMapEvents[E],
|
|
38
|
+
): void;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
interface ControlOverviewMapOptions {
|
|
42
|
+
/** 控件的停靠位置 */
|
|
43
|
+
anchor?: T.ControlPosition;
|
|
44
|
+
/** 缩略地图控件的大小 */
|
|
45
|
+
size?: Point;
|
|
46
|
+
/** 缩略地图添加到地图后的开合状态,默认为关闭。true表示显示,false表示隐藏 */
|
|
47
|
+
isOpen?: boolean;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
interface ControlOverviewMapEvents {
|
|
51
|
+
/** 鹰眼视图控件的开合状态变化时触发事件 */
|
|
52
|
+
viewchange(e: ControlOverviewMapEvent): void;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
interface ControlOverviewMapEvent {
|
|
56
|
+
/** 事件类型 */
|
|
57
|
+
type: string;
|
|
58
|
+
/** 鹰眼地图控件对象 */
|
|
59
|
+
target: ControlOverviewMap;
|
|
60
|
+
/** 是否打开状态 */
|
|
61
|
+
isOpen: boolean;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
/**
|
|
6
|
+
* 地图比例尺控件,用来实时的显示地图的当前比例尺。
|
|
7
|
+
*/
|
|
8
|
+
class ControlScale extends T.Control {
|
|
9
|
+
/** 创建一个地图比例尺控件 */
|
|
10
|
+
constructor(opts?: ControlScaleOptions);
|
|
11
|
+
/** 设置设置比例尺控件的颜色 */
|
|
12
|
+
setColor(color: string): void;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
type ControlScaleOptions = T.ControlOptions;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
/**
|
|
6
|
+
* 地图缩放控件,可以缩放和移动地图。
|
|
7
|
+
*/
|
|
8
|
+
class ControlZoom extends T.Control {
|
|
9
|
+
/** 创建一个地图缩放控件 */
|
|
10
|
+
constructor(opts?: ControlZoomOptions);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
interface ControlZoomOptions extends T.ControlOptions {
|
|
14
|
+
/** 放大层级按钮的文字显示。default:"+" */
|
|
15
|
+
zoomInText?: string;
|
|
16
|
+
/** 缩小层级按钮的文字显示。default:"-" */
|
|
17
|
+
zoomOutText?: string;
|
|
18
|
+
/** 放大层级按钮的标题显示。default:"放大" */
|
|
19
|
+
zoomInTitle?: string;
|
|
20
|
+
/** 缩小层级按钮的标题显示。default:"缩小" */
|
|
21
|
+
zoomOutTitle?: string;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
package/types/index.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import "./base";
|
|
2
|
+
import "./control";
|
|
3
|
+
import "./layer";
|
|
4
|
+
import "./map";
|
|
5
|
+
import "./militarySymbols";
|
|
6
|
+
import "./mousetool";
|
|
7
|
+
import "./overlay";
|
|
8
|
+
import "./service";
|
|
9
|
+
|
|
10
|
+
declare global {
|
|
11
|
+
interface Window {
|
|
12
|
+
T: typeof T;
|
|
13
|
+
TMAP_NORMAL_MAP: T.MapType;
|
|
14
|
+
TMAP_SATELLITE_MAP: T.MapType;
|
|
15
|
+
TMAP_HYBRID_MAP: T.MapType;
|
|
16
|
+
TMAP_TERRAIN_MAP: T.MapType;
|
|
17
|
+
TMAP_TERRAIN_HYBRID_MAP: T.MapType;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
class GridlineLayer extends TileLayer {
|
|
6
|
+
constructor(opts?: GridlineLayerOptions);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
interface GridlineLayerOptions {
|
|
10
|
+
/** 设置格网图层的网格大小,单位是像素。default:256 */
|
|
11
|
+
tileSize?: number;
|
|
12
|
+
/** 显示格网图层的最小层级。default:0 */
|
|
13
|
+
minZoom?: number;
|
|
14
|
+
/** 显示格网图层的最大层级。default:18 */
|
|
15
|
+
maxZoom?: number;
|
|
16
|
+
/** 设置格网图层的透明度。default:1 */
|
|
17
|
+
opacity?: number;
|
|
18
|
+
/** 设置格网图层边线的颜色、宽度、线样式。default:{width:1, style:'solid', color:'#999'} */
|
|
19
|
+
outlineSize?: {
|
|
20
|
+
width: number;
|
|
21
|
+
style: string;
|
|
22
|
+
color: string;
|
|
23
|
+
};
|
|
24
|
+
/** 设置格网图层文字的样式,图层文字表现网格的行号、列号、层级。default:{display:false, fontSize:'14', fontWeight:true, color:'black'} */
|
|
25
|
+
textSize?: {
|
|
26
|
+
display: boolean;
|
|
27
|
+
fontSize: string;
|
|
28
|
+
fontWeight: boolean;
|
|
29
|
+
color: string;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
class TileLayerTDT extends TileLayer {
|
|
6
|
+
constructor(url: string, opts?: TileLayerTDTOptions);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
interface TileLayerTDTOptions extends TileLayerOptions {
|
|
10
|
+
/** 用来描述图层信息 */
|
|
11
|
+
attribution?: string;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
namespace TileLayer {
|
|
6
|
+
class WMS extends TileLayerWMS {}
|
|
7
|
+
class TDT extends TileLayerTDT {}
|
|
8
|
+
}
|
|
9
|
+
class TileLayer {
|
|
10
|
+
// static WMS: typeof TileLayerWMS;
|
|
11
|
+
// static TDT: typeof TileLayerTDT;
|
|
12
|
+
|
|
13
|
+
/** 以指定的参数创建TileLayer对象,这个对象是在地图上叠加栅格地图的时候用到的 */
|
|
14
|
+
constructor(url: string, opts?: TileLayerOptions);
|
|
15
|
+
/** 改变图层的透明度 */
|
|
16
|
+
setOpacity(opacity: number): TileLayer;
|
|
17
|
+
/** 设置图层的叠放顺序 */
|
|
18
|
+
setZIndex(zIndex: number): TileLayer;
|
|
19
|
+
/** 重新加载所有添加到此 TileLayer 的可见瓦片 */
|
|
20
|
+
refresh(): TileLayer;
|
|
21
|
+
/** 更新图层的URL地址并重绘他们 */
|
|
22
|
+
setUrl(url: string): TileLayer;
|
|
23
|
+
/** 瓦片的标签容器 */
|
|
24
|
+
getContainer(): HTMLElement;
|
|
25
|
+
/** 添加事件监听函数 */
|
|
26
|
+
addEventListener<E extends keyof TileLayerEvents>(
|
|
27
|
+
event: E,
|
|
28
|
+
handler: TileLayerEvents[E],
|
|
29
|
+
): void;
|
|
30
|
+
/** 移除事件监听函数 */
|
|
31
|
+
removeEventListener<E extends keyof TileLayerEvents>(
|
|
32
|
+
event: E,
|
|
33
|
+
handler: TileLayerEvents[E],
|
|
34
|
+
): void;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
interface TileLayerOptions {
|
|
38
|
+
/** 此图层的最低缩放级别。default:0 */
|
|
39
|
+
minZoom?: number;
|
|
40
|
+
/** 此图层的最高缩放级别 。default:18*/
|
|
41
|
+
maxZoom?: number;
|
|
42
|
+
/** 当没有瓦片时所显示的错误图片地址 */
|
|
43
|
+
errorTileUrl?: string;
|
|
44
|
+
/** 设置图层的透明度(0.0-1.0)。default:1.0 */
|
|
45
|
+
opacity?: number;
|
|
46
|
+
/** 图层的显示顺序 */
|
|
47
|
+
zIndex?: number;
|
|
48
|
+
/** 设置指定范围内显示瓦片 */
|
|
49
|
+
bounds?: LngLatBounds;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
interface TileLayerEvents {
|
|
53
|
+
/** 当瓦片图层开始加载瓦片时触发 */
|
|
54
|
+
loading(e: Pick<TileLayerEvent, "type" | "target">): void;
|
|
55
|
+
/** 当瓦片图层加载完可见瓦片后触发 */
|
|
56
|
+
load(e: Pick<TileLayerEvent, "type" | "target">): void;
|
|
57
|
+
/** 瓦片请求和开始加载时触发 */
|
|
58
|
+
tileloadstart(e: TileLayerEvent): void;
|
|
59
|
+
/** 在加载瓦片时触发 */
|
|
60
|
+
tileload(e: TileLayerEvent): void;
|
|
61
|
+
/** 在瓦片被移除时触发(比如打开了unloadInvisibleTiles) */
|
|
62
|
+
tileunload(e: TileLayerEvent): void;
|
|
63
|
+
/** 瓦片错误时触发 */
|
|
64
|
+
tileerror(e: TileLayerEvent): void;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
interface TileLayerEvent {
|
|
68
|
+
/** 事件类型 */
|
|
69
|
+
type: string;
|
|
70
|
+
/** 图层对象 */
|
|
71
|
+
target: TileLayer;
|
|
72
|
+
/** 像素坐标对象 */
|
|
73
|
+
coords: Point;
|
|
74
|
+
/** 瓦片图片 */
|
|
75
|
+
tile: HTMLImageElement;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
|
|
3
|
+
declare global {
|
|
4
|
+
namespace T {
|
|
5
|
+
class TileLayerWMS extends TileLayer {
|
|
6
|
+
constructor(url: string, opts?: TileLayerWMSOptions);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
interface TileLayerWMSOptions extends TileLayerOptions {
|
|
10
|
+
/** 用","分隔的多个图层列表 */
|
|
11
|
+
layers?: string;
|
|
12
|
+
/** 每个请求图层的用","分隔的描述样式 */
|
|
13
|
+
styles?: string;
|
|
14
|
+
/** 输出图像的类型。default:"image/jpeg" */
|
|
15
|
+
format?: string;
|
|
16
|
+
/** 输出图像背景是否透明。default:false */
|
|
17
|
+
transparent?: boolean;
|
|
18
|
+
/** 请求服务的版本。default:"1.1.1" */
|
|
19
|
+
version?: string;
|
|
20
|
+
/** 地图投影类型。default:"EPSG:900913" */
|
|
21
|
+
srs?: string;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|