@aibee/crc-bmap 0.13.2 → 0.13.4

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.
@@ -1,16 +1,21 @@
1
1
  import { Layer } from "./layer";
2
2
  import { Context } from "../context/context";
3
- import { PlaneGeometry } from "three";
3
+ import { Group, Mesh, PlaneGeometry } from "three";
4
+ import { TileLoader } from "../loader/TileLoader";
5
+ interface TileConfig {
6
+ extent: [number, number, number, number];
7
+ maxZoom: number;
8
+ minZoom: number;
9
+ }
4
10
  export interface TileLayerConfig {
5
11
  base_url: string;
6
12
  }
7
13
  export declare class TileLayer extends Layer {
8
- private static readonly WORLD_WIDTH;
9
- private static readonly WORLD_WIDTH_HALF;
10
- private tileLoader;
11
- private tileConfig;
12
- private tileGroup;
13
- private loadedTiles;
14
+ static readonly WORLD_WIDTH = 40075016.68;
15
+ static readonly WORLD_WIDTH_HALF: number;
16
+ tileLoader: TileLoader;
17
+ tileGroup: Group;
18
+ loadedTiles: Map<string, Mesh>;
14
19
  currentLevel: number;
15
20
  tileSize: number;
16
21
  baseGeometry: PlaneGeometry;
@@ -19,40 +24,58 @@ export declare class TileLayer extends Layer {
19
24
  /**
20
25
  * 加载瓦片配置
21
26
  */
22
- private loadTileConfig;
27
+ loadTileConfig(): Promise<TileConfig>;
23
28
  /**
24
29
  * 初始化事件监听
25
30
  */
26
- private initEvents;
31
+ initEvents(): void;
27
32
  /**
28
33
  * 移除事件监听
29
34
  */
30
- private removeEvents;
35
+ removeEvents(): void;
31
36
  /**
32
37
  * 更新处理函数
33
38
  */
34
- private onUpdate;
35
- private onCenterChange;
39
+ onUpdate: () => void;
40
+ onCenterChange: () => void;
36
41
  /**
37
42
  * 更新瓦片显示
38
43
  */
39
- private updateTiles;
44
+ updateTiles: import("lodash").DebouncedFunc<() => Promise<void>>;
40
45
  /**
41
46
  * 获取视图边界
42
47
  */
43
- private getViewBounds;
48
+ getViewBounds(): {
49
+ minX: number;
50
+ minY: number;
51
+ maxX: number;
52
+ maxY: number;
53
+ } | null;
44
54
  /**
45
55
  * 根据相机缩放级别获取瓦片缩放级别
46
56
  */
47
- private getTileZoomLevel;
57
+ getTileZoomLevel(cameraZoom: number, config: TileConfig): number;
48
58
  /**
49
59
  * 获取视图范围内的瓦片
50
60
  */
51
- private getTilesInView;
61
+ getTilesInView(bounds: {
62
+ minX: number;
63
+ minY: number;
64
+ maxX: number;
65
+ maxY: number;
66
+ }, zoom: number, config: TileConfig): Array<{
67
+ x: number;
68
+ y: number;
69
+ z: number;
70
+ }>;
52
71
  /**
53
72
  * 渲染瓦片
54
73
  */
55
- private renderTiles;
74
+ renderTiles(tiles: Array<{
75
+ x: number;
76
+ y: number;
77
+ z: number;
78
+ }>, zoom: number): Promise<void>;
56
79
  /**
57
80
  * 设置图层可见性
58
81
  */
@@ -70,3 +93,4 @@ export declare class TileLayer extends Layer {
70
93
  */
71
94
  dispose(): void;
72
95
  }
96
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aibee/crc-bmap",
3
- "version": "0.13.2",
3
+ "version": "0.13.4",
4
4
  "description": "",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "lib/index.esm.min.js",