@antv/l7-layers 2.8.45 → 2.9.2

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 (171) hide show
  1. package/es/core/BaseLayer.d.ts +3 -1
  2. package/es/core/BaseLayer.js +23 -3
  3. package/es/core/BaseLayer.js.map +1 -1
  4. package/es/core/BaseModel.d.ts +2 -1
  5. package/es/core/BaseModel.js +3 -0
  6. package/es/core/BaseModel.js.map +1 -1
  7. package/es/core/interface.d.ts +12 -0
  8. package/es/core/interface.js.map +1 -1
  9. package/es/image/models/image.js.map +1 -1
  10. package/es/line/index.d.ts +1 -1
  11. package/es/line/index.js +7 -1
  12. package/es/line/index.js.map +1 -1
  13. package/es/line/models/index.d.ts +1 -1
  14. package/es/line/models/index.js +5 -1
  15. package/es/line/models/index.js.map +1 -1
  16. package/es/line/models/tile.d.ts +20 -0
  17. package/es/line/models/tile.js +327 -0
  18. package/es/line/models/tile.js.map +1 -0
  19. package/es/plugins/ShaderUniformPlugin.js +3 -1
  20. package/es/plugins/ShaderUniformPlugin.js.map +1 -1
  21. package/es/point/index.d.ts +1 -1
  22. package/es/point/index.js +8 -2
  23. package/es/point/index.js.map +1 -1
  24. package/es/point/models/index.d.ts +1 -1
  25. package/es/point/models/index.js +5 -1
  26. package/es/point/models/index.js.map +1 -1
  27. package/es/point/models/tile.d.ts +31 -0
  28. package/es/point/models/tile.js +291 -0
  29. package/es/point/models/tile.js.map +1 -0
  30. package/es/polygon/index.js +6 -0
  31. package/es/polygon/index.js.map +1 -1
  32. package/es/polygon/models/index.d.ts +1 -1
  33. package/es/polygon/models/index.js +5 -1
  34. package/es/polygon/models/index.js.map +1 -1
  35. package/es/polygon/models/tile.d.ts +16 -0
  36. package/es/polygon/models/tile.js +137 -0
  37. package/es/polygon/models/tile.js.map +1 -0
  38. package/es/raster/index.d.ts +2 -2
  39. package/es/raster/index.js +4 -4
  40. package/es/raster/index.js.map +1 -1
  41. package/es/raster/models/index.js +1 -1
  42. package/es/raster/models/index.js.map +1 -1
  43. package/es/raster/models/raster.d.ts +1 -0
  44. package/es/raster/models/raster.js +8 -2
  45. package/es/raster/models/raster.js.map +1 -1
  46. package/es/tile/interface.d.ts +28 -0
  47. package/es/tile/interface.js +2 -0
  48. package/es/tile/interface.js.map +1 -0
  49. package/es/tile/manager/tileConfigManager.d.ts +17 -0
  50. package/es/tile/manager/tileConfigManager.js +123 -0
  51. package/es/tile/manager/tileConfigManager.js.map +1 -0
  52. package/es/tile/manager/tileLayerManager.d.ts +34 -0
  53. package/es/tile/manager/tileLayerManager.js +283 -0
  54. package/es/tile/manager/tileLayerManager.js.map +1 -0
  55. package/es/tile/manager/tilePickerManager.d.ts +20 -0
  56. package/es/tile/manager/tilePickerManager.js +167 -0
  57. package/es/tile/manager/tilePickerManager.js.map +1 -0
  58. package/es/tile/models/tileModel.d.ts +8 -0
  59. package/es/tile/models/tileModel.js +61 -0
  60. package/es/tile/models/tileModel.js.map +1 -0
  61. package/es/tile/tileFactory/base.d.ts +41 -0
  62. package/es/tile/tileFactory/base.js +380 -0
  63. package/es/tile/tileFactory/base.js.map +1 -0
  64. package/es/tile/tileFactory/index.d.ts +5 -0
  65. package/es/tile/tileFactory/index.js +30 -0
  66. package/es/tile/tileFactory/index.js.map +1 -0
  67. package/es/tile/tileFactory/line.d.ts +12 -0
  68. package/es/tile/tileFactory/line.js +65 -0
  69. package/es/tile/tileFactory/line.js.map +1 -0
  70. package/es/tile/tileFactory/point.d.ts +12 -0
  71. package/es/tile/tileFactory/point.js +65 -0
  72. package/es/tile/tileFactory/point.js.map +1 -0
  73. package/es/tile/tileFactory/polygon.d.ts +12 -0
  74. package/es/tile/tileFactory/polygon.js +65 -0
  75. package/es/tile/tileFactory/polygon.js.map +1 -0
  76. package/es/tile/tileFactory/raster.d.ts +12 -0
  77. package/es/tile/tileFactory/raster.js +61 -0
  78. package/es/tile/tileFactory/raster.js.map +1 -0
  79. package/es/tile/tileFactory/rasterData.d.ts +12 -0
  80. package/es/tile/tileFactory/rasterData.js +75 -0
  81. package/es/tile/tileFactory/rasterData.js.map +1 -0
  82. package/es/tile/tileFactory/rasterDataLayer.d.ts +19 -0
  83. package/es/{core/LayerGroup.js → tile/tileFactory/rasterDataLayer.js} +39 -32
  84. package/es/tile/tileFactory/rasterDataLayer.js.map +1 -0
  85. package/es/tile/tileFactory/vectorLayer.d.ts +27 -0
  86. package/es/tile/tileFactory/vectorLayer.js +131 -0
  87. package/es/tile/tileFactory/vectorLayer.js.map +1 -0
  88. package/es/tile/tileLayer/baseTileLayer.d.ts +51 -0
  89. package/es/tile/tileLayer/baseTileLayer.js +409 -0
  90. package/es/tile/tileLayer/baseTileLayer.js.map +1 -0
  91. package/es/tile/tmsTileLayer.d.ts +7 -0
  92. package/es/tile/tmsTileLayer.js +100 -0
  93. package/es/tile/tmsTileLayer.js.map +1 -0
  94. package/es/tile/utils.d.ts +11 -0
  95. package/es/tile/utils.js +125 -0
  96. package/es/tile/utils.js.map +1 -0
  97. package/lib/core/BaseLayer.js +21 -2
  98. package/lib/core/BaseLayer.js.map +1 -1
  99. package/lib/core/BaseModel.js +2 -0
  100. package/lib/core/BaseModel.js.map +1 -1
  101. package/lib/core/interface.js.map +1 -1
  102. package/lib/image/models/image.js.map +1 -1
  103. package/lib/line/index.js +7 -1
  104. package/lib/line/index.js.map +1 -1
  105. package/lib/line/models/index.js +7 -1
  106. package/lib/line/models/index.js.map +1 -1
  107. package/lib/line/models/tile.js +342 -0
  108. package/lib/line/models/tile.js.map +1 -0
  109. package/lib/plugins/ShaderUniformPlugin.js +3 -1
  110. package/lib/plugins/ShaderUniformPlugin.js.map +1 -1
  111. package/lib/point/index.js +8 -2
  112. package/lib/point/index.js.map +1 -1
  113. package/lib/point/models/index.js +7 -1
  114. package/lib/point/models/index.js.map +1 -1
  115. package/lib/point/models/tile.js +308 -0
  116. package/lib/point/models/tile.js.map +1 -0
  117. package/lib/polygon/index.js +6 -0
  118. package/lib/polygon/index.js.map +1 -1
  119. package/lib/polygon/models/index.js +7 -1
  120. package/lib/polygon/models/index.js.map +1 -1
  121. package/lib/polygon/models/tile.js +152 -0
  122. package/lib/polygon/models/tile.js.map +1 -0
  123. package/lib/raster/index.js +4 -4
  124. package/lib/raster/index.js.map +1 -1
  125. package/lib/raster/models/index.js +2 -2
  126. package/lib/raster/models/index.js.map +1 -1
  127. package/lib/raster/models/raster.js +8 -2
  128. package/lib/raster/models/raster.js.map +1 -1
  129. package/lib/tile/interface.js +2 -0
  130. package/lib/tile/interface.js.map +1 -0
  131. package/lib/tile/manager/tileConfigManager.js +134 -0
  132. package/lib/tile/manager/tileConfigManager.js.map +1 -0
  133. package/lib/tile/manager/tileLayerManager.js +291 -0
  134. package/lib/tile/manager/tileLayerManager.js.map +1 -0
  135. package/lib/tile/manager/tilePickerManager.js +173 -0
  136. package/lib/tile/manager/tilePickerManager.js.map +1 -0
  137. package/lib/tile/models/tileModel.js +73 -0
  138. package/lib/tile/models/tileModel.js.map +1 -0
  139. package/lib/tile/tileFactory/base.js +395 -0
  140. package/lib/tile/tileFactory/base.js.map +1 -0
  141. package/lib/tile/tileFactory/index.js +60 -0
  142. package/lib/tile/tileFactory/index.js.map +1 -0
  143. package/lib/tile/tileFactory/line.js +76 -0
  144. package/lib/tile/tileFactory/line.js.map +1 -0
  145. package/lib/tile/tileFactory/point.js +76 -0
  146. package/lib/tile/tileFactory/point.js.map +1 -0
  147. package/lib/tile/tileFactory/polygon.js +76 -0
  148. package/lib/tile/tileFactory/polygon.js.map +1 -0
  149. package/lib/tile/tileFactory/raster.js +74 -0
  150. package/lib/tile/tileFactory/raster.js.map +1 -0
  151. package/lib/tile/tileFactory/rasterData.js +88 -0
  152. package/lib/tile/tileFactory/rasterData.js.map +1 -0
  153. package/lib/{core/LayerGroup.js → tile/tileFactory/rasterDataLayer.js} +40 -32
  154. package/lib/tile/tileFactory/rasterDataLayer.js.map +1 -0
  155. package/lib/tile/tileFactory/vectorLayer.js +145 -0
  156. package/lib/tile/tileFactory/vectorLayer.js.map +1 -0
  157. package/lib/tile/tileLayer/baseTileLayer.js +408 -0
  158. package/lib/tile/tileLayer/baseTileLayer.js.map +1 -0
  159. package/lib/tile/tmsTileLayer.js +116 -0
  160. package/lib/tile/tmsTileLayer.js.map +1 -0
  161. package/lib/tile/utils.js +147 -0
  162. package/lib/tile/utils.js.map +1 -0
  163. package/package.json +7 -5
  164. package/es/core/LayerGroup.d.ts +0 -9
  165. package/es/core/LayerGroup.js.map +0 -1
  166. package/es/raster/models/raste-tile.d.ts +0 -23
  167. package/es/raster/models/raste-tile.js +0 -285
  168. package/es/raster/models/raste-tile.js.map +0 -1
  169. package/lib/core/LayerGroup.js.map +0 -1
  170. package/lib/raster/models/raste-tile.js +0 -294
  171. package/lib/raster/models/raste-tile.js.map +0 -1
@@ -21,63 +21,71 @@ 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("./BaseLayer"));
24
+ var _BaseLayer2 = _interopRequireDefault(require("../../core/BaseLayer"));
25
+
26
+ var _raster = _interopRequireDefault(require("../../raster/models/raster"));
25
27
 
26
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); }; }
27
29
 
28
30
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
29
31
 
30
- var LayerGroup = function (_BaseLayer) {
31
- (0, _inherits2.default)(LayerGroup, _BaseLayer);
32
+ var RasterTiffLayer = function (_BaseLayer) {
33
+ (0, _inherits2.default)(RasterTiffLayer, _BaseLayer);
32
34
 
33
- var _super = _createSuper(LayerGroup);
35
+ var _super = _createSuper(RasterTiffLayer);
34
36
 
35
- function LayerGroup() {
37
+ function RasterTiffLayer() {
36
38
  var _this;
37
39
 
38
- (0, _classCallCheck2.default)(this, LayerGroup);
40
+ (0, _classCallCheck2.default)(this, RasterTiffLayer);
39
41
 
40
42
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
41
43
  args[_key] = arguments[_key];
42
44
  }
43
45
 
44
46
  _this = _super.call.apply(_super, [this].concat(args));
45
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isLayerGroup", true);
47
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", _this.layerType);
46
48
  return _this;
47
49
  }
48
50
 
49
- (0, _createClass2.default)(LayerGroup, [{
50
- key: "addChild",
51
- value: function addChild(layer) {
52
- this.layerChildren.push(layer);
51
+ (0, _createClass2.default)(RasterTiffLayer, [{
52
+ key: "buildModels",
53
+ value: function buildModels() {
54
+ var model = this.getModelType();
55
+ this.layerModel = new model(this);
56
+ this.models = this.layerModel.initModels();
53
57
  }
54
58
  }, {
55
- key: "removeChild",
56
- value: function removeChild(layer) {
57
- var layerIndex = this.layerChildren.indexOf(layer);
58
-
59
- if (layerIndex > -1) {
60
- this.layerChildren.splice(layerIndex, 1);
61
- }
62
-
63
- layer.destroy();
59
+ key: "rebuildModels",
60
+ value: function rebuildModels() {
61
+ this.models = this.layerModel.buildModels();
62
+ }
63
+ }, {
64
+ key: "getModelType",
65
+ value: function getModelType() {
66
+ return _raster.default;
64
67
  }
65
68
  }, {
66
- key: "clearChild",
67
- value: function clearChild() {
68
- this.layerChildren.forEach(function (layer) {
69
- layer.destroy();
70
- });
71
- this.layerChildren = [];
69
+ key: "getConfigSchema",
70
+ value: function getConfigSchema() {
71
+ return {
72
+ properties: {
73
+ opacity: {
74
+ type: 'number',
75
+ minimum: 0,
76
+ maximum: 1
77
+ }
78
+ }
79
+ };
72
80
  }
73
81
  }, {
74
- key: "hasChild",
75
- value: function hasChild(layer) {
76
- return this.layerChildren.includes(layer);
82
+ key: "getDefaultConfig",
83
+ value: function getDefaultConfig() {
84
+ return {};
77
85
  }
78
86
  }]);
79
- return LayerGroup;
87
+ return RasterTiffLayer;
80
88
  }(_BaseLayer2.default);
81
89
 
82
- exports.default = LayerGroup;
83
- //# sourceMappingURL=LayerGroup.js.map
90
+ exports.default = RasterTiffLayer;
91
+ //# sourceMappingURL=rasterDataLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tile/tileFactory/rasterDataLayer.ts"],"names":["RasterTiffLayer","layerType","model","getModelType","layerModel","models","initModels","buildModels","RasterModel","properties","opacity","type","minimum","maximum","BaseLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;;;;;IAEqBA,e;;;;;;;;;;;;;;;uFAGG,MAAKC,S;;;;;;WAC3B,uBAAqB;AACnB,UAAMC,KAAK,GAAG,KAAKC,YAAL,EAAd;AACA,WAAKC,UAAL,GAAkB,IAAIF,KAAJ,CAAU,IAAV,CAAlB;AACA,WAAKG,MAAL,GAAc,KAAKD,UAAL,CAAgBE,UAAhB,EAAd;AACD;;;WAED,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKD,UAAL,CAAgBG,WAAhB,EAAd;AACD;;;WAED,wBAAyB;AACvB,aAAOC,eAAP;AACD;;;WACD,2BAA4B;AAC1B,aAAO;AACLC,QAAAA,UAAU,EAAE;AACVC,UAAAA,OAAO,EAAE;AACPC,YAAAA,IAAI,EAAE,QADC;AAEPC,YAAAA,OAAO,EAAE,CAFF;AAGPC,YAAAA,OAAO,EAAE;AAHF;AADC;AADP,OAAP;AASD;;;WAED,4BAA6B;AAC3B,aAAO,EAAP;AACD;;;EA/B0CC,mB","sourcesContent":["import BaseLayer from '../../core/BaseLayer';\nimport { IRasterLayerStyleOptions } from '../../core/interface';\nimport RasterModel from '../../raster/models/raster';\n\nexport default class RasterTiffLayer extends BaseLayer<\n Partial<IRasterLayerStyleOptions>\n> {\n public type: string = this.layerType as string;\n public buildModels() {\n const model = this.getModelType();\n this.layerModel = new model(this);\n this.models = this.layerModel.initModels();\n }\n\n public rebuildModels() {\n this.models = this.layerModel.buildModels();\n }\n\n protected getModelType() {\n return RasterModel;\n }\n protected getConfigSchema() {\n return {\n properties: {\n opacity: {\n type: 'number',\n minimum: 0,\n maximum: 1,\n },\n },\n };\n }\n\n protected getDefaultConfig() {\n return {};\n }\n}\n"],"file":"rasterDataLayer.js"}
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _BaseLayer2 = _interopRequireDefault(require("../../core/BaseLayer"));
25
+
26
+ var _tile = _interopRequireDefault(require("../../line/models/tile"));
27
+
28
+ var _text = _interopRequireDefault(require("../../point/models/text"));
29
+
30
+ var _tile2 = _interopRequireDefault(require("../../point/models/tile"));
31
+
32
+ var _tile3 = _interopRequireDefault(require("../../polygon/models/tile"));
33
+
34
+ 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); }; }
35
+
36
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
37
+
38
+ var VectorLayer = function (_BaseLayer) {
39
+ (0, _inherits2.default)(VectorLayer, _BaseLayer);
40
+
41
+ var _super = _createSuper(VectorLayer);
42
+
43
+ function VectorLayer() {
44
+ var _this;
45
+
46
+ (0, _classCallCheck2.default)(this, VectorLayer);
47
+
48
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
49
+ args[_key] = arguments[_key];
50
+ }
51
+
52
+ _this = _super.call.apply(_super, [this].concat(args));
53
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isVector", true);
54
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", _this.layerType);
55
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "pickedID", null);
56
+ return _this;
57
+ }
58
+
59
+ (0, _createClass2.default)(VectorLayer, [{
60
+ key: "getPickID",
61
+ value: function getPickID() {
62
+ return this.pickedID;
63
+ }
64
+ }, {
65
+ key: "setPickID",
66
+ value: function setPickID() {
67
+ return this.pickedID;
68
+ }
69
+ }, {
70
+ key: "buildModels",
71
+ value: function buildModels() {
72
+ var model = this.getModelType();
73
+ this.layerModel = new model(this);
74
+ this.models = this.layerModel.initModels();
75
+ }
76
+ }, {
77
+ key: "rebuildModels",
78
+ value: function rebuildModels() {
79
+ this.models = this.layerModel.buildModels();
80
+ }
81
+ }, {
82
+ key: "getModelType",
83
+ value: function getModelType() {
84
+ switch (this.layerType) {
85
+ case 'PolygonLayer':
86
+ return _tile3.default;
87
+
88
+ case 'LineLayer':
89
+ return _tile.default;
90
+
91
+ case 'PointLayer':
92
+ return this.getPointModel();
93
+
94
+ default:
95
+ return _tile2.default;
96
+ }
97
+ }
98
+ }, {
99
+ key: "getPointModel",
100
+ value: function getPointModel() {
101
+ var layerData = this.getEncodedData();
102
+
103
+ var _this$getLayerConfig = this.getLayerConfig(),
104
+ shape2d = _this$getLayerConfig.shape2d;
105
+
106
+ var item = layerData.find(function (fe) {
107
+ return fe.hasOwnProperty('shape');
108
+ });
109
+
110
+ if (item) {
111
+ var shape = item.shape;
112
+
113
+ if ((shape2d === null || shape2d === void 0 ? void 0 : shape2d.indexOf(shape)) !== -1) {
114
+ return _tile2.default;
115
+ } else {
116
+ return _text.default;
117
+ }
118
+ } else {
119
+ return _tile2.default;
120
+ }
121
+ }
122
+ }, {
123
+ key: "getConfigSchema",
124
+ value: function getConfigSchema() {
125
+ return {
126
+ properties: {
127
+ opacity: {
128
+ type: 'number',
129
+ minimum: 0,
130
+ maximum: 1
131
+ }
132
+ }
133
+ };
134
+ }
135
+ }, {
136
+ key: "getDefaultConfig",
137
+ value: function getDefaultConfig() {
138
+ return {};
139
+ }
140
+ }]);
141
+ return VectorLayer;
142
+ }(_BaseLayer2.default);
143
+
144
+ exports.default = VectorLayer;
145
+ //# sourceMappingURL=vectorLayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tile/tileFactory/vectorLayer.ts"],"names":["VectorLayer","layerType","pickedID","model","getModelType","layerModel","models","initModels","buildModels","polygonFillModel","lineFillModel","getPointModel","pointFillModel","layerData","getEncodedData","getLayerConfig","shape2d","item","find","fe","hasOwnProperty","shape","indexOf","pointTextModel","properties","opacity","type","minimum","maximum","BaseLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;;AAMA;;AACA;;AACA;;AACA;;;;;;IAEqBA,W;;;;;;;;;;;;;;;2FAKQ,I;uFACL,MAAKC,S;2FAEO,I;;;;;;WAElC,qBAAmB;AACjB,aAAO,KAAKC,QAAZ;AACD;;;WAED,qBAAmB;AACjB,aAAO,KAAKA,QAAZ;AACD;;;WAED,uBAAqB;AACnB,UAAMC,KAAK,GAAG,KAAKC,YAAL,EAAd;AACA,WAAKC,UAAL,GAAkB,IAAIF,KAAJ,CAAU,IAAV,CAAlB;AACA,WAAKG,MAAL,GAAc,KAAKD,UAAL,CAAgBE,UAAhB,EAAd;AACD;;;WAED,yBAAuB;AACrB,WAAKD,MAAL,GAAc,KAAKD,UAAL,CAAgBG,WAAhB,EAAd;AACD;;;WAED,wBAAyB;AACvB,cAAQ,KAAKP,SAAb;AACE,aAAK,cAAL;AACE,iBAAOQ,cAAP;;AACF,aAAK,WAAL;AACE,iBAAOC,aAAP;;AACF,aAAK,YAAL;AACE,iBAAO,KAAKC,aAAL,EAAP;;AACF;AACE,iBAAOC,cAAP;AARJ;AAUD;;;WAED,yBAA0B;AACxB,UAAMC,SAAS,GAAG,KAAKC,cAAL,EAAlB;;AACA,iCAAoB,KAAKC,cAAL,EAApB;AAAA,UAAQC,OAAR,wBAAQA,OAAR;;AACA,UAAMC,IAAI,GAAGJ,SAAS,CAACK,IAAV,CAAe,UAACC,EAAD,EAAwB;AAClD,eAAOA,EAAE,CAACC,cAAH,CAAkB,OAAlB,CAAP;AACD,OAFY,CAAb;;AAIA,UAAIH,IAAJ,EAAU;AACR,YAAMI,KAAK,GAAGJ,IAAI,CAACI,KAAnB;;AACA,YAAI,CAAAL,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEM,OAAT,CAAiBD,KAAjB,OAAsC,CAAC,CAA3C,EAA8C;AAC5C,iBAAOT,cAAP;AACD,SAFD,MAEO;AACL,iBAAOW,aAAP;AACD;AACF,OAPD,MAOO;AACL,eAAOX,cAAP;AACD;AACF;;;WAED,2BAA4B;AAC1B,aAAO;AACLY,QAAAA,UAAU,EAAE;AACVC,UAAAA,OAAO,EAAE;AACPC,YAAAA,IAAI,EAAE,QADC;AAEPC,YAAAA,OAAO,EAAE,CAFF;AAGPC,YAAAA,OAAO,EAAE;AAHF;AADC;AADP,OAAP;AASD;;;WAED,4BAA6B;AAC3B,aAAO,EAAP;AACD;;;EA1EsCC,mB","sourcesContent":["import { IEncodeFeature } from '@antv/l7-core';\nimport BaseLayer from '../../core/BaseLayer';\nimport {\n ILineLayerStyleOptions,\n IPointLayerStyleOptions,\n IPolygonLayerStyleOptions,\n} from '../../core/interface';\nimport lineFillModel from '../../line/models/tile';\nimport pointTextModel from '../../point/models/text';\nimport pointFillModel from '../../point/models/tile';\nimport polygonFillModel from '../../polygon/models/tile';\n\nexport default class VectorLayer extends BaseLayer<\n Partial<\n IPolygonLayerStyleOptions & ILineLayerStyleOptions & IPointLayerStyleOptions\n >\n> {\n public isVector: boolean = true;\n public type: string = this.layerType as string;\n // Tip: 单独被 tile 瓦片的渲染链路使用(用于优化性能)\n private pickedID: number | null = null;\n\n public getPickID() {\n return this.pickedID;\n }\n\n public setPickID() {\n return this.pickedID;\n }\n\n public buildModels() {\n const model = this.getModelType();\n this.layerModel = new model(this);\n this.models = this.layerModel.initModels();\n }\n\n public rebuildModels() {\n this.models = this.layerModel.buildModels();\n }\n\n protected getModelType() {\n switch (this.layerType) {\n case 'PolygonLayer':\n return polygonFillModel;\n case 'LineLayer':\n return lineFillModel;\n case 'PointLayer':\n return this.getPointModel();\n default:\n return pointFillModel;\n }\n }\n\n protected getPointModel() {\n const layerData = this.getEncodedData();\n const { shape2d } = this.getLayerConfig();\n const item = layerData.find((fe: IEncodeFeature) => {\n return fe.hasOwnProperty('shape');\n });\n // only support pointFill & pointText now\n if (item) {\n const shape = item.shape;\n if (shape2d?.indexOf(shape as string) !== -1) {\n return pointFillModel;\n } else {\n return pointTextModel;\n }\n } else {\n return pointFillModel;\n }\n }\n\n protected getConfigSchema() {\n return {\n properties: {\n opacity: {\n type: 'number',\n minimum: 0,\n maximum: 1,\n },\n },\n };\n }\n\n protected getDefaultConfig() {\n return {};\n }\n}\n"],"file":"vectorLayer.js"}
@@ -0,0 +1,408 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
+
18
+ var _l7Utils = require("@antv/l7-utils");
19
+
20
+ var _tileLayerManager = require("../manager/tileLayerManager");
21
+
22
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
+
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
+
26
+ var BaseTileLayer = function () {
27
+ function BaseTileLayer(_ref) {
28
+ var _parentSource$data;
29
+
30
+ var parent = _ref.parent,
31
+ rendererService = _ref.rendererService,
32
+ mapService = _ref.mapService,
33
+ layerService = _ref.layerService,
34
+ pickingService = _ref.pickingService;
35
+ (0, _classCallCheck2.default)(this, BaseTileLayer);
36
+ (0, _defineProperty2.default)(this, "type", 'baseTile');
37
+ (0, _defineProperty2.default)(this, "sourceLayer", void 0);
38
+ (0, _defineProperty2.default)(this, "parent", void 0);
39
+ (0, _defineProperty2.default)(this, "initedTileset", false);
40
+ (0, _defineProperty2.default)(this, "tilesetManager", void 0);
41
+ (0, _defineProperty2.default)(this, "tileLayerManager", void 0);
42
+ (0, _defineProperty2.default)(this, "lastViewStates", void 0);
43
+ (0, _defineProperty2.default)(this, "timer", void 0);
44
+ (0, _defineProperty2.default)(this, "mapService", void 0);
45
+ (0, _defineProperty2.default)(this, "layerService", void 0);
46
+ (0, _defineProperty2.default)(this, "pickColors", {
47
+ select: null,
48
+ active: null
49
+ });
50
+ var parentSource = parent.getSource();
51
+
52
+ var _ref2 = (parentSource === null || parentSource === void 0 ? void 0 : (_parentSource$data = parentSource.data) === null || _parentSource$data === void 0 ? void 0 : _parentSource$data.tilesetOptions) || {},
53
+ sourceLayer = _ref2.sourceLayer,
54
+ coords = _ref2.coords,
55
+ featureId = _ref2.featureId;
56
+
57
+ this.sourceLayer = sourceLayer;
58
+ this.parent = parent;
59
+ this.mapService = mapService;
60
+ this.layerService = layerService;
61
+ this.tileLayerManager = new _tileLayerManager.TileLayerManager(parent, mapService, rendererService, pickingService, layerService);
62
+ this.initTileSetManager();
63
+ this.bindSubLayerEvent();
64
+ this.bindSubLayerPick();
65
+ }
66
+
67
+ (0, _createClass2.default)(BaseTileLayer, [{
68
+ key: "children",
69
+ get: function get() {
70
+ return this.tileLayerManager.children;
71
+ }
72
+ }, {
73
+ key: "scale",
74
+ value: function scale(field, cfg) {
75
+ this.children.map(function (child) {
76
+ child.scale(field, cfg);
77
+ });
78
+ }
79
+ }, {
80
+ key: "render",
81
+ value: function render() {
82
+ if (this.tileLayerManager) {
83
+ this.tileLayerManager.render();
84
+ }
85
+ }
86
+ }, {
87
+ key: "clearPick",
88
+ value: function clearPick(type) {
89
+ if (type === 'mousemove') {
90
+ this.tileLayerManager.tilePickManager.clearPick();
91
+ }
92
+ }
93
+ }, {
94
+ key: "clearPickState",
95
+ value: function clearPickState() {
96
+ var _this = this;
97
+
98
+ this.children.filter(function (child) {
99
+ return child.inited && child.isVisible();
100
+ }).filter(function (child) {
101
+ return child.getCurrentSelectedId() !== null;
102
+ }).map(function (child) {
103
+ _this.selectFeature(child, new Uint8Array([0, 0, 0, 0]));
104
+
105
+ child.setCurrentSelectedId(null);
106
+ });
107
+ }
108
+ }, {
109
+ key: "pickLayers",
110
+ value: function pickLayers(target) {
111
+ return this.tileLayerManager.pickLayers(target);
112
+ }
113
+ }, {
114
+ key: "tileLoaded",
115
+ value: function tileLoaded(tile) {}
116
+ }, {
117
+ key: "tileError",
118
+ value: function tileError(error) {
119
+ console.warn('error:', error);
120
+ }
121
+ }, {
122
+ key: "tileUnLoad",
123
+ value: function tileUnLoad(tile) {
124
+ this.tileLayerManager.removeChilds(tile.layerIDList);
125
+ }
126
+ }, {
127
+ key: "tileUpdate",
128
+ value: function tileUpdate() {
129
+ var _this2 = this;
130
+
131
+ if (!this.tilesetManager) {
132
+ return;
133
+ }
134
+
135
+ this.tilesetManager.tiles.filter(function (tile) {
136
+ return tile.isLoaded;
137
+ }).map(function (tile) {
138
+ if (tile.layerIDList.length === 0) {
139
+ var _this2$tileLayerManag = _this2.tileLayerManager.createTile(tile),
140
+ layers = _this2$tileLayerManag.layers,
141
+ layerIDList = _this2$tileLayerManag.layerIDList;
142
+
143
+ tile.layerIDList = layerIDList;
144
+
145
+ _this2.tileLayerManager.addChilds(layers);
146
+ } else {
147
+ if (!tile.isVisibleChanged) {
148
+ return;
149
+ }
150
+
151
+ var _layers = _this2.tileLayerManager.getChilds(tile.layerIDList);
152
+
153
+ _this2.tileLayerManager.updateLayersConfig(_layers, 'visible', tile.isVisible);
154
+ }
155
+ });
156
+
157
+ if (this.tilesetManager.isLoaded) {
158
+ this.parent.emit('tiles-loaded', this.tilesetManager.currentTiles);
159
+ }
160
+ }
161
+ }, {
162
+ key: "setPickState",
163
+ value: function setPickState(layers) {
164
+ var _this3 = this;
165
+
166
+ if (this.pickColors.select) {
167
+ var selectedId = (0, _l7Utils.decodePickingColor)(this.pickColors.select);
168
+ layers.map(function (layer) {
169
+ _this3.selectFeature(layer, _this3.pickColors.select);
170
+
171
+ layer.setCurrentSelectedId(selectedId);
172
+ });
173
+ }
174
+
175
+ if (this.pickColors.active) {
176
+ var _selectedId = (0, _l7Utils.decodePickingColor)(this.pickColors.active);
177
+
178
+ layers.filter(function (layer) {
179
+ return layer.inited && layer.isVisible();
180
+ }).map(function (layer) {
181
+ layer.hooks.beforeHighlight.call(_this3.pickColors.active);
182
+ layer.setCurrentPickId(_selectedId);
183
+ });
184
+ }
185
+ }
186
+ }, {
187
+ key: "bindSubLayerPick",
188
+ value: function bindSubLayerPick() {
189
+ var _this4 = this;
190
+
191
+ this.tileLayerManager.tilePickManager.on('pick', function (e) {
192
+ var _e$pickedColors = (0, _slicedToArray2.default)(e.pickedColors, 3),
193
+ r = _e$pickedColors[0],
194
+ g = _e$pickedColors[1],
195
+ b = _e$pickedColors[2];
196
+
197
+ if (e.type === 'click') {
198
+ var restLayers = _this4.children.filter(function (child) {
199
+ return child.inited && child.isVisible() && child.isVector;
200
+ }).filter(function (child) {
201
+ return child !== e.layer;
202
+ });
203
+
204
+ _this4.setSelect(restLayers, [r, g, b]);
205
+ } else {
206
+ _this4.setHighlight([r, g, b]);
207
+ }
208
+ });
209
+ this.tileLayerManager.tilePickManager.on('unpick', function () {
210
+ _this4.pickColors.active = null;
211
+ });
212
+ }
213
+ }, {
214
+ key: "setHighlight",
215
+ value: function setHighlight(pickedColors) {
216
+ var pickId = (0, _l7Utils.decodePickingColor)(pickedColors);
217
+ this.pickColors.active = pickedColors;
218
+ this.children.filter(function (child) {
219
+ return child.inited && child.isVisible() && child.isVector;
220
+ }).filter(function (child) {
221
+ return child.getPickID() !== pickId;
222
+ }).map(function (child) {
223
+ child.setPickID(pickId);
224
+ child.hooks.beforeHighlight.call(pickedColors);
225
+ });
226
+ }
227
+ }, {
228
+ key: "setSelect",
229
+ value: function setSelect(layers, pickedColors) {
230
+ var _this5 = this;
231
+
232
+ var selectedId = (0, _l7Utils.decodePickingColor)(pickedColors);
233
+ layers.map(function (layer) {
234
+ if (layer.getCurrentSelectedId() === null || selectedId !== layer.getCurrentSelectedId()) {
235
+ _this5.selectFeature(layer, pickedColors);
236
+
237
+ layer.setCurrentSelectedId(selectedId);
238
+ _this5.pickColors.select = pickedColors;
239
+ } else {
240
+ _this5.selectFeature(layer, new Uint8Array([0, 0, 0, 0]));
241
+
242
+ layer.setCurrentSelectedId(null);
243
+ _this5.pickColors.select = null;
244
+ }
245
+ });
246
+ var renderList = this.layerService.getRenderList();
247
+ renderList.filter(function (layer) {
248
+ return layer.inited && !layer.isVector && layer.isVisible() && layer.needPick('click');
249
+ }).filter(function (layer) {
250
+ return layer.getCurrentSelectedId() !== null;
251
+ }).map(function (layer) {
252
+ _this5.selectFeature(layer, new Uint8Array([0, 0, 0, 0]));
253
+
254
+ layer.setCurrentSelectedId(null);
255
+ });
256
+ }
257
+ }, {
258
+ key: "selectFeature",
259
+ value: function selectFeature(layer, pickedColors) {
260
+ var _pickedColors = (0, _slicedToArray2.default)(pickedColors, 3),
261
+ r = _pickedColors[0],
262
+ g = _pickedColors[1],
263
+ b = _pickedColors[2];
264
+
265
+ layer.hooks.beforeSelect.call([r, g, b]);
266
+ }
267
+ }, {
268
+ key: "bindSubLayerEvent",
269
+ value: function bindSubLayerEvent() {
270
+ var _this6 = this;
271
+
272
+ this.parent.on('subLayerClick', function (e) {
273
+ _this6.parent.emit('click', _objectSpread({}, e));
274
+ });
275
+ this.parent.on('subLayerMouseMove', function (e) {
276
+ return _this6.parent.emit('mousemove', _objectSpread({}, e));
277
+ });
278
+ this.parent.on('subLayerMouseUp', function (e) {
279
+ return _this6.parent.emit('mouseup', _objectSpread({}, e));
280
+ });
281
+ this.parent.on('subLayerMouseEnter', function (e) {
282
+ return _this6.parent.emit('mouseenter', _objectSpread({}, e));
283
+ });
284
+ this.parent.on('subLayerMouseOut', function (e) {
285
+ return _this6.parent.emit('mouseout', _objectSpread({}, e));
286
+ });
287
+ this.parent.on('subLayerMouseDown', function (e) {
288
+ return _this6.parent.emit('mousedown', _objectSpread({}, e));
289
+ });
290
+ this.parent.on('subLayerContextmenu', function (e) {
291
+ return _this6.parent.emit('contextmenu', _objectSpread({}, e));
292
+ });
293
+ this.parent.on('subLayerUnClick', function (e) {
294
+ return _this6.parent.emit('unclick', _objectSpread({}, e));
295
+ });
296
+ this.parent.on('subLayerUnMouseMove', function (e) {
297
+ return _this6.parent.emit('unmousemove', _objectSpread({}, e));
298
+ });
299
+ this.parent.on('subLayerUnMouseUp', function (e) {
300
+ return _this6.parent.emit('unmouseup', _objectSpread({}, e));
301
+ });
302
+ this.parent.on('subLayerUnMouseDown', function (e) {
303
+ return _this6.parent.emit('unmousedown', _objectSpread({}, e));
304
+ });
305
+ this.parent.on('subLayerUnContextmenu', function (e) {
306
+ return _this6.parent.emit('uncontextmenu', _objectSpread({}, e));
307
+ });
308
+ }
309
+ }, {
310
+ key: "initTileSetManager",
311
+ value: function initTileSetManager() {
312
+ var _this$tilesetManager;
313
+
314
+ var source = this.parent.getSource();
315
+ this.tilesetManager = source.tileset;
316
+
317
+ if (!this.initedTileset) {
318
+ this.bindTilesetEvent();
319
+ this.initedTileset = true;
320
+ }
321
+
322
+ var _this$getCurrentView = this.getCurrentView(),
323
+ latLonBounds = _this$getCurrentView.latLonBounds,
324
+ zoom = _this$getCurrentView.zoom;
325
+
326
+ (_this$tilesetManager = this.tilesetManager) === null || _this$tilesetManager === void 0 ? void 0 : _this$tilesetManager.update(zoom, latLonBounds);
327
+ }
328
+ }, {
329
+ key: "bindTilesetEvent",
330
+ value: function bindTilesetEvent() {
331
+ var _this7 = this;
332
+
333
+ if (!this.tilesetManager) {
334
+ return;
335
+ }
336
+
337
+ this.tilesetManager.on('tile-loaded', function (tile) {});
338
+ this.tilesetManager.on('tile-unload', function (tile) {
339
+ _this7.tileUnLoad(tile);
340
+ });
341
+ this.tilesetManager.on('tile-error', function (error, tile) {
342
+ _this7.tileError(error);
343
+ });
344
+ this.tilesetManager.on('tile-update', function () {
345
+ _this7.tileUpdate();
346
+ });
347
+ this.mapService.on('mapchange', function (e) {
348
+ var _this7$getCurrentView = _this7.getCurrentView(),
349
+ latLonBounds = _this7$getCurrentView.latLonBounds,
350
+ zoom = _this7$getCurrentView.zoom;
351
+
352
+ if (_this7.mapService.version === 'GAODE1.x') {
353
+ var _this7$parent$getLaye = _this7.parent.getLayerConfig(),
354
+ visible = _this7$parent$getLaye.visible;
355
+
356
+ if (zoom < 3 && visible) {
357
+ _this7.parent.updateLayerConfig({
358
+ visible: false
359
+ });
360
+
361
+ _this7.layerService.updateLayerRenderList();
362
+ } else if (zoom >= 3 && !visible) {
363
+ _this7.parent.updateLayerConfig({
364
+ visible: true
365
+ });
366
+
367
+ _this7.layerService.updateLayerRenderList();
368
+ }
369
+ }
370
+
371
+ if (_this7.lastViewStates && _this7.lastViewStates.zoom === zoom && _this7.lastViewStates.latLonBounds.toString() === latLonBounds.toString()) {
372
+ return;
373
+ }
374
+
375
+ _this7.lastViewStates = {
376
+ zoom: zoom,
377
+ latLonBounds: latLonBounds
378
+ };
379
+
380
+ if (_this7.timer) {
381
+ clearTimeout(_this7.timer);
382
+ _this7.timer = null;
383
+ }
384
+
385
+ _this7.timer = setTimeout(function () {
386
+ var _this7$tilesetManager;
387
+
388
+ (_this7$tilesetManager = _this7.tilesetManager) === null || _this7$tilesetManager === void 0 ? void 0 : _this7$tilesetManager.update(zoom, latLonBounds);
389
+ }, 250);
390
+ });
391
+ }
392
+ }, {
393
+ key: "getCurrentView",
394
+ value: function getCurrentView() {
395
+ var bounds = this.mapService.getBounds();
396
+ var latLonBounds = [bounds[0][0], bounds[0][1], bounds[1][0], bounds[1][1]];
397
+ var zoom = this.mapService.getZoom();
398
+ return {
399
+ latLonBounds: latLonBounds,
400
+ zoom: zoom
401
+ };
402
+ }
403
+ }]);
404
+ return BaseTileLayer;
405
+ }();
406
+
407
+ exports.default = BaseTileLayer;
408
+ //# sourceMappingURL=baseTileLayer.js.map