@antv/l7-layers 2.15.2 → 2.15.3

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 (242) hide show
  1. package/es/Geometry/index.js +9 -31
  2. package/es/Geometry/models/billboard.js +51 -89
  3. package/es/Geometry/models/plane.js +81 -143
  4. package/es/Geometry/models/sprite.js +60 -118
  5. package/es/canvas/index.js +10 -33
  6. package/es/canvas/models/canvas.js +41 -97
  7. package/es/citybuliding/building.js +8 -27
  8. package/es/citybuliding/models/build.js +57 -82
  9. package/es/core/BaseLayer.js +320 -484
  10. package/es/core/BaseModel.js +97 -126
  11. package/es/core/LayerPickService.js +21 -32
  12. package/es/core/TextureService.js +0 -13
  13. package/es/core/interface.js +17 -24
  14. package/es/core/shape/Path.js +13 -20
  15. package/es/core/shape/extrude.js +10 -31
  16. package/es/core/triangulation.js +54 -114
  17. package/es/earth/index.js +9 -33
  18. package/es/earth/models/atmosphere.js +30 -54
  19. package/es/earth/models/base.js +47 -85
  20. package/es/earth/models/bloomsphere.js +30 -54
  21. package/es/earth/utils.js +9 -13
  22. package/es/heatmap/index.js +10 -40
  23. package/es/heatmap/models/grid.js +28 -52
  24. package/es/heatmap/models/grid3d.js +28 -52
  25. package/es/heatmap/models/heatmap.js +91 -146
  26. package/es/heatmap/models/hexagon.js +28 -52
  27. package/es/heatmap/triangulation.js +0 -4
  28. package/es/image/index.js +9 -28
  29. package/es/image/models/image.js +66 -100
  30. package/es/index.js +9 -17
  31. package/es/line/index.js +9 -34
  32. package/es/line/models/arc.js +66 -118
  33. package/es/line/models/arc_3d.js +60 -108
  34. package/es/line/models/earthArc_3d.js +63 -111
  35. package/es/line/models/great_circle.js +56 -100
  36. package/es/line/models/half.js +46 -77
  37. package/es/line/models/line.js +94 -148
  38. package/es/line/models/linearline.js +45 -80
  39. package/es/line/models/simpleLine.js +41 -74
  40. package/es/line/models/wall.js +52 -92
  41. package/es/mask/index.js +9 -28
  42. package/es/mask/models/fill.js +29 -54
  43. package/es/plugins/DataMappingPlugin.js +80 -117
  44. package/es/plugins/DataSourcePlugin.js +45 -68
  45. package/es/plugins/FeatureScalePlugin.js +67 -122
  46. package/es/plugins/LayerAnimateStylePlugin.js +0 -5
  47. package/es/plugins/LayerMaskPlugin.js +3 -11
  48. package/es/plugins/LayerModelPlugin.js +67 -104
  49. package/es/plugins/LayerStylePlugin.js +3 -9
  50. package/es/plugins/LightingPlugin.js +12 -18
  51. package/es/plugins/MultiPassRendererPlugin.js +11 -16
  52. package/es/plugins/PixelPickingPlugin.js +12 -21
  53. package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
  54. package/es/plugins/ShaderUniformPlugin.js +13 -27
  55. package/es/plugins/UpdateModelPlugin.js +0 -5
  56. package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
  57. package/es/point/index.js +26 -77
  58. package/es/point/models/earthExtrude.js +61 -102
  59. package/es/point/models/earthFill.js +57 -87
  60. package/es/point/models/extrude.js +60 -101
  61. package/es/point/models/fill.js +70 -100
  62. package/es/point/models/fillmage.js +63 -107
  63. package/es/point/models/image.js +48 -88
  64. package/es/point/models/index.js +2 -2
  65. package/es/point/models/normal.js +30 -54
  66. package/es/point/models/radar.js +40 -64
  67. package/es/point/models/simplePoint.js +41 -69
  68. package/es/point/models/text.js +197 -299
  69. package/es/point/shape/extrude.js +4 -13
  70. package/es/polygon/index.js +11 -40
  71. package/es/polygon/models/extrude.js +48 -92
  72. package/es/polygon/models/fill.js +54 -88
  73. package/es/polygon/models/index.js +3 -2
  74. package/es/polygon/models/ocean.js +42 -76
  75. package/es/polygon/models/water.js +37 -71
  76. package/es/raster/buffers/triangulation.js +2 -4
  77. package/es/raster/index.js +9 -32
  78. package/es/raster/models/raster.js +80 -116
  79. package/es/raster/models/rasterRgb.js +84 -127
  80. package/es/raster/models/rasterTerrainRgb.js +56 -84
  81. package/es/tile/interaction/getRasterData.js +14 -20
  82. package/es/tile/interaction/utils.js +7 -9
  83. package/es/tile/manager/base.js +63 -96
  84. package/es/tile/service/TileLayerService.js +30 -52
  85. package/es/tile/service/TilePickService.js +26 -40
  86. package/es/tile/service/TileSourceService.js +3 -7
  87. package/es/tile/tileFactory/DebugTile.js +28 -45
  88. package/es/tile/tileFactory/ImageTile.js +20 -38
  89. package/es/tile/tileFactory/MaskTile.js +22 -43
  90. package/es/tile/tileFactory/RasterRGBTile.js +22 -42
  91. package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
  92. package/es/tile/tileFactory/RasterTile.js +30 -53
  93. package/es/tile/tileFactory/Tile.js +63 -97
  94. package/es/tile/tileFactory/VectorTile.js +41 -68
  95. package/es/tile/tileFactory/index.js +0 -11
  96. package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
  97. package/es/tile/tileFactory/util.js +0 -3
  98. package/es/tile/tileLayer/BaseLayer.js +105 -146
  99. package/es/tile/utils.js +1 -1
  100. package/es/utils/blend.js +0 -2
  101. package/es/utils/collision-index.js +9 -16
  102. package/es/utils/dataMappingStyle.js +8 -18
  103. package/es/utils/extrude_polyline.js +101 -149
  104. package/es/utils/grid-index.js +2 -27
  105. package/es/utils/identityScale.js +0 -8
  106. package/es/utils/layerData.js +30 -44
  107. package/es/utils/multiPassRender.js +11 -13
  108. package/es/utils/polylineNormal.js +31 -37
  109. package/es/utils/simpleLine.js +2 -16
  110. package/es/utils/stencil.js +2 -3
  111. package/es/utils/symbol-layout.js +27 -53
  112. package/es/wind/index.js +9 -29
  113. package/es/wind/models/utils.js +26 -51
  114. package/es/wind/models/wind.js +101 -147
  115. package/es/wind/models/windRender.js +53 -66
  116. package/lib/Geometry/index.js +9 -38
  117. package/lib/Geometry/models/billboard.js +51 -97
  118. package/lib/Geometry/models/index.js +0 -5
  119. package/lib/Geometry/models/plane.js +79 -151
  120. package/lib/Geometry/models/sprite.js +60 -127
  121. package/lib/canvas/index.js +10 -40
  122. package/lib/canvas/models/canvas.js +41 -101
  123. package/lib/canvas/models/index.js +0 -3
  124. package/lib/citybuliding/building.js +8 -35
  125. package/lib/citybuliding/models/build.js +57 -92
  126. package/lib/core/BaseLayer.js +320 -478
  127. package/lib/core/BaseModel.js +97 -139
  128. package/lib/core/LayerPickService.js +21 -37
  129. package/lib/core/TextureService.js +0 -16
  130. package/lib/core/interface.js +21 -31
  131. package/lib/core/schema.js +0 -1
  132. package/lib/core/shape/Path.js +14 -31
  133. package/lib/core/shape/extrude.js +10 -54
  134. package/lib/core/triangulation.js +53 -153
  135. package/lib/earth/index.js +9 -43
  136. package/lib/earth/models/atmosphere.js +30 -63
  137. package/lib/earth/models/base.js +47 -90
  138. package/lib/earth/models/bloomsphere.js +30 -63
  139. package/lib/earth/utils.js +7 -31
  140. package/lib/heatmap/index.js +10 -48
  141. package/lib/heatmap/models/grid.js +28 -60
  142. package/lib/heatmap/models/grid3d.js +28 -60
  143. package/lib/heatmap/models/heatmap.js +91 -162
  144. package/lib/heatmap/models/hexagon.js +28 -60
  145. package/lib/heatmap/models/index.js +0 -6
  146. package/lib/heatmap/triangulation.js +0 -5
  147. package/lib/image/index.js +9 -36
  148. package/lib/image/models/image.js +66 -109
  149. package/lib/image/models/index.js +0 -3
  150. package/lib/index.js +7 -61
  151. package/lib/line/index.js +9 -40
  152. package/lib/line/models/arc.js +64 -128
  153. package/lib/line/models/arc_3d.js +58 -119
  154. package/lib/line/models/earthArc_3d.js +61 -122
  155. package/lib/line/models/great_circle.js +56 -111
  156. package/lib/line/models/half.js +46 -87
  157. package/lib/line/models/index.js +0 -11
  158. package/lib/line/models/line.js +92 -156
  159. package/lib/line/models/linearline.js +45 -92
  160. package/lib/line/models/simpleLine.js +41 -84
  161. package/lib/line/models/wall.js +52 -103
  162. package/lib/mask/index.js +9 -36
  163. package/lib/mask/models/fill.js +29 -63
  164. package/lib/mask/models/index.js +0 -3
  165. package/lib/plugins/DataMappingPlugin.js +80 -128
  166. package/lib/plugins/DataSourcePlugin.js +45 -76
  167. package/lib/plugins/FeatureScalePlugin.js +67 -138
  168. package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
  169. package/lib/plugins/LayerMaskPlugin.js +4 -17
  170. package/lib/plugins/LayerModelPlugin.js +68 -113
  171. package/lib/plugins/LayerStylePlugin.js +4 -14
  172. package/lib/plugins/LightingPlugin.js +12 -25
  173. package/lib/plugins/MultiPassRendererPlugin.js +11 -22
  174. package/lib/plugins/PixelPickingPlugin.js +12 -27
  175. package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
  176. package/lib/plugins/ShaderUniformPlugin.js +13 -34
  177. package/lib/plugins/UpdateModelPlugin.js +1 -10
  178. package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
  179. package/lib/point/index.js +26 -83
  180. package/lib/point/models/earthExtrude.js +61 -113
  181. package/lib/point/models/earthFill.js +57 -117
  182. package/lib/point/models/extrude.js +60 -111
  183. package/lib/point/models/fill.js +68 -109
  184. package/lib/point/models/fillmage.js +61 -115
  185. package/lib/point/models/image.js +48 -98
  186. package/lib/point/models/index.js +1 -12
  187. package/lib/point/models/normal.js +30 -64
  188. package/lib/point/models/radar.js +40 -74
  189. package/lib/point/models/simplePoint.js +41 -79
  190. package/lib/point/models/text.js +197 -307
  191. package/lib/point/shape/extrude.js +4 -20
  192. package/lib/polygon/index.js +11 -48
  193. package/lib/polygon/models/extrude.js +48 -103
  194. package/lib/polygon/models/fill.js +54 -98
  195. package/lib/polygon/models/index.js +2 -14
  196. package/lib/polygon/models/ocean.js +42 -88
  197. package/lib/polygon/models/water.js +37 -82
  198. package/lib/raster/buffers/triangulation.js +3 -7
  199. package/lib/raster/index.js +9 -40
  200. package/lib/raster/models/index.js +0 -5
  201. package/lib/raster/models/raster.js +80 -125
  202. package/lib/raster/models/rasterRgb.js +84 -139
  203. package/lib/raster/models/rasterTerrainRgb.js +56 -93
  204. package/lib/tile/interaction/getRasterData.js +14 -25
  205. package/lib/tile/interaction/utils.js +7 -19
  206. package/lib/tile/manager/base.js +63 -104
  207. package/lib/tile/service/TileLayerService.js +30 -57
  208. package/lib/tile/service/TilePickService.js +26 -48
  209. package/lib/tile/service/TileSourceService.js +2 -16
  210. package/lib/tile/style/utils.js +0 -3
  211. package/lib/tile/tileFactory/DebugTile.js +28 -53
  212. package/lib/tile/tileFactory/ImageTile.js +20 -46
  213. package/lib/tile/tileFactory/MaskTile.js +22 -51
  214. package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
  215. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
  216. package/lib/tile/tileFactory/RasterTile.js +30 -63
  217. package/lib/tile/tileFactory/Tile.js +63 -102
  218. package/lib/tile/tileFactory/VectorTile.js +41 -76
  219. package/lib/tile/tileFactory/index.js +0 -25
  220. package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
  221. package/lib/tile/tileFactory/util.js +0 -9
  222. package/lib/tile/tileLayer/BaseLayer.js +105 -153
  223. package/lib/tile/utils.js +1 -5
  224. package/lib/utils/blend.js +0 -5
  225. package/lib/utils/collision-index.js +9 -25
  226. package/lib/utils/dataMappingStyle.js +8 -19
  227. package/lib/utils/extrude_polyline.js +101 -181
  228. package/lib/utils/grid-index.js +2 -28
  229. package/lib/utils/identityScale.js +0 -9
  230. package/lib/utils/layerData.js +30 -49
  231. package/lib/utils/multiPassRender.js +11 -16
  232. package/lib/utils/polylineNormal.js +31 -66
  233. package/lib/utils/simpleLine.js +2 -21
  234. package/lib/utils/stencil.js +0 -4
  235. package/lib/utils/symbol-layout.js +27 -55
  236. package/lib/wind/index.js +9 -37
  237. package/lib/wind/models/index.js +0 -3
  238. package/lib/wind/models/utils.js +26 -62
  239. package/lib/wind/models/wind.js +101 -157
  240. package/lib/wind/models/windRender.js +53 -71
  241. package/lib/wind/models/windShader.js +0 -1
  242. package/package.json +7 -7
@@ -1,91 +1,62 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
-
18
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
-
20
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
-
22
14
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
23
-
24
15
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
25
-
26
16
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
27
-
28
17
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
29
-
30
18
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
-
32
19
  var _l7Core = require("@antv/l7-core");
33
-
34
20
  var _l7Maps = require("@antv/l7-maps");
35
-
36
21
  var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
37
-
38
22
  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); }; }
39
-
40
23
  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; } }
41
-
42
24
  /* babel-plugin-inline-import '../shaders/plane_frag.glsl' */
43
25
  var planeFrag = "\nuniform sampler2D u_texture;\nuniform float u_mapFlag;\nuniform float u_opacity;\n\nvarying vec3 v_Color;\nvarying vec2 v_uv;\nvarying float v_clip;\n\n#pragma include \"picking\"\nvoid main() {\n // gl_FragColor = vec4(v_Color, u_opacity);\n if(u_mapFlag > 0.0) {\n gl_FragColor = texture2D(u_texture, vec2(v_uv.x, 1.0 - v_uv.y));\n gl_FragColor.a *= u_opacity;\n } else {\n // gl_FragColor = vec4(v_uv, 0.0, u_opacity);\n gl_FragColor = vec4(v_Color, u_opacity);\n }\n gl_FragColor.a *= v_clip;\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
44
-
45
26
  /* babel-plugin-inline-import '../shaders/plane_vert.glsl' */
46
27
  var planeVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\n\nuniform mat4 u_Mvp;\nuniform float u_opacity;\nuniform float u_terrainClipHeight;\n\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nattribute vec3 a_Color;\n\nvarying vec3 v_Color;\nvarying vec2 v_uv;\nvarying float v_clip;\n\n#pragma include \"projection\"\n#pragma include \"picking\"\nvoid main() {\n v_Color = a_Color;\n v_uv = a_Uv;\n \n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n\n v_clip = 1.0;\n if(a_Position.z < u_terrainClipHeight) {\n v_clip = 0.0;\n }\n \n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n\n // float x = 1.0;\n // float y = 0.0;\n // float z = 0.0;\n // mat3 translateMatrix = mat3(\n // 1.0, 0.0, 0.0 \n // 0.0, 1.0, 0.0\n // -project_pos.x, -project_pos.y, 1.0\n // );\n // mat4 translateMatrix = mat4(\n // 1.0, 0.0, 0.0, 0.0 ,\n // 0.0, 1.0, 0.0, 0.0,\n // 0.0, 0.0, 1.0, 0.0,\n // 1.0, 0.0, 0.0, 1.0\n // );\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy, a_Position.z, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy, a_Position.z, 1.0));\n }\n\n setPickingColor(a_PickingColor);\n}\n";
47
-
48
28
  var PlaneModel = /*#__PURE__*/function (_BaseModel) {
49
29
  (0, _inherits2.default)(PlaneModel, _BaseModel);
50
-
51
30
  var _super = _createSuper(PlaneModel);
52
-
53
31
  function PlaneModel() {
54
32
  var _this;
55
-
56
33
  (0, _classCallCheck2.default)(this, PlaneModel);
57
-
58
34
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
59
35
  args[_key] = arguments[_key];
60
36
  }
61
-
62
37
  _this = _super.call.apply(_super, [this].concat(args));
63
38
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "terrainImageLoaded", false);
64
39
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "planeGeometryTriangulation", function () {
65
40
  var _this2;
66
-
67
41
  var _ref = _this.layer.getLayerConfig(),
68
- _ref$width = _ref.width,
69
- width = _ref$width === void 0 ? 1 : _ref$width,
70
- _ref$height = _ref.height,
71
- height = _ref$height === void 0 ? 1 : _ref$height,
72
- _ref$widthSegments = _ref.widthSegments,
73
- widthSegments = _ref$widthSegments === void 0 ? 1 : _ref$widthSegments,
74
- _ref$heightSegments = _ref.heightSegments,
75
- heightSegments = _ref$heightSegments === void 0 ? 1 : _ref$heightSegments,
76
- _ref$center = _ref.center,
77
- center = _ref$center === void 0 ? [120, 30] : _ref$center,
78
- terrainTexture = _ref.terrainTexture;
79
-
42
+ _ref$width = _ref.width,
43
+ width = _ref$width === void 0 ? 1 : _ref$width,
44
+ _ref$height = _ref.height,
45
+ height = _ref$height === void 0 ? 1 : _ref$height,
46
+ _ref$widthSegments = _ref.widthSegments,
47
+ widthSegments = _ref$widthSegments === void 0 ? 1 : _ref$widthSegments,
48
+ _ref$heightSegments = _ref.heightSegments,
49
+ heightSegments = _ref$heightSegments === void 0 ? 1 : _ref$heightSegments,
50
+ _ref$center = _ref.center,
51
+ center = _ref$center === void 0 ? [120, 30] : _ref$center,
52
+ terrainTexture = _ref.terrainTexture;
80
53
  var _this$initPlane = (_this2 = _this).initPlane.apply(_this2, [width, height, widthSegments, heightSegments].concat((0, _toConsumableArray2.default)(center))),
81
- indices = _this$initPlane.indices,
82
- positions = _this$initPlane.positions;
83
-
54
+ indices = _this$initPlane.indices,
55
+ positions = _this$initPlane.positions;
84
56
  if (terrainTexture) {
85
57
  // 存在地形贴图的时候会根据地形贴图对顶点进行偏移
86
58
  _this.loadTerrainTexture(positions, indices);
87
59
  }
88
-
89
60
  return {
90
61
  vertices: positions,
91
62
  indices: indices,
@@ -94,7 +65,6 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
94
65
  });
95
66
  return _this;
96
67
  }
97
-
98
68
  (0, _createClass2.default)(PlaneModel, [{
99
69
  key: "initPlane",
100
70
  value: function initPlane() {
@@ -115,43 +85,34 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
115
85
  var segmentHeight = height / gridY;
116
86
  var indices = [];
117
87
  var positions = [];
118
-
119
88
  for (var iy = 0; iy < gridY1; iy++) {
120
89
  var y = iy * segmentHeight - heightHalf;
121
-
122
90
  for (var ix = 0; ix < gridX1; ix++) {
123
91
  var x = ix * segmentWidth - widthHalf;
124
-
125
92
  if (this.mapService.version === _l7Maps.Version['GAODE2.x']) {
126
93
  // @ts-ignore
127
94
  var _ref2 = this.mapService.lngLatToCoord([x + lng, -y + lat]),
128
- _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
129
- a = _ref3[0],
130
- _b = _ref3[1];
131
-
95
+ _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
96
+ a = _ref3[0],
97
+ _b = _ref3[1];
132
98
  positions.push(a, _b, 0);
133
99
  } else {
134
100
  positions.push(x + lng, -y + lat, 0);
135
101
  }
136
-
137
102
  positions.push(ix / gridX);
138
103
  positions.push(1 - iy / gridY);
139
104
  }
140
105
  }
141
-
142
106
  for (var _iy = 0; _iy < gridY; _iy++) {
143
107
  for (var _ix = 0; _ix < gridX; _ix++) {
144
108
  var _a = _ix + gridX1 * _iy;
145
-
146
109
  var _b2 = _ix + gridX1 * (_iy + 1);
147
-
148
110
  var c = _ix + 1 + gridX1 * (_iy + 1);
149
111
  var d = _ix + 1 + gridX1 * _iy;
150
112
  indices.push(_a, _b2, d);
151
113
  indices.push(_b2, c, d);
152
114
  }
153
115
  }
154
-
155
116
  return {
156
117
  indices: indices,
157
118
  positions: positions
@@ -161,20 +122,17 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
161
122
  key: "getUninforms",
162
123
  value: function getUninforms() {
163
124
  var _ref4 = this.layer.getLayerConfig(),
164
- opacity = _ref4.opacity,
165
- mapTexture = _ref4.mapTexture,
166
- _ref4$terrainClipHeig = _ref4.terrainClipHeight,
167
- terrainClipHeight = _ref4$terrainClipHeig === void 0 ? 0 : _ref4$terrainClipHeig,
168
- terrainTexture = _ref4.terrainTexture;
169
-
125
+ opacity = _ref4.opacity,
126
+ mapTexture = _ref4.mapTexture,
127
+ _ref4$terrainClipHeig = _ref4.terrainClipHeight,
128
+ terrainClipHeight = _ref4$terrainClipHeig === void 0 ? 0 : _ref4$terrainClipHeig,
129
+ terrainTexture = _ref4.terrainTexture;
170
130
  if (this.mapTexture !== mapTexture) {
171
131
  var _this$texture;
172
-
173
132
  this.mapTexture = mapTexture;
174
133
  (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
175
134
  this.updateTexture(mapTexture);
176
135
  }
177
-
178
136
  return {
179
137
  u_opacity: opacity || 1,
180
138
  u_mapFlag: mapTexture ? 1 : 0,
@@ -186,7 +144,6 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
186
144
  key: "clearModels",
187
145
  value: function clearModels() {
188
146
  var _this$texture2;
189
-
190
147
  // @ts-ignore
191
148
  this.terrainImage = null;
192
149
  (_this$texture2 = this.texture) === null || _this$texture2 === void 0 ? void 0 : _this$texture2.destroy();
@@ -196,52 +153,44 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
196
153
  value: function () {
197
154
  var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
198
155
  var _ref5, mapTexture, createTexture2D, model;
199
-
200
156
  return _regenerator.default.wrap(function _callee$(_context) {
201
- while (1) {
202
- switch (_context.prev = _context.next) {
203
- case 0:
204
- _ref5 = this.layer.getLayerConfig(), mapTexture = _ref5.mapTexture;
205
- this.mapTexture = mapTexture;
206
- createTexture2D = this.rendererService.createTexture2D;
207
- this.texture = createTexture2D({
208
- height: 0,
209
- width: 0
210
- });
211
- this.updateTexture(mapTexture);
212
- _context.next = 7;
213
- return this.layer.buildLayerModel({
214
- moduleName: 'geometryPlane',
215
- vertexShader: planeVert,
216
- fragmentShader: planeFrag,
217
- triangulation: this.planeGeometryTriangulation,
218
- primitive: _l7Core.gl.TRIANGLES,
219
- depth: {
220
- enable: true
221
- },
222
- cull: {
223
- enable: true,
224
- face: _l7Core.gl.BACK // gl.FRONT | gl.BACK;
225
-
226
- }
227
- });
228
-
229
- case 7:
230
- model = _context.sent;
231
- return _context.abrupt("return", [model]);
232
-
233
- case 9:
234
- case "end":
235
- return _context.stop();
236
- }
157
+ while (1) switch (_context.prev = _context.next) {
158
+ case 0:
159
+ _ref5 = this.layer.getLayerConfig(), mapTexture = _ref5.mapTexture;
160
+ this.mapTexture = mapTexture;
161
+ createTexture2D = this.rendererService.createTexture2D;
162
+ this.texture = createTexture2D({
163
+ height: 0,
164
+ width: 0
165
+ });
166
+ this.updateTexture(mapTexture);
167
+ _context.next = 7;
168
+ return this.layer.buildLayerModel({
169
+ moduleName: 'geometryPlane',
170
+ vertexShader: planeVert,
171
+ fragmentShader: planeFrag,
172
+ triangulation: this.planeGeometryTriangulation,
173
+ primitive: _l7Core.gl.TRIANGLES,
174
+ depth: {
175
+ enable: true
176
+ },
177
+ cull: {
178
+ enable: true,
179
+ face: _l7Core.gl.BACK // gl.FRONT | gl.BACK;
180
+ }
181
+ });
182
+ case 7:
183
+ model = _context.sent;
184
+ return _context.abrupt("return", [model]);
185
+ case 9:
186
+ case "end":
187
+ return _context.stop();
237
188
  }
238
189
  }, _callee, this);
239
190
  }));
240
-
241
191
  function initModels() {
242
192
  return _initModels.apply(this, arguments);
243
193
  }
244
-
245
194
  return initModels;
246
195
  }()
247
196
  }, {
@@ -249,23 +198,18 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
249
198
  value: function () {
250
199
  var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
251
200
  return _regenerator.default.wrap(function _callee2$(_context2) {
252
- while (1) {
253
- switch (_context2.prev = _context2.next) {
254
- case 0:
255
- return _context2.abrupt("return", this.initModels());
256
-
257
- case 1:
258
- case "end":
259
- return _context2.stop();
260
- }
201
+ while (1) switch (_context2.prev = _context2.next) {
202
+ case 0:
203
+ return _context2.abrupt("return", this.initModels());
204
+ case 1:
205
+ case "end":
206
+ return _context2.stop();
261
207
  }
262
208
  }, _callee2, this);
263
209
  }));
264
-
265
210
  function buildModels() {
266
211
  return _buildModels.apply(this, arguments);
267
212
  }
268
-
269
213
  return buildModels;
270
214
  }()
271
215
  }, {
@@ -273,16 +217,15 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
273
217
  value: function createModelData(options) {
274
218
  if (options) {
275
219
  var _ref6 = this.layer.getLayerConfig(),
276
- oldwidthSegments = _ref6.widthSegments,
277
- oldheightSegments = _ref6.heightSegments,
278
- oldwidth = _ref6.width,
279
- oldheight = _ref6.height;
280
-
220
+ oldwidthSegments = _ref6.widthSegments,
221
+ oldheightSegments = _ref6.heightSegments,
222
+ oldwidth = _ref6.width,
223
+ oldheight = _ref6.height;
281
224
  var _ref7 = options,
282
- widthSegments = _ref7.widthSegments,
283
- heightSegments = _ref7.heightSegments,
284
- width = _ref7.width,
285
- height = _ref7.height;
225
+ widthSegments = _ref7.widthSegments,
226
+ heightSegments = _ref7.heightSegments,
227
+ width = _ref7.width,
228
+ height = _ref7.height;
286
229
  this.layer.style({
287
230
  widthSegments: widthSegments !== undefined ? widthSegments : oldwidthSegments,
288
231
  heightSegments: heightSegments !== undefined ? heightSegments : oldheightSegments,
@@ -290,7 +233,6 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
290
233
  height: height !== undefined ? height : oldheight
291
234
  });
292
235
  }
293
-
294
236
  var oldFeatures = this.layer.getEncodedData();
295
237
  var res = this.styleAttributeService.createAttributesAndIndices(oldFeatures, this.planeGeometryTriangulation);
296
238
  return res;
@@ -299,13 +241,10 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
299
241
  key: "updateTexture",
300
242
  value: function updateTexture(mapTexture) {
301
243
  var _this3 = this;
302
-
303
244
  var createTexture2D = this.rendererService.createTexture2D;
304
-
305
245
  if (mapTexture) {
306
246
  var img = new Image();
307
247
  img.crossOrigin = 'anonymous';
308
-
309
248
  img.onload = function () {
310
249
  _this3.texture = createTexture2D({
311
250
  data: img,
@@ -314,10 +253,8 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
314
253
  wrapS: _l7Core.gl.CLAMP_TO_EDGE,
315
254
  wrapT: _l7Core.gl.CLAMP_TO_EDGE
316
255
  });
317
-
318
256
  _this3.layerService.reRender();
319
257
  };
320
-
321
258
  img.src = mapTexture;
322
259
  } else {
323
260
  this.texture = createTexture2D({
@@ -332,7 +269,7 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
332
269
  var canvas = document.createElement('canvas');
333
270
  var ctx = canvas.getContext('2d');
334
271
  var width = img.width,
335
- height = img.height;
272
+ height = img.height;
336
273
  canvas.width = width;
337
274
  canvas.height = height;
338
275
  ctx.drawImage(img, 0, 0, width, height);
@@ -351,11 +288,9 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
351
288
  var gridY1 = gridY + 1;
352
289
  var widthStep = imgWidth / gridX;
353
290
  var heightStep = imgHeight / gridY;
354
-
355
291
  for (var iy = 0; iy < gridY1; iy++) {
356
292
  var imgIndexY = Math.floor(iy * heightStep);
357
293
  var imgLen = imgIndexY * imgWidth;
358
-
359
294
  for (var ix = 0; ix < gridX1; ix++) {
360
295
  var imgIndexX = Math.floor(ix * widthStep);
361
296
  var imgDataIndex = (imgLen + imgIndexX) * 4;
@@ -366,7 +301,6 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
366
301
  positions[z] = rgb2height(_r, _g, _b3);
367
302
  }
368
303
  }
369
-
370
304
  var oldFeatures = this.layer.getEncodedData();
371
305
  var modelData = this.styleAttributeService.createAttributesAndIndices(oldFeatures, function () {
372
306
  return {
@@ -378,26 +312,24 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
378
312
  this.layer.updateModelData(modelData);
379
313
  this.layerService.throttleRenderLayers();
380
314
  }
315
+
381
316
  /**
382
317
  * load terrain texture & offset attribute z
383
318
  */
384
-
385
319
  }, {
386
320
  key: "loadTerrainTexture",
387
321
  value: function loadTerrainTexture(positions, indices) {
388
322
  var _this4 = this;
389
-
390
323
  var _ref8 = this.layer.getLayerConfig(),
391
- _ref8$widthSegments = _ref8.widthSegments,
392
- widthSegments = _ref8$widthSegments === void 0 ? 1 : _ref8$widthSegments,
393
- _ref8$heightSegments = _ref8.heightSegments,
394
- heightSegments = _ref8$heightSegments === void 0 ? 1 : _ref8$heightSegments,
395
- terrainTexture = _ref8.terrainTexture,
396
- _ref8$rgb2height = _ref8.rgb2height,
397
- rgb2height = _ref8$rgb2height === void 0 ? function (r, g, b) {
398
- return r + g + b;
399
- } : _ref8$rgb2height;
400
-
324
+ _ref8$widthSegments = _ref8.widthSegments,
325
+ widthSegments = _ref8$widthSegments === void 0 ? 1 : _ref8$widthSegments,
326
+ _ref8$heightSegments = _ref8.heightSegments,
327
+ heightSegments = _ref8$heightSegments === void 0 ? 1 : _ref8$heightSegments,
328
+ terrainTexture = _ref8.terrainTexture,
329
+ _ref8$rgb2height = _ref8.rgb2height,
330
+ rgb2height = _ref8$rgb2height === void 0 ? function (r, g, b) {
331
+ return r + g + b;
332
+ } : _ref8$rgb2height;
401
333
  if (this.terrainImage) {
402
334
  // 若当前已经存在 image,直接进行偏移计算(LOD)
403
335
  if (this.terrainImageLoaded) {
@@ -412,17 +344,14 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
412
344
  var terrainImage = new Image();
413
345
  this.terrainImage = terrainImage;
414
346
  terrainImage.crossOrigin = 'anonymous';
415
-
416
347
  terrainImage.onload = function () {
417
- _this4.terrainImageLoaded = true; // 图片加载完,触发事件,可以进行地形图的顶点计算存储
418
-
348
+ _this4.terrainImageLoaded = true;
349
+ // 图片加载完,触发事件,可以进行地形图的顶点计算存储
419
350
  setTimeout(function () {
420
351
  return _this4.layer.emit('terrainImageLoaded', null);
421
352
  });
422
-
423
353
  _this4.translateVertex(positions, indices, terrainImage, widthSegments, heightSegments, rgb2height);
424
354
  };
425
-
426
355
  terrainImage.src = terrainTexture;
427
356
  }
428
357
  }
@@ -451,5 +380,4 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
451
380
  }]);
452
381
  return PlaneModel;
453
382
  }(_BaseModel2.default);
454
-
455
383
  exports.default = PlaneModel;