@antv/l7-layers 2.9.36-alpha.1 → 2.9.37-alpha.1

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.
Files changed (194) hide show
  1. package/es/Geometry/index.d.ts +0 -9
  2. package/es/Geometry/index.js +0 -13
  3. package/es/Geometry/models/billboard.d.ts +0 -9
  4. package/es/Geometry/models/billboard.js +0 -13
  5. package/es/Geometry/models/plane.d.ts +0 -9
  6. package/es/Geometry/models/plane.js +0 -13
  7. package/es/Geometry/models/sprite.d.ts +0 -9
  8. package/es/Geometry/models/sprite.js +0 -13
  9. package/es/canvas/index.d.ts +0 -9
  10. package/es/canvas/index.js +0 -13
  11. package/es/citybuliding/building.d.ts +0 -9
  12. package/es/citybuliding/building.js +0 -13
  13. package/es/core/BaseLayer.d.ts +2 -2
  14. package/es/core/BaseLayer.js +20 -13
  15. package/es/core/BaseModel.js +1 -0
  16. package/es/core/triangulation.d.ts +2 -0
  17. package/es/core/triangulation.js +2 -3
  18. package/es/heatmap/index.d.ts +0 -9
  19. package/es/heatmap/index.js +0 -13
  20. package/es/heatmap/models/heatmap.js +1 -3
  21. package/es/image/index.d.ts +0 -9
  22. package/es/image/index.js +0 -13
  23. package/es/image/models/dataImage.d.ts +0 -9
  24. package/es/image/models/dataImage.js +1 -15
  25. package/es/image/models/image.d.ts +0 -9
  26. package/es/image/models/image.js +1 -15
  27. package/es/image/models/tileDataImage.d.ts +0 -9
  28. package/es/image/models/tileDataImage.js +1 -15
  29. package/es/index.d.ts +1 -1
  30. package/es/index.js +1 -1
  31. package/es/line/index.d.ts +0 -9
  32. package/es/line/index.js +0 -13
  33. package/es/line/models/great_circle.js +3 -3
  34. package/es/mask/index.d.ts +0 -9
  35. package/es/mask/index.js +0 -13
  36. package/es/plugins/DataMappingPlugin.js +2 -2
  37. package/es/plugins/DataSourcePlugin.js +1 -1
  38. package/es/plugins/FeatureScalePlugin.js +5 -3
  39. package/es/plugins/LayerModelPlugin.js +1 -1
  40. package/es/plugins/LightingPlugin.js +1 -1
  41. package/es/plugins/RegisterStyleAttributePlugin.js +8 -13
  42. package/es/plugins/UpdateStyleAttributePlugin.js +1 -1
  43. package/es/point/index.d.ts +0 -9
  44. package/es/point/index.js +0 -13
  45. package/es/point/models/earthFill.js +2 -2
  46. package/es/point/models/image.js +1 -1
  47. package/es/polygon/index.d.ts +0 -9
  48. package/es/polygon/index.js +0 -13
  49. package/es/polygon/models/ocean.js +1 -2
  50. package/es/polygon/models/water.js +1 -2
  51. package/es/raster/index.d.ts +0 -9
  52. package/es/raster/index.js +0 -13
  53. package/es/raster/models/raster.js +1 -2
  54. package/es/raster/models/rasterRgb.js +1 -2
  55. package/es/raster/models/rasterTile.js +1 -2
  56. package/es/raster/raster.d.ts +0 -9
  57. package/es/raster/raster.js +0 -13
  58. package/es/tile/interaction/TilePickService.d.ts +16 -0
  59. package/es/tile/{manager/tilePickerManager.js → interaction/TilePickService.js} +19 -84
  60. package/es/tile/interaction/getFeatureData.d.ts +0 -0
  61. package/es/tile/interaction/getFeatureData.js +0 -0
  62. package/es/tile/interaction/getRasterData.d.ts +4 -0
  63. package/es/tile/interaction/getRasterData.js +70 -0
  64. package/es/tile/interaction/utils.d.ts +11 -0
  65. package/es/tile/interaction/utils.js +97 -0
  66. package/es/tile/interface.d.ts +1 -2
  67. package/es/tile/manager/{baseTileManager.d.ts → base.d.ts} +8 -5
  68. package/es/tile/manager/{baseTileManager.js → base.js} +53 -14
  69. package/es/tile/manager/layerManager.d.ts +19 -0
  70. package/es/tile/manager/{tileLayerManager.js → layerManager.js} +75 -76
  71. package/es/tile/manager/{baseMapTileLayerManager.d.ts → mapLayerManager.d.ts} +2 -2
  72. package/es/tile/manager/{baseMapTileLayerManager.js → mapLayerManager.js} +4 -4
  73. package/es/tile/models/tileModel.js +4 -4
  74. package/es/tile/render/TileRenderService.d.ts +10 -0
  75. package/es/tile/render/TileRenderService.js +68 -0
  76. package/es/tile/{manager/tileConfigManager.d.ts → style/TileStyleService.d.ts} +2 -2
  77. package/es/tile/{manager/tileConfigManager.js → style/TileStyleService.js} +8 -11
  78. package/es/tile/style/constants.d.ts +13 -0
  79. package/es/tile/style/constants.js +17 -0
  80. package/es/tile/style/utils.d.ts +9 -0
  81. package/es/tile/style/utils.js +139 -0
  82. package/es/tile/tileFactory/base.d.ts +8 -7
  83. package/es/tile/tileFactory/base.js +116 -187
  84. package/es/tile/tileFactory/layers/rasterDataLayer.d.ts +11 -0
  85. package/es/tile/tileFactory/{rasterDataLayer.js → layers/rasterDataLayer.js} +3 -16
  86. package/es/tile/{tileTest.d.ts → tileFactory/layers/tileTest.d.ts} +2 -2
  87. package/es/tile/{tileTest.js → tileFactory/layers/tileTest.js} +2 -2
  88. package/es/tile/tileFactory/{vectorLayer.d.ts → layers/vectorLayer.d.ts} +9 -17
  89. package/es/tile/tileFactory/{vectorLayer.js → layers/vectorLayer.js} +9 -20
  90. package/es/tile/tileFactory/line.js +0 -3
  91. package/es/tile/tileFactory/mask.js +0 -3
  92. package/es/tile/tileFactory/point.js +0 -3
  93. package/es/tile/tileFactory/polygon.js +0 -3
  94. package/es/tile/tileFactory/raster.js +0 -3
  95. package/es/tile/tileFactory/rasterData.js +2 -7
  96. package/es/tile/tileFactory/test.js +1 -12
  97. package/es/tile/tileLayer/MapTileLayer.d.ts +6 -0
  98. package/es/tile/tileLayer/MapTileLayer.js +48 -0
  99. package/es/tile/tileLayer/TileLayer.d.ts +22 -0
  100. package/es/tile/tileLayer/TileLayer.js +198 -0
  101. package/es/tile/tileLayer/{baseMapTileLayer.d.ts → base.d.ts} +19 -16
  102. package/es/tile/tileLayer/{baseMapTileLayer.js → base.js} +118 -101
  103. package/es/tile/utils.d.ts +7 -4
  104. package/es/tile/utils.js +14 -74
  105. package/es/utils/dataMappingStyle.js +0 -3
  106. package/es/utils/extrude_polyline.d.ts +1 -0
  107. package/es/utils/extrude_polyline.js +5 -3
  108. package/es/utils/multiPassRender.js +0 -1
  109. package/es/wind/index.d.ts +0 -9
  110. package/es/wind/index.js +0 -13
  111. package/es/wind/models/wind.d.ts +0 -9
  112. package/es/wind/models/wind.js +1 -15
  113. package/lib/Geometry/index.js +0 -13
  114. package/lib/Geometry/models/billboard.js +0 -13
  115. package/lib/Geometry/models/plane.js +0 -13
  116. package/lib/Geometry/models/sprite.js +0 -13
  117. package/lib/canvas/index.js +0 -13
  118. package/lib/citybuliding/building.js +0 -13
  119. package/lib/core/BaseLayer.js +20 -13
  120. package/lib/core/BaseModel.js +1 -0
  121. package/lib/core/triangulation.js +2 -1
  122. package/lib/heatmap/index.js +0 -13
  123. package/lib/heatmap/models/heatmap.js +1 -3
  124. package/lib/image/index.js +0 -13
  125. package/lib/image/models/dataImage.js +1 -15
  126. package/lib/image/models/image.js +1 -15
  127. package/lib/image/models/tileDataImage.js +1 -15
  128. package/lib/index.js +1 -1
  129. package/lib/line/index.js +0 -13
  130. package/lib/line/models/great_circle.js +3 -3
  131. package/lib/mask/index.js +0 -13
  132. package/lib/plugins/DataMappingPlugin.js +2 -2
  133. package/lib/plugins/DataSourcePlugin.js +1 -1
  134. package/lib/plugins/FeatureScalePlugin.js +5 -3
  135. package/lib/plugins/LayerModelPlugin.js +1 -1
  136. package/lib/plugins/LightingPlugin.js +1 -1
  137. package/lib/plugins/RegisterStyleAttributePlugin.js +9 -13
  138. package/lib/plugins/UpdateStyleAttributePlugin.js +1 -1
  139. package/lib/point/index.js +0 -13
  140. package/lib/point/models/earthFill.js +2 -2
  141. package/lib/point/models/image.js +1 -1
  142. package/lib/polygon/index.js +0 -13
  143. package/lib/polygon/models/ocean.js +1 -2
  144. package/lib/polygon/models/water.js +1 -2
  145. package/lib/raster/index.js +0 -13
  146. package/lib/raster/models/raster.js +1 -2
  147. package/lib/raster/models/rasterRgb.js +1 -2
  148. package/lib/raster/models/rasterTile.js +1 -2
  149. package/lib/raster/raster.js +0 -13
  150. package/lib/tile/{manager/tilePickerManager.js → interaction/TilePickService.js} +20 -82
  151. package/lib/tile/interaction/getFeatureData.js +1 -0
  152. package/lib/tile/interaction/getRasterData.js +83 -0
  153. package/lib/tile/interaction/utils.js +120 -0
  154. package/lib/tile/manager/{baseTileManager.js → base.js} +56 -16
  155. package/lib/tile/manager/{tileLayerManager.js → layerManager.js} +77 -75
  156. package/lib/tile/manager/{baseMapTileLayerManager.js → mapLayerManager.js} +4 -4
  157. package/lib/tile/models/tileModel.js +4 -4
  158. package/lib/tile/render/TileRenderService.js +78 -0
  159. package/lib/tile/{manager/tileConfigManager.js → style/TileStyleService.js} +9 -9
  160. package/lib/tile/style/constants.js +26 -0
  161. package/lib/tile/style/utils.js +163 -0
  162. package/lib/tile/tileFactory/base.js +117 -187
  163. package/lib/tile/tileFactory/{rasterDataLayer.js → layers/rasterDataLayer.js} +3 -16
  164. package/lib/tile/{tileTest.js → tileFactory/layers/tileTest.js} +2 -2
  165. package/lib/tile/tileFactory/{vectorLayer.js → layers/vectorLayer.js} +8 -20
  166. package/lib/tile/tileFactory/line.js +0 -3
  167. package/lib/tile/tileFactory/mask.js +0 -3
  168. package/lib/tile/tileFactory/point.js +0 -3
  169. package/lib/tile/tileFactory/polygon.js +0 -3
  170. package/lib/tile/tileFactory/raster.js +0 -3
  171. package/lib/tile/tileFactory/rasterData.js +2 -8
  172. package/lib/tile/tileFactory/test.js +1 -13
  173. package/lib/tile/tileLayer/MapTileLayer.js +63 -0
  174. package/lib/tile/tileLayer/TileLayer.js +215 -0
  175. package/lib/tile/tileLayer/{baseMapTileLayer.js → base.js} +119 -96
  176. package/lib/tile/utils.js +19 -86
  177. package/lib/utils/dataMappingStyle.js +0 -3
  178. package/lib/utils/extrude_polyline.js +5 -2
  179. package/lib/utils/multiPassRender.js +0 -1
  180. package/lib/wind/index.js +0 -13
  181. package/lib/wind/models/wind.js +1 -15
  182. package/package.json +6 -6
  183. package/es/tile/manager/tileLayerManager.d.ts +0 -15
  184. package/es/tile/manager/tilePickerManager.d.ts +0 -21
  185. package/es/tile/tileFactory/rasterDataLayer.d.ts +0 -20
  186. package/es/tile/tileLayer/baseTileLayer.d.ts +0 -48
  187. package/es/tile/tileLayer/baseTileLayer.js +0 -420
  188. package/es/tile/tmsMapTileLayer.d.ts +0 -7
  189. package/es/tile/tmsMapTileLayer.js +0 -97
  190. package/es/tile/tmsTileLayer.d.ts +0 -7
  191. package/es/tile/tmsTileLayer.js +0 -101
  192. package/lib/tile/tileLayer/baseTileLayer.js +0 -429
  193. package/lib/tile/tmsMapTileLayer.js +0 -114
  194. package/lib/tile/tmsTileLayer.js +0 -118
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getDefaultStyleAttributeField = getDefaultStyleAttributeField;
9
+ exports.getLayerShape = getLayerShape;
10
+ exports.parseScaleValue = parseScaleValue;
11
+ exports.setScale = setScale;
12
+ exports.setStyleAttributeField = setStyleAttributeField;
13
+ exports.updateLayersConfig = updateLayersConfig;
14
+ exports.updateTexture = updateTexture;
15
+
16
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
+
18
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
+
20
+ var _l7Utils = require("@antv/l7-utils");
21
+
22
+ function updateTexture(config, layers, rendererService) {
23
+ var createTexture2D = rendererService.createTexture2D;
24
+ var imageData = (0, _l7Utils.generateColorRamp)(config);
25
+ var texture = createTexture2D({
26
+ data: imageData.data,
27
+ width: imageData.width,
28
+ height: imageData.height,
29
+ flipY: false
30
+ });
31
+ layers.map(function (layer) {
32
+ layer.updateLayerConfig({
33
+ colorTexture: texture
34
+ });
35
+ });
36
+ return texture;
37
+ }
38
+
39
+ function updateLayersConfig(layers, key, value) {
40
+ layers.map(function (layer) {
41
+ if (key === 'mask') {
42
+ // Tip: 栅格瓦片生效、设置全局的 mask、瓦片被全局的 mask 影响
43
+ layer.style({
44
+ mask: value
45
+ });
46
+ } else {
47
+ layer.updateLayerConfig((0, _defineProperty2.default)({}, key, value));
48
+ }
49
+ });
50
+ }
51
+
52
+ function setStyleAttributeField(layer, parent, style, value) {
53
+ if (Array.isArray(value)) {
54
+ // @ts-ignore
55
+ layer[style].apply(layer, (0, _toConsumableArray2.default)(value));
56
+ return;
57
+ }
58
+
59
+ if (typeof value === 'string') {
60
+ layer[style](value);
61
+ return;
62
+ }
63
+
64
+ var defaultValue = getDefaultStyleAttributeField(layer, parent.type, style);
65
+
66
+ if (!value) {
67
+ layer[style](defaultValue);
68
+ return layer;
69
+ }
70
+
71
+ var params = parseScaleValue(value, style);
72
+
73
+ if (params.length === 0) {
74
+ layer[style](defaultValue);
75
+ } else {
76
+ // @ts-ignore
77
+ layer[style].apply(layer, (0, _toConsumableArray2.default)(params));
78
+ }
79
+ }
80
+
81
+ function getDefaultStyleAttributeField(layer, type, style) {
82
+ switch (style) {
83
+ case 'size':
84
+ return 1;
85
+
86
+ case 'color':
87
+ return '#fff';
88
+
89
+ case 'shape':
90
+ return getLayerShape(type, layer);
91
+
92
+ default:
93
+ return '';
94
+ }
95
+ }
96
+
97
+ function getLayerShape(layerType, layer) {
98
+ var _layerShape$scale;
99
+
100
+ var layerShape = layer.getAttribute('shape');
101
+
102
+ if (layerShape && (_layerShape$scale = layerShape.scale) !== null && _layerShape$scale !== void 0 && _layerShape$scale.field) {
103
+ var _layerShape$scale2;
104
+
105
+ if (((_layerShape$scale2 = layerShape.scale) === null || _layerShape$scale2 === void 0 ? void 0 : _layerShape$scale2.values) === 'text') {
106
+ return [layerShape.scale.field, layerShape.scale.values];
107
+ }
108
+
109
+ return layerShape.scale.field;
110
+ }
111
+
112
+ switch (layerType) {
113
+ case 'PolygonLayer':
114
+ return 'fill';
115
+
116
+ case 'LineLayer':
117
+ return 'tileline';
118
+
119
+ case 'PointLayer':
120
+ return 'circle';
121
+
122
+ case 'RasterLayer':
123
+ return 'image';
124
+
125
+ default:
126
+ return '';
127
+ }
128
+ }
129
+
130
+ function parseScaleValue(value, type) {
131
+ if (type === 'shape') {
132
+ if (typeof value === 'string') {
133
+ return [value];
134
+ } else if (value !== null && value !== void 0 && value.field) {
135
+ return [value === null || value === void 0 ? void 0 : value.field];
136
+ } else {
137
+ return [];
138
+ }
139
+ }
140
+
141
+ var _ref = value,
142
+ field = _ref.field,
143
+ values = _ref.values,
144
+ callback = _ref.callback;
145
+
146
+ if (field && values && Array.isArray(values)) {
147
+ return [field, values];
148
+ } else if (field && callback) {
149
+ return [field, callback];
150
+ } else if (field) {
151
+ return [field];
152
+ }
153
+
154
+ return [];
155
+ }
156
+
157
+ function setScale(layer, parent) {
158
+ var scaleOptions = parent.tileLayer.scaleField;
159
+ var scaleKeys = Object.keys(scaleOptions);
160
+ scaleKeys.map(function (key) {
161
+ layer.scale(key, scaleOptions[key]);
162
+ });
163
+ }
@@ -21,11 +21,13 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
21
21
 
22
22
  var _l7Source = _interopRequireDefault(require("@antv/l7-source"));
23
23
 
24
- var _l7Utils = require("@antv/l7-utils");
24
+ var _utils = require("../style/utils");
25
25
 
26
- var _utils = require("../utils");
26
+ var _utils2 = require("../utils");
27
27
 
28
- var _vectorLayer = _interopRequireDefault(require("./vectorLayer"));
28
+ var _getRasterData = require("../interaction/getRasterData");
29
+
30
+ var _vectorLayer = _interopRequireDefault(require("./layers/vectorLayer"));
29
31
 
30
32
  var turf = _interopRequireWildcard(require("@turf/helpers"));
31
33
 
@@ -176,13 +178,13 @@ var TileFactory = /*#__PURE__*/function () {
176
178
 
177
179
  layer.source(source); // set scale attribute field
178
180
 
179
- this.setStyleAttributeField(layer, 'shape', shape);
181
+ (0, _utils.setStyleAttributeField)(layer, this.parentLayer, 'shape', shape);
180
182
 
181
183
  if (usage !== 'basemap') {
182
184
  // set scale
183
- this.setScale(layer);
184
- this.setStyleAttributeField(layer, 'color', color);
185
- this.setStyleAttributeField(layer, 'size', size);
185
+ (0, _utils.setScale)(layer, this.parentLayer);
186
+ (0, _utils.setStyleAttributeField)(layer, this.parentLayer, 'color', color);
187
+ (0, _utils.setStyleAttributeField)(layer, this.parentLayer, 'size', size);
186
188
  } else {
187
189
  layer.style({
188
190
  color: basemapColor,
@@ -191,8 +193,6 @@ var TileFactory = /*#__PURE__*/function () {
191
193
  } // set mask
192
194
 
193
195
 
194
- var layers = [layer];
195
-
196
196
  if (mask && layer.isVector) {
197
197
  var masklayer = new _vectorLayer.default({
198
198
  layerType: "MaskLayer"
@@ -205,12 +205,10 @@ var TileFactory = /*#__PURE__*/function () {
205
205
  cancelExtent: true
206
206
  }
207
207
  });
208
- layers.push(masklayer);
208
+ (0, _utils2.registerLayers)(this.parentLayer, [masklayer]);
209
209
  layer.addMaskLayer(masklayer);
210
- } // regist layer
211
-
210
+ }
212
211
 
213
- (0, _utils.registerLayers)(this.parentLayer, layers);
214
212
  this.layers = [layer];
215
213
  return layer;
216
214
  } // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -221,172 +219,121 @@ var TileFactory = /*#__PURE__*/function () {
221
219
  return '';
222
220
  }
223
221
  }, {
224
- key: "getDefaultStyleAttributeField",
225
- value: function getDefaultStyleAttributeField(layer, type) {
226
- switch (type) {
227
- case 'size':
228
- return 1;
222
+ key: "getTile",
223
+ value: function getTile(lng, lat) {
224
+ var zoom = this.mapService.getZoom();
225
+ return this.tilesetManager.getTileByLngLat(lng, lat, zoom);
226
+ }
227
+ }, {
228
+ key: "bindVectorEvent",
229
+ value: function bindVectorEvent(layer) {
230
+ var _this = this;
229
231
 
230
- case 'color':
231
- return '#fff';
232
+ layer.on('click', function (e) {
233
+ _this.eventCache.click = 1;
232
234
 
233
- case 'shape':
234
- return (0, _utils.getLayerShape)(this.parentLayer.type, layer);
235
+ _this.getFeatureAndEmitEvent('subLayerClick', e);
236
+ });
237
+ layer.on('mousemove', function (e) {
238
+ _this.eventCache.mousemove = 1;
235
239
 
236
- default:
237
- return '';
238
- }
240
+ _this.getFeatureAndEmitEvent('subLayerMouseMove', e);
241
+ });
242
+ layer.on('mouseenter', function (e) {
243
+ _this.getFeatureAndEmitEvent('subLayerMouseEnter', e);
244
+ });
239
245
  }
240
246
  }, {
241
- key: "setStyleAttributeField",
242
- value: function setStyleAttributeField(layer, type, value) {
243
- if (Array.isArray(value)) {
244
- // @ts-ignore
245
- layer[type].apply(layer, (0, _toConsumableArray2.default)(value));
246
- return;
247
- }
248
-
249
- if (typeof value === 'string') {
250
- layer[type](value);
251
- return;
252
- }
253
-
254
- var defaultValue = this.getDefaultStyleAttributeField(layer, type);
247
+ key: "readRasterTile",
248
+ value: function readRasterTile(e, name) {
249
+ var _e$lngLat = e.lngLat,
250
+ lng = _e$lngLat.lng,
251
+ lat = _e$lngLat.lat;
252
+ var tile = this.getTile(lng, lat);
253
+ if (!tile) return;
254
+ var data = (0, _getRasterData.readRasterValue)(tile, this.mapService, e.x, e.y);
255
+ e.value = data;
256
+ this.parentLayer.emit(name, e);
257
+ }
258
+ }, {
259
+ key: "bindRasterEvent",
260
+ value: function bindRasterEvent(layer) {
261
+ var _this2 = this;
255
262
 
256
- if (!value) {
257
- layer[type](defaultValue);
258
- return layer;
259
- }
263
+ layer.on('click', function (e) {
264
+ _this2.eventCache.click = 1;
260
265
 
261
- var params = this.parseScaleValue(value, type);
266
+ _this2.readRasterTile(e, 'subLayerClick');
267
+ });
268
+ layer.on('mousemove', function (e) {
269
+ _this2.eventCache.mousemove = 1;
262
270
 
263
- if (params.length === 0) {
264
- layer[type](defaultValue);
265
- } else {
266
- // @ts-ignore
267
- layer[type].apply(layer, (0, _toConsumableArray2.default)(params));
268
- }
271
+ _this2.readRasterTile(e, 'subLayerMouseMove');
272
+ });
273
+ layer.on('mouseenter', function (e) {
274
+ _this2.readRasterTile(e, 'subLayerMouseMove');
275
+ });
269
276
  }
270
277
  }, {
271
- key: "parseScaleValue",
272
- value: function parseScaleValue(value, type) {
273
- if (type === 'shape') {
274
- if (typeof value === 'string') {
275
- return [value];
276
- } else if (value !== null && value !== void 0 && value.field) {
277
- return [value === null || value === void 0 ? void 0 : value.field];
278
- } else {
279
- return [];
280
- }
281
- }
278
+ key: "bindCommonEvent",
279
+ value: function bindCommonEvent(layer) {
280
+ var _this3 = this;
282
281
 
283
- var _ref = value,
284
- field = _ref.field,
285
- values = _ref.values,
286
- callback = _ref.callback;
287
-
288
- if (field && values && Array.isArray(values)) {
289
- return [field, values];
290
- } else if (field && callback) {
291
- return [field, callback];
292
- } else if (field) {
293
- return [field];
294
- }
282
+ layer.on('mouseup', function (e) {
283
+ _this3.eventCache.mouseup = 1;
295
284
 
296
- return [];
297
- }
298
- }, {
299
- key: "getTile",
300
- value: function getTile(lng, lat) {
301
- var zoom = this.mapService.getZoom();
302
- var z = Math.ceil(zoom) + this.zoomOffset;
303
- var xy = (0, _l7Utils.osmLonLat2TileXY)(lng, lat, z);
304
- var tiles = this.tilesetManager.tiles.filter(function (t) {
305
- return t.key === "".concat(xy[0], ",").concat(xy[1], ",").concat(z);
285
+ _this3.getFeatureAndEmitEvent('subLayerMouseUp', e);
286
+ });
287
+ layer.on('mouseout', function (e) {
288
+ _this3.getFeatureAndEmitEvent('subLayerMouseOut', e);
289
+ });
290
+ layer.on('mousedown', function (e) {
291
+ _this3.eventCache.mousedown = 1;
292
+
293
+ _this3.getFeatureAndEmitEvent('subLayerMouseDown', e);
294
+ });
295
+ layer.on('contextmenu', function (e) {
296
+ _this3.eventCache.contextmenu = 1;
297
+
298
+ _this3.getFeatureAndEmitEvent('subLayerContextmenu', e);
299
+ }); // out side
300
+
301
+ layer.on('unclick', function (e) {
302
+ return _this3.handleOutsideEvent('click', 'subLayerUnClick', layer, e);
303
+ });
304
+ layer.on('unmouseup', function (e) {
305
+ return _this3.handleOutsideEvent('mouseup', 'subLayerUnMouseUp', layer, e);
306
+ });
307
+ layer.on('unmousedown', function (e) {
308
+ return _this3.handleOutsideEvent('mousedown', 'subLayerUnMouseDown', layer, e);
309
+ });
310
+ layer.on('uncontextmenu', function (e) {
311
+ return _this3.handleOutsideEvent('contextmenu', 'subLayerUnContextmenu', layer, e);
306
312
  });
307
- return tiles[0];
308
313
  }
309
314
  }, {
310
315
  key: "emitEvent",
311
- value: function emitEvent(layers, isVector) {
312
- var _this = this;
316
+ value: function emitEvent(layers) {
317
+ var _this4 = this;
313
318
 
314
319
  layers.map(function (layer) {
315
320
  layer.once('modelLoaded', function () {
316
- layer.on('click', function (e) {
317
- _this.eventCache.click = 1;
318
-
319
- if (_this.parentLayer.type === 'RasterLayer') {
320
- var _e$lngLat = e.lngLat,
321
- lng = _e$lngLat.lng,
322
- lat = _e$lngLat.lat;
323
-
324
- var tile = _this.getTile(lng, lat);
325
-
326
- tile && _this.getFeatureAndEmitEvent(layer, 'subLayerClick', e, isVector, tile);
327
- } else {
328
- _this.getFeatureAndEmitEvent(layer, 'subLayerClick', e);
329
- }
330
- });
331
- layer.on('mousemove', function (e) {
332
- _this.eventCache.mousemove = 1;
333
-
334
- if (_this.parentLayer.type === 'RasterLayer') {
335
- var _e$lngLat2 = e.lngLat,
336
- lng = _e$lngLat2.lng,
337
- lat = _e$lngLat2.lat;
321
+ _this4.bindVectorEvent(layer);
338
322
 
339
- var tile = _this.getTile(lng, lat);
340
-
341
- tile && _this.getFeatureAndEmitEvent(layer, 'subLayerMouseMove', e, isVector, tile);
342
- } else {
343
- _this.getFeatureAndEmitEvent(layer, 'subLayerMouseMove', e);
344
- }
345
- });
346
- layer.on('mouseup', function (e) {
347
- _this.eventCache.mouseup = 1;
348
-
349
- _this.getFeatureAndEmitEvent(layer, 'subLayerMouseUp', e);
350
- });
351
- layer.on('mouseenter', function (e) {
352
- if (_this.parentLayer.type === 'RasterLayer') {
353
- var _e$lngLat3 = e.lngLat,
354
- lng = _e$lngLat3.lng,
355
- lat = _e$lngLat3.lat;
356
-
357
- var tile = _this.getTile(lng, lat);
358
-
359
- tile && _this.getFeatureAndEmitEvent(layer, 'subLayerMouseMove', e, isVector, tile);
360
- } else {
361
- _this.getFeatureAndEmitEvent(layer, 'subLayerMouseEnter', e);
362
- }
363
- });
364
- layer.on('mouseout', function (e) {
365
- _this.getFeatureAndEmitEvent(layer, 'subLayerMouseOut', e);
366
- });
367
- layer.on('mousedown', function (e) {
368
- _this.eventCache.mousedown = 1;
369
-
370
- _this.getFeatureAndEmitEvent(layer, 'subLayerMouseDown', e);
371
- });
372
- layer.on('contextmenu', function (e) {
373
- _this.eventCache.contextmenu = 1;
323
+ _this4.bindCommonEvent(layer);
324
+ });
325
+ });
326
+ }
327
+ }, {
328
+ key: "emitRasterEvent",
329
+ value: function emitRasterEvent(layers) {
330
+ var _this5 = this;
374
331
 
375
- _this.getFeatureAndEmitEvent(layer, 'subLayerContextmenu', e);
376
- }); // out side
332
+ layers.map(function (layer) {
333
+ layer.once('modelLoaded', function () {
334
+ _this5.bindRasterEvent(layer);
377
335
 
378
- layer.on('unclick', function (e) {
379
- return _this.handleOutsideEvent('click', 'subLayerUnClick', layer, e);
380
- });
381
- layer.on('unmouseup', function (e) {
382
- return _this.handleOutsideEvent('mouseup', 'subLayerUnMouseUp', layer, e);
383
- });
384
- layer.on('unmousedown', function (e) {
385
- return _this.handleOutsideEvent('mousedown', 'subLayerUnMouseDown', layer, e);
386
- });
387
- layer.on('uncontextmenu', function (e) {
388
- return _this.handleOutsideEvent('contextmenu', 'subLayerUnContextmenu', layer, e);
389
- });
336
+ _this5.bindCommonEvent(layer);
390
337
  });
391
338
  });
392
339
  }
@@ -415,36 +362,19 @@ var TileFactory = /*#__PURE__*/function () {
415
362
  }
416
363
  }, {
417
364
  key: "getFeatureAndEmitEvent",
418
- value: function getFeatureAndEmitEvent(layer, eventName, e, isVector, tile) {
419
- if (isVector === false) {
420
- // raster tile get rgb
421
- // e.pickedColors = readPixel(e.x, e.y, this.rendererService);
422
- // raster tile origin value
423
- e.value = (0, _utils.readRasterValue)(tile, this.mapService, e.x, e.y);
424
- } else {
425
- // VectorLayer
426
- var featureId = e.featureId;
427
- var features = this.getAllFeatures(featureId);
428
-
429
- try {
430
- e.feature = this.getCombineFeature(features);
431
- } catch (err) {
432
- console.warn('Combine Featuer Err! Return First Feature!');
433
- e.feature = features[0];
434
- }
365
+ value: function getFeatureAndEmitEvent(eventName, e) {
366
+ var featureId = e.featureId;
367
+ var features = this.getAllFeatures(featureId);
368
+
369
+ try {
370
+ e.feature = this.getCombineFeature(features);
371
+ } catch (err) {
372
+ console.warn('Combine Featuer Err! Return First Feature!');
373
+ e.feature = features[0];
435
374
  }
436
375
 
437
376
  this.parentLayer.emit(eventName, e);
438
377
  }
439
- }, {
440
- key: "setScale",
441
- value: function setScale(layer) {
442
- var scaleOptions = this.parentLayer.tileLayer.scaleField;
443
- var scaleKeys = Object.keys(scaleOptions);
444
- scaleKeys.map(function (key) {
445
- layer.scale(key, scaleOptions[key]);
446
- });
447
- }
448
378
  }, {
449
379
  key: "getAllFeatures",
450
380
  value: function getAllFeatures(featureId) {
@@ -475,7 +405,7 @@ var TileFactory = /*#__PURE__*/function () {
475
405
  }, {
476
406
  key: "handleOutsideEvent",
477
407
  value: function handleOutsideEvent(type, emitType, layer, e) {
478
- var _this2 = this;
408
+ var _this6 = this;
479
409
 
480
410
  if (this.outSideEventTimer) {
481
411
  clearTimeout(this.outSideEventTimer);
@@ -483,10 +413,10 @@ var TileFactory = /*#__PURE__*/function () {
483
413
  }
484
414
 
485
415
  this.outSideEventTimer = setTimeout(function () {
486
- if (_this2.eventCache[type] > 0) {
487
- _this2.eventCache[type] = 0;
416
+ if (_this6.eventCache[type] > 0) {
417
+ _this6.eventCache[type] = 0;
488
418
  } else {
489
- _this2.getFeatureAndEmitEvent(layer, emitType, e);
419
+ _this6.getFeatureAndEmitEvent(emitType, e);
490
420
  }
491
421
  }, 64);
492
422
  }
@@ -21,11 +21,11 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
21
21
 
22
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- var _BaseLayer2 = _interopRequireDefault(require("../../core/BaseLayer"));
24
+ var _BaseLayer2 = _interopRequireDefault(require("../../../core/BaseLayer"));
25
25
 
26
- var _rasterTile = _interopRequireDefault(require("../../raster/models/rasterTile"));
26
+ var _rasterTile = _interopRequireDefault(require("../../../raster/models/rasterTile"));
27
27
 
28
- var _rasterRgb = _interopRequireDefault(require("../../raster/models/rasterRgb"));
28
+ var _rasterRgb = _interopRequireDefault(require("../../../raster/models/rasterRgb"));
29
29
 
30
30
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
31
31
 
@@ -79,19 +79,6 @@ var RasterTiffLayer = /*#__PURE__*/function (_BaseLayer) {
79
79
  return _rasterTile.default;
80
80
  }
81
81
  }
82
- }, {
83
- key: "getConfigSchema",
84
- value: function getConfigSchema() {
85
- return {
86
- properties: {
87
- opacity: {
88
- type: 'number',
89
- minimum: 0,
90
- maximum: 1
91
- }
92
- }
93
- };
94
- }
95
82
  }, {
96
83
  key: "getDefaultConfig",
97
84
  value: function getDefaultConfig() {
@@ -21,9 +21,9 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
21
21
 
22
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- var _BaseLayer2 = _interopRequireDefault(require("../core/BaseLayer"));
24
+ var _BaseLayer2 = _interopRequireDefault(require("../../../core/BaseLayer"));
25
25
 
26
- var _tileModel = _interopRequireDefault(require("./models/tileModel"));
26
+ var _tileModel = _interopRequireDefault(require("../../models/tileModel"));
27
27
 
28
28
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
29
29
 
@@ -25,19 +25,19 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
25
25
 
26
26
  var _l7Core = require("@antv/l7-core");
27
27
 
28
- var _BaseLayer2 = _interopRequireDefault(require("../../core/BaseLayer"));
28
+ var _BaseLayer2 = _interopRequireDefault(require("../../../core/BaseLayer"));
29
29
 
30
- var _tile = _interopRequireDefault(require("../../line/models/tile"));
30
+ var _tile = _interopRequireDefault(require("../../../line/models/tile"));
31
31
 
32
- var _simpleTileLine = _interopRequireDefault(require("../../line/models/simpleTileLine"));
32
+ var _simpleTileLine = _interopRequireDefault(require("../../../line/models/simpleTileLine"));
33
33
 
34
- var _tileText = _interopRequireDefault(require("../../point/models/tileText"));
34
+ var _tileText = _interopRequireDefault(require("../../../point/models/tileText"));
35
35
 
36
- var _tile2 = _interopRequireDefault(require("../../point/models/tile"));
36
+ var _tile2 = _interopRequireDefault(require("../../../point/models/tile"));
37
37
 
38
- var _tile3 = _interopRequireDefault(require("../../polygon/models/tile"));
38
+ var _tile3 = _interopRequireDefault(require("../../../polygon/models/tile"));
39
39
 
40
- var _fill = _interopRequireDefault(require("../../mask/models/fill"));
40
+ var _fill = _interopRequireDefault(require("../../../mask/models/fill"));
41
41
 
42
42
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
43
43
 
@@ -66,6 +66,7 @@ var VectorLayer = /*#__PURE__*/function (_BaseLayer) {
66
66
  _this = _super.call.apply(_super, [this].concat(args));
67
67
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "needListen", true);
68
68
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isVector", true);
69
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isTileLayer", true);
69
70
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", _this.layerType || 'vectorLayer');
70
71
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "pickedID", null);
71
72
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sourceEvent", function () {
@@ -255,19 +256,6 @@ var VectorLayer = /*#__PURE__*/function (_BaseLayer) {
255
256
  return _tile2.default;
256
257
  }
257
258
  }
258
- }, {
259
- key: "getConfigSchema",
260
- value: function getConfigSchema() {
261
- return {
262
- properties: {
263
- opacity: {
264
- type: 'number',
265
- minimum: 0,
266
- maximum: 1
267
- }
268
- }
269
- };
270
- }
271
259
  }, {
272
260
  key: "getDefaultConfig",
273
261
  value: function getDefaultConfig() {
@@ -58,9 +58,6 @@ var VectorLineTile = /*#__PURE__*/function (_TileFactory) {
58
58
  vectorTileLayer: vectorTileLayer,
59
59
  source: source
60
60
  });
61
- layer.once('modelLoaded', function () {
62
- tile.layerLoad();
63
- });
64
61
  return {
65
62
  layers: [layer],
66
63
  layerIDList: [layer.id]