@antv/l7-layers 2.17.4 → 2.17.6

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 (250) 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 +325 -483
  10. package/es/core/BaseModel.js +51 -80
  11. package/es/core/CommonStyleAttribute.js +2 -5
  12. package/es/core/LayerPickService.js +21 -32
  13. package/es/core/TextureService.js +0 -13
  14. package/es/core/interface.js +17 -24
  15. package/es/core/shape/Path.js +13 -20
  16. package/es/core/shape/extrude.js +27 -39
  17. package/es/core/triangulation.js +99 -136
  18. package/es/earth/index.js +9 -33
  19. package/es/earth/models/atmosphere.js +30 -54
  20. package/es/earth/models/base.js +47 -85
  21. package/es/earth/models/bloomsphere.js +30 -54
  22. package/es/earth/utils.js +9 -13
  23. package/es/heatmap/index.js +10 -40
  24. package/es/heatmap/models/grid.js +28 -52
  25. package/es/heatmap/models/grid3d.js +28 -52
  26. package/es/heatmap/models/heatmap.js +92 -149
  27. package/es/heatmap/models/hexagon.js +28 -52
  28. package/es/heatmap/triangulation.js +0 -4
  29. package/es/image/index.js +9 -28
  30. package/es/image/models/image.js +66 -100
  31. package/es/index.js +9 -17
  32. package/es/line/index.js +9 -35
  33. package/es/line/models/arc.js +63 -112
  34. package/es/line/models/arc_3d.js +58 -102
  35. package/es/line/models/earthArc_3d.js +60 -105
  36. package/es/line/models/flow.js +36 -60
  37. package/es/line/models/great_circle.js +53 -94
  38. package/es/line/models/line.js +92 -144
  39. package/es/line/models/linearline.js +42 -74
  40. package/es/line/models/simpleLine.js +38 -67
  41. package/es/line/models/wall.js +52 -92
  42. package/es/line/shaders/dash/line_dash_vert.glsl +1 -2
  43. package/es/line/shaders/line_frag.glsl +1 -3
  44. package/es/line/shaders/line_vert.glsl +2 -0
  45. package/es/line/shaders/linear/line_linear_frag.glsl +1 -1
  46. package/es/mask/index.js +9 -28
  47. package/es/mask/models/fill.js +29 -54
  48. package/es/plugins/DataMappingPlugin.js +78 -114
  49. package/es/plugins/DataSourcePlugin.js +45 -68
  50. package/es/plugins/FeatureScalePlugin.js +67 -122
  51. package/es/plugins/LayerAnimateStylePlugin.js +0 -5
  52. package/es/plugins/LayerMaskPlugin.js +3 -11
  53. package/es/plugins/LayerModelPlugin.js +69 -118
  54. package/es/plugins/LayerStylePlugin.js +4 -9
  55. package/es/plugins/LightingPlugin.js +12 -18
  56. package/es/plugins/MultiPassRendererPlugin.js +11 -16
  57. package/es/plugins/PixelPickingPlugin.js +12 -21
  58. package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
  59. package/es/plugins/ShaderUniformPlugin.js +13 -27
  60. package/es/plugins/UpdateModelPlugin.js +0 -5
  61. package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
  62. package/es/point/index.js +26 -78
  63. package/es/point/models/earthExtrude.js +58 -95
  64. package/es/point/models/earthFill.js +52 -80
  65. package/es/point/models/extrude.js +57 -94
  66. package/es/point/models/fill.js +56 -81
  67. package/es/point/models/fillmage.js +60 -100
  68. package/es/point/models/image.js +47 -83
  69. package/es/point/models/index.js +2 -2
  70. package/es/point/models/normal.js +30 -54
  71. package/es/point/models/radar.js +38 -63
  72. package/es/point/models/simplePoint.js +38 -62
  73. package/es/point/models/text.js +199 -296
  74. package/es/point/shape/extrude.js +4 -13
  75. package/es/polygon/index.js +11 -41
  76. package/es/polygon/models/extrude.js +87 -135
  77. package/es/polygon/models/fill.js +50 -79
  78. package/es/polygon/models/index.js +3 -2
  79. package/es/polygon/models/ocean.js +42 -76
  80. package/es/polygon/models/water.js +37 -71
  81. package/es/raster/buffers/triangulation.js +2 -4
  82. package/es/raster/index.js +9 -32
  83. package/es/raster/models/raster.js +80 -116
  84. package/es/raster/models/rasterRgb.js +84 -127
  85. package/es/raster/models/rasterTerrainRgb.js +56 -84
  86. package/es/tile/interaction/getRasterData.js +14 -20
  87. package/es/tile/interaction/utils.js +7 -9
  88. package/es/tile/manager/base.js +63 -96
  89. package/es/tile/service/TileLayerService.js +33 -55
  90. package/es/tile/service/TilePickService.js +26 -40
  91. package/es/tile/service/TileSourceService.js +3 -7
  92. package/es/tile/tileFactory/DebugTile.js +29 -46
  93. package/es/tile/tileFactory/ImageTile.js +20 -38
  94. package/es/tile/tileFactory/MaskTile.js +22 -43
  95. package/es/tile/tileFactory/RasterRGBTile.js +22 -42
  96. package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
  97. package/es/tile/tileFactory/RasterTile.js +30 -53
  98. package/es/tile/tileFactory/Tile.js +63 -97
  99. package/es/tile/tileFactory/VectorTile.js +41 -68
  100. package/es/tile/tileFactory/index.js +0 -11
  101. package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
  102. package/es/tile/tileFactory/util.js +0 -3
  103. package/es/tile/tileLayer/BaseLayer.js +105 -146
  104. package/es/tile/utils.js +1 -1
  105. package/es/utils/blend.js +0 -2
  106. package/es/utils/collision-index.js +9 -16
  107. package/es/utils/extrude_polyline.js +101 -149
  108. package/es/utils/grid-index.js +2 -27
  109. package/es/utils/identityScale.js +0 -8
  110. package/es/utils/layerData.js +30 -44
  111. package/es/utils/multiPassRender.js +11 -13
  112. package/es/utils/polylineNormal.js +31 -37
  113. package/es/utils/simpleLine.js +2 -16
  114. package/es/utils/stencil.js +2 -3
  115. package/es/utils/symbol-layout.js +27 -53
  116. package/es/wind/index.js +9 -29
  117. package/es/wind/models/utils.js +26 -51
  118. package/es/wind/models/wind.js +101 -147
  119. package/es/wind/models/windRender.js +53 -66
  120. package/lib/Geometry/index.js +9 -38
  121. package/lib/Geometry/models/billboard.js +51 -97
  122. package/lib/Geometry/models/index.js +0 -5
  123. package/lib/Geometry/models/plane.js +79 -151
  124. package/lib/Geometry/models/sprite.js +60 -127
  125. package/lib/canvas/index.js +10 -40
  126. package/lib/canvas/models/canvas.js +41 -101
  127. package/lib/canvas/models/index.js +0 -3
  128. package/lib/citybuliding/building.js +8 -35
  129. package/lib/citybuliding/models/build.js +57 -92
  130. package/lib/core/BaseLayer.js +325 -474
  131. package/lib/core/BaseModel.js +51 -90
  132. package/lib/core/CommonStyleAttribute.js +2 -7
  133. package/lib/core/LayerPickService.js +21 -37
  134. package/lib/core/TextureService.js +0 -16
  135. package/lib/core/interface.js +21 -31
  136. package/lib/core/schema.js +0 -1
  137. package/lib/core/shape/Path.js +14 -31
  138. package/lib/core/shape/extrude.js +27 -62
  139. package/lib/core/triangulation.js +98 -177
  140. package/lib/earth/index.js +9 -43
  141. package/lib/earth/models/atmosphere.js +30 -63
  142. package/lib/earth/models/base.js +47 -90
  143. package/lib/earth/models/bloomsphere.js +30 -63
  144. package/lib/earth/utils.js +7 -31
  145. package/lib/heatmap/index.js +10 -48
  146. package/lib/heatmap/models/grid.js +28 -60
  147. package/lib/heatmap/models/grid3d.js +28 -60
  148. package/lib/heatmap/models/heatmap.js +92 -166
  149. package/lib/heatmap/models/hexagon.js +28 -60
  150. package/lib/heatmap/models/index.js +0 -6
  151. package/lib/heatmap/triangulation.js +0 -5
  152. package/lib/image/index.js +9 -36
  153. package/lib/image/models/image.js +66 -109
  154. package/lib/image/models/index.js +0 -3
  155. package/lib/index.js +7 -61
  156. package/lib/line/index.js +9 -40
  157. package/lib/line/models/arc.js +61 -122
  158. package/lib/line/models/arc_3d.js +56 -113
  159. package/lib/line/models/earthArc_3d.js +58 -115
  160. package/lib/line/models/flow.js +36 -70
  161. package/lib/line/models/great_circle.js +53 -104
  162. package/lib/line/models/index.js +0 -11
  163. package/lib/line/models/line.js +90 -152
  164. package/lib/line/models/linearline.js +42 -86
  165. package/lib/line/models/simpleLine.js +38 -77
  166. package/lib/line/models/wall.js +52 -103
  167. package/lib/line/shaders/dash/line_dash_vert.glsl +1 -2
  168. package/lib/line/shaders/line_frag.glsl +1 -3
  169. package/lib/line/shaders/line_vert.glsl +2 -0
  170. package/lib/line/shaders/linear/line_linear_frag.glsl +1 -1
  171. package/lib/mask/index.js +9 -36
  172. package/lib/mask/models/fill.js +29 -63
  173. package/lib/mask/models/index.js +0 -3
  174. package/lib/plugins/DataMappingPlugin.js +78 -125
  175. package/lib/plugins/DataSourcePlugin.js +45 -76
  176. package/lib/plugins/FeatureScalePlugin.js +67 -138
  177. package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
  178. package/lib/plugins/LayerMaskPlugin.js +4 -17
  179. package/lib/plugins/LayerModelPlugin.js +70 -127
  180. package/lib/plugins/LayerStylePlugin.js +5 -14
  181. package/lib/plugins/LightingPlugin.js +12 -25
  182. package/lib/plugins/MultiPassRendererPlugin.js +11 -22
  183. package/lib/plugins/PixelPickingPlugin.js +12 -27
  184. package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
  185. package/lib/plugins/ShaderUniformPlugin.js +13 -34
  186. package/lib/plugins/UpdateModelPlugin.js +1 -10
  187. package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
  188. package/lib/point/index.js +26 -83
  189. package/lib/point/models/earthExtrude.js +58 -106
  190. package/lib/point/models/earthFill.js +52 -110
  191. package/lib/point/models/extrude.js +57 -103
  192. package/lib/point/models/fill.js +54 -90
  193. package/lib/point/models/fillmage.js +58 -107
  194. package/lib/point/models/image.js +47 -92
  195. package/lib/point/models/index.js +1 -12
  196. package/lib/point/models/normal.js +30 -64
  197. package/lib/point/models/radar.js +38 -72
  198. package/lib/point/models/simplePoint.js +38 -72
  199. package/lib/point/models/text.js +199 -305
  200. package/lib/point/shape/extrude.js +4 -20
  201. package/lib/polygon/index.js +11 -48
  202. package/lib/polygon/models/extrude.js +87 -146
  203. package/lib/polygon/models/fill.js +50 -89
  204. package/lib/polygon/models/index.js +2 -14
  205. package/lib/polygon/models/ocean.js +42 -88
  206. package/lib/polygon/models/water.js +37 -82
  207. package/lib/raster/buffers/triangulation.js +3 -7
  208. package/lib/raster/index.js +9 -40
  209. package/lib/raster/models/index.js +0 -5
  210. package/lib/raster/models/raster.js +80 -125
  211. package/lib/raster/models/rasterRgb.js +84 -139
  212. package/lib/raster/models/rasterTerrainRgb.js +56 -93
  213. package/lib/tile/interaction/getRasterData.js +14 -25
  214. package/lib/tile/interaction/utils.js +7 -19
  215. package/lib/tile/manager/base.js +63 -104
  216. package/lib/tile/service/TileLayerService.js +33 -60
  217. package/lib/tile/service/TilePickService.js +26 -48
  218. package/lib/tile/service/TileSourceService.js +2 -16
  219. package/lib/tile/style/utils.js +0 -3
  220. package/lib/tile/tileFactory/DebugTile.js +29 -54
  221. package/lib/tile/tileFactory/ImageTile.js +20 -46
  222. package/lib/tile/tileFactory/MaskTile.js +22 -51
  223. package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
  224. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
  225. package/lib/tile/tileFactory/RasterTile.js +30 -63
  226. package/lib/tile/tileFactory/Tile.js +63 -102
  227. package/lib/tile/tileFactory/VectorTile.js +41 -76
  228. package/lib/tile/tileFactory/index.js +0 -25
  229. package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
  230. package/lib/tile/tileFactory/util.js +0 -9
  231. package/lib/tile/tileLayer/BaseLayer.js +105 -153
  232. package/lib/tile/utils.js +1 -5
  233. package/lib/utils/blend.js +0 -5
  234. package/lib/utils/collision-index.js +9 -25
  235. package/lib/utils/extrude_polyline.js +101 -181
  236. package/lib/utils/grid-index.js +2 -28
  237. package/lib/utils/identityScale.js +0 -9
  238. package/lib/utils/layerData.js +30 -49
  239. package/lib/utils/multiPassRender.js +11 -16
  240. package/lib/utils/polylineNormal.js +31 -66
  241. package/lib/utils/simpleLine.js +2 -21
  242. package/lib/utils/stencil.js +0 -4
  243. package/lib/utils/symbol-layout.js +27 -55
  244. package/lib/wind/index.js +9 -37
  245. package/lib/wind/models/index.js +0 -3
  246. package/lib/wind/models/utils.js +26 -62
  247. package/lib/wind/models/wind.js +101 -157
  248. package/lib/wind/models/windRender.js +53 -71
  249. package/lib/wind/models/windShader.js +0 -1
  250. package/package.json +7 -7
package/es/earth/utils.js CHANGED
@@ -1,16 +1,17 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
- import { mat4, vec3 } from 'gl-matrix'; // 该文件专门记录地球模式的数值
3
- // 地球网格半径
2
+ import { mat4, vec3 } from 'gl-matrix';
3
+ // 该文件专门记录地球模式的数值
4
4
 
5
+ // 地球网格半径
5
6
  export var EARTH_RADIUS = 100;
6
7
  export var EARTH_SEGMENTS = 36;
7
8
  export var EARTH_RADIUS_OUTER = 40;
9
+
8
10
  /**
9
11
  * 角度转弧度
10
12
  * @param deg
11
13
  * @returns
12
14
  */
13
-
14
15
  function torad(deg) {
15
16
  return deg / 180 * Math.acos(-1);
16
17
  }
@@ -20,26 +21,25 @@ function torad(deg) {
20
21
  * @param latitude 纬度
21
22
  * @param radius 半径
22
23
  */
23
-
24
-
25
24
  export function lglt2xyz(lnglat) {
26
25
  // TODO: + Math.PI/2 是为了对齐坐标
27
26
  var lng = torad(lnglat[0]) + Math.PI / 2;
28
- var lat = torad(lnglat[1]); // TODO: 手动增加一些偏移,减轻面的冲突
27
+ var lat = torad(lnglat[1]);
29
28
 
29
+ // TODO: 手动增加一些偏移,减轻面的冲突
30
30
  var radius = EARTH_RADIUS + Math.random() * 0.4;
31
31
  var z = radius * Math.cos(lat) * Math.cos(lng);
32
32
  var x = radius * Math.cos(lat) * Math.sin(lng);
33
33
  var y = radius * Math.sin(lat);
34
34
  return [x, y, z];
35
35
  }
36
+
36
37
  /**
37
38
  * 构建地球球体网格
38
39
  * @param radius
39
40
  * @param opt
40
41
  * @returns
41
42
  */
42
-
43
43
  export function primitiveSphere(radius, opt) {
44
44
  var matRotY = mat4.create();
45
45
  var matRotZ = mat4.create();
@@ -56,11 +56,9 @@ export function primitiveSphere(radius, opt) {
56
56
  var positionsArr = [];
57
57
  var normalArr = [];
58
58
  var uvs = [];
59
-
60
59
  for (var zRotationStep = 0; zRotationStep <= totalZRotationSteps; zRotationStep++) {
61
60
  var normalizedZ = zRotationStep / totalZRotationSteps;
62
61
  var angleZ = normalizedZ * Math.PI;
63
-
64
62
  for (var yRotationStep = 0; yRotationStep <= totalYRotationSteps; yRotationStep++) {
65
63
  var normalizedY = yRotationStep / totalYRotationSteps;
66
64
  var angleY = normalizedY * Math.PI * 2;
@@ -75,15 +73,14 @@ export function primitiveSphere(radius, opt) {
75
73
  positionsArr.push.apply(positionsArr, _toConsumableArray(tmpVec3.slice()));
76
74
  vec3.normalize(tmpVec3, tmpVec3);
77
75
  normalArr.push.apply(normalArr, _toConsumableArray(tmpVec3.slice()));
78
- uvs.push([normalizedY, 1 - normalizedZ]); // position 和 uv 一起存储
76
+ uvs.push([normalizedY, 1 - normalizedZ]);
79
77
 
78
+ // position 和 uv 一起存储
80
79
  positionsArr.push(normalizedY, 1 - normalizedZ);
81
80
  }
82
-
83
81
  if (zRotationStep > 0) {
84
82
  var verticesCount = positions.length;
85
83
  var firstIndex = verticesCount - 2 * (totalYRotationSteps + 1);
86
-
87
84
  for (; firstIndex + totalYRotationSteps + 2 < verticesCount; firstIndex++) {
88
85
  indices.push([firstIndex, firstIndex + 1, firstIndex + totalYRotationSteps + 1]);
89
86
  indicesArr.push(firstIndex, firstIndex + 1, firstIndex + totalYRotationSteps + 1);
@@ -92,7 +89,6 @@ export function primitiveSphere(radius, opt) {
92
89
  }
93
90
  }
94
91
  }
95
-
96
92
  return {
97
93
  cells: indices,
98
94
  positions: positions,
@@ -7,71 +7,52 @@ import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConst
7
7
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
8
8
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
9
9
  import _regeneratorRuntime from "@babel/runtime/regenerator";
10
-
11
10
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
12
-
13
11
  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; } }
14
-
15
12
  import BaseLayer from "../core/BaseLayer";
16
13
  import HeatMapModels from "./models";
17
-
18
14
  var HeatMapLayer = /*#__PURE__*/function (_BaseLayer) {
19
15
  _inherits(HeatMapLayer, _BaseLayer);
20
-
21
16
  var _super = _createSuper(HeatMapLayer);
22
-
23
17
  function HeatMapLayer() {
24
18
  var _this;
25
-
26
19
  _classCallCheck(this, HeatMapLayer);
27
-
28
20
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
29
21
  args[_key] = arguments[_key];
30
22
  }
31
-
32
23
  _this = _super.call.apply(_super, [this].concat(args));
33
-
34
24
  _defineProperty(_assertThisInitialized(_this), "type", 'HeatMapLayer');
35
-
36
25
  return _this;
37
26
  }
38
-
39
27
  _createClass(HeatMapLayer, [{
40
28
  key: "buildModels",
41
29
  value: function () {
42
30
  var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
43
31
  var shape;
44
32
  return _regeneratorRuntime.wrap(function _callee$(_context) {
45
- while (1) {
46
- switch (_context.prev = _context.next) {
47
- case 0:
48
- shape = this.getModelType();
49
- this.layerModel = new HeatMapModels[shape](this);
50
- _context.next = 4;
51
- return this.initLayerModels();
52
-
53
- case 4:
54
- case "end":
55
- return _context.stop();
56
- }
33
+ while (1) switch (_context.prev = _context.next) {
34
+ case 0:
35
+ shape = this.getModelType();
36
+ this.layerModel = new HeatMapModels[shape](this);
37
+ _context.next = 4;
38
+ return this.initLayerModels();
39
+ case 4:
40
+ case "end":
41
+ return _context.stop();
57
42
  }
58
43
  }, _callee, this);
59
44
  }));
60
-
61
45
  function buildModels() {
62
46
  return _buildModels.apply(this, arguments);
63
47
  }
64
-
65
48
  return buildModels;
66
49
  }()
67
50
  }, {
68
51
  key: "renderModels",
69
52
  value: function renderModels() {
70
53
  var _this2 = this;
71
-
72
54
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
73
55
  var shape = this.getModelType();
74
-
75
56
  if (shape === 'heatmap') {
76
57
  if (this.layerModel) {
77
58
  this.layerModel.render(options); // 独立的渲染流程
@@ -79,11 +60,9 @@ var HeatMapLayer = /*#__PURE__*/function (_BaseLayer) {
79
60
 
80
61
  return this;
81
62
  }
82
-
83
63
  if (this.encodeDataLength <= 0 && !this.forceRender) {
84
64
  return this;
85
65
  }
86
-
87
66
  this.hooks.beforeRender.call();
88
67
  this.models.forEach(function (model) {
89
68
  return model.draw({
@@ -108,33 +87,24 @@ var HeatMapLayer = /*#__PURE__*/function (_BaseLayer) {
108
87
  key: "getModelType",
109
88
  value: function getModelType() {
110
89
  var _shapeAttribute$scale;
111
-
112
90
  var shapeAttribute = this.styleAttributeService.getLayerStyleAttribute('shape');
113
-
114
91
  var _this$getLayerConfig = this.getLayerConfig(),
115
- shape3d = _this$getLayerConfig.shape3d;
116
-
92
+ shape3d = _this$getLayerConfig.shape3d;
117
93
  var source = this.getSource();
118
94
  var sourceType = source.data.type;
119
95
  var shape = (shapeAttribute === null || shapeAttribute === void 0 ? void 0 : (_shapeAttribute$scale = shapeAttribute.scale) === null || _shapeAttribute$scale === void 0 ? void 0 : _shapeAttribute$scale.field) || 'heatmap';
120
-
121
96
  if (shape === 'heatmap' || shape === 'heatmap3d') {
122
97
  return 'heatmap';
123
98
  }
124
-
125
99
  if (sourceType === 'hexagon') {
126
100
  return (shape3d === null || shape3d === void 0 ? void 0 : shape3d.indexOf(shape)) === -1 ? 'hexagon' : 'grid3d';
127
101
  }
128
-
129
102
  if (sourceType === 'grid') {
130
103
  return (shape3d === null || shape3d === void 0 ? void 0 : shape3d.indexOf(shape)) === -1 ? 'grid' : 'grid3d';
131
104
  }
132
-
133
105
  return 'heatmap';
134
106
  }
135
107
  }]);
136
-
137
108
  return HeatMapLayer;
138
109
  }(BaseLayer);
139
-
140
110
  export { HeatMapLayer as default };
@@ -5,40 +5,29 @@ import _inherits from "@babel/runtime/helpers/esm/inherits";
5
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
6
6
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
7
7
  import _regeneratorRuntime from "@babel/runtime/regenerator";
8
-
9
8
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
-
11
9
  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; } }
12
-
13
10
  import { AttributeType, gl } from '@antv/l7-core';
14
11
  import BaseModel from "../../core/BaseModel";
15
12
  import { HeatmapGridTriangulation } from "../../core/triangulation";
16
-
17
13
  /* babel-plugin-inline-import '../shaders/grid_vert.glsl' */
18
14
  var heatmapGridVert = "precision highp float;\r\n// \u591A\u8FB9\u5F62\u9876\u70B9\u5750\u6807\r\nattribute vec3 a_Position;\r\n// \u591A\u8FB9\u5F62\u7ECF\u7EAC\u5EA6\u5750\u6807\r\nattribute vec3 a_Pos;\r\nattribute float a_Size;\r\nattribute vec4 a_Color;\r\nuniform vec2 u_radius;\r\nuniform float u_coverage: 0.9;\r\nuniform float u_angle: 0;\r\nuniform mat4 u_ModelMatrix;\r\nuniform mat4 u_Mvp;\r\nvarying vec4 v_color;\r\n\r\nuniform vec2 u_sceneCenterMercator;\r\n\r\n#pragma include \"projection\"\r\n#pragma include \"project\"\r\n#pragma include \"picking\"\r\n\r\nvoid main() {\r\n v_color = a_Color;\r\n\r\n mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));\r\n vec2 offset = a_Position.xy * u_radius * rotationMatrix * u_coverage ;\r\n // vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n // vec4 project_pos = project_position(vec4(lnglat, 0, 1.0));\r\n // gl_Position = project_common_position_to_clipspace(project_pos);\r\n\r\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\r\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n vec2 customLnglat = customProject(lnglat) - u_sceneCenterMercator; // \u5C06\u7ECF\u7EAC\u5EA6\u8F6C\u6362\u4E3A\u9AD8\u5FB72.0\u9700\u8981\u7684\u5E73\u9762\u5750\u6807\r\n vec4 project_pos = project_position(vec4(customLnglat, 0, 1.0));\r\n gl_Position = u_Mvp * (project_pos);\r\n } else {\r\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n vec4 project_pos = project_position(vec4(lnglat, 0, 1.0));\r\n gl_Position = project_common_position_to_clipspace(project_pos);\r\n }\r\n\r\n setPickingColor(a_PickingColor);\r\n}\r\n";
19
-
20
15
  /* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
21
16
  var heatmapGridFrag = "precision highp float;\nvarying vec4 v_color;\nuniform float u_opacity: 1;\n\n#pragma include \"picking\"\n\nvoid main() {\n gl_FragColor = v_color;\n gl_FragColor.a *= u_opacity;\n\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
22
-
23
17
  var GridModel = /*#__PURE__*/function (_BaseModel) {
24
18
  _inherits(GridModel, _BaseModel);
25
-
26
19
  var _super = _createSuper(GridModel);
27
-
28
20
  function GridModel() {
29
21
  _classCallCheck(this, GridModel);
30
-
31
22
  return _super.apply(this, arguments);
32
23
  }
33
-
34
24
  _createClass(GridModel, [{
35
25
  key: "getUninforms",
36
26
  value: function getUninforms() {
37
27
  var _ref = this.layer.getLayerConfig(),
38
- opacity = _ref.opacity,
39
- coverage = _ref.coverage,
40
- angle = _ref.angle;
41
-
28
+ opacity = _ref.opacity,
29
+ coverage = _ref.coverage,
30
+ angle = _ref.angle;
42
31
  return {
43
32
  u_opacity: opacity || 1.0,
44
33
  u_coverage: coverage || 0.9,
@@ -51,23 +40,18 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
51
40
  value: function () {
52
41
  var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
53
42
  return _regeneratorRuntime.wrap(function _callee$(_context) {
54
- while (1) {
55
- switch (_context.prev = _context.next) {
56
- case 0:
57
- return _context.abrupt("return", this.buildModels());
58
-
59
- case 1:
60
- case "end":
61
- return _context.stop();
62
- }
43
+ while (1) switch (_context.prev = _context.next) {
44
+ case 0:
45
+ return _context.abrupt("return", this.buildModels());
46
+ case 1:
47
+ case "end":
48
+ return _context.stop();
63
49
  }
64
50
  }, _callee, this);
65
51
  }));
66
-
67
52
  function initModels() {
68
53
  return _initModels.apply(this, arguments);
69
54
  }
70
-
71
55
  return initModels;
72
56
  }()
73
57
  }, {
@@ -76,37 +60,31 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
76
60
  var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
77
61
  var model;
78
62
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
79
- while (1) {
80
- switch (_context2.prev = _context2.next) {
81
- case 0:
82
- _context2.next = 2;
83
- return this.layer.buildLayerModel({
84
- moduleName: 'heatmapGrid',
85
- vertexShader: heatmapGridVert,
86
- fragmentShader: heatmapGridFrag,
87
- triangulation: HeatmapGridTriangulation,
88
- primitive: gl.TRIANGLES,
89
- depth: {
90
- enable: false
91
- }
92
- });
93
-
94
- case 2:
95
- model = _context2.sent;
96
- return _context2.abrupt("return", [model]);
97
-
98
- case 4:
99
- case "end":
100
- return _context2.stop();
101
- }
63
+ while (1) switch (_context2.prev = _context2.next) {
64
+ case 0:
65
+ _context2.next = 2;
66
+ return this.layer.buildLayerModel({
67
+ moduleName: 'heatmapGrid',
68
+ vertexShader: heatmapGridVert,
69
+ fragmentShader: heatmapGridFrag,
70
+ triangulation: HeatmapGridTriangulation,
71
+ primitive: gl.TRIANGLES,
72
+ depth: {
73
+ enable: false
74
+ }
75
+ });
76
+ case 2:
77
+ model = _context2.sent;
78
+ return _context2.abrupt("return", [model]);
79
+ case 4:
80
+ case "end":
81
+ return _context2.stop();
102
82
  }
103
83
  }, _callee2, this);
104
84
  }));
105
-
106
85
  function buildModels() {
107
86
  return _buildModels.apply(this, arguments);
108
87
  }
109
-
110
88
  return buildModels;
111
89
  }()
112
90
  }, {
@@ -132,8 +110,6 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
132
110
  });
133
111
  }
134
112
  }]);
135
-
136
113
  return GridModel;
137
114
  }(BaseModel);
138
-
139
115
  export { GridModel as default };
@@ -5,40 +5,29 @@ import _inherits from "@babel/runtime/helpers/esm/inherits";
5
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
6
6
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
7
7
  import _regeneratorRuntime from "@babel/runtime/regenerator";
8
-
9
8
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
-
11
9
  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; } }
12
-
13
10
  import { AttributeType, gl } from '@antv/l7-core';
14
11
  import BaseModel from "../../core/BaseModel";
15
12
  import { PointExtrudeTriangulation } from "../../core/triangulation";
16
-
17
13
  /* babel-plugin-inline-import '../shaders/hexagon_3d_vert.glsl' */
18
14
  var heatmapGrid3dVert = "precision highp float;\n// \u591A\u8FB9\u5F62\u9876\u70B9\u5750\u6807\nattribute vec3 a_Position;\n// \u591A\u8FB9\u5F62\u7ECF\u7EAC\u5EA6\u5750\u6807\nattribute vec3 a_Pos;\n\nattribute vec3 a_Normal;\nattribute float a_Size;\nattribute vec4 a_Color;\nuniform vec2 u_radius;\nuniform float u_coverage: 0.9;\nuniform float u_angle: 0;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nvarying vec4 v_color;\n\nuniform vec2 u_sceneCenterMercator;\n\n#pragma include \"projection\"\n#pragma include \"project\"\n#pragma include \"light\"\n#pragma include \"picking\"\n\n\nvoid main() {\n mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));\n vec2 offset =(vec2(a_Position.xy * u_radius * rotationMatrix * u_coverage));\n\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n \n vec2 lnglat = unProjectFlat(a_Pos.xy + offset); // \u7ECF\u7EAC\u5EA6\n vec2 customLnglat = customProject(lnglat) - u_sceneCenterMercator; // \u5C06\u7ECF\u7EAC\u5EA6\u8F6C\u6362\u4E3A\u9AD8\u5FB72.0\u9700\u8981\u7684\u5E73\u9762\u5750\u6807\n vec4 project_pos = project_position(vec4(customLnglat, a_Position.z * a_Size, 1.0));\n\n float lightWeight = calc_lighting(project_pos);\n v_color =vec4(a_Color.rgb*lightWeight, a_Color.w);\n \n gl_Position = u_Mvp * vec4(customLnglat , a_Position.z * a_Size, 1.0);\n } else {\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset); // \u5B9E\u9645\u7684\u7ECF\u7EAC\u5EA6\n vec4 project_pos = project_position(vec4(lnglat, a_Position.z * a_Size, 1.0));\n \n float lightWeight = calc_lighting(project_pos);\n v_color =vec4(a_Color.rgb*lightWeight, a_Color.w);\n \n gl_Position = project_common_position_to_clipspace(project_pos);\n }\n\n\n\n setPickingColor(a_PickingColor);\n}\n";
19
-
20
15
  /* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
21
16
  var heatmapGridFrag = "precision highp float;\nvarying vec4 v_color;\nuniform float u_opacity: 1;\n\n#pragma include \"picking\"\n\nvoid main() {\n gl_FragColor = v_color;\n gl_FragColor.a *= u_opacity;\n\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
22
-
23
17
  var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
24
18
  _inherits(Grid3DModel, _BaseModel);
25
-
26
19
  var _super = _createSuper(Grid3DModel);
27
-
28
20
  function Grid3DModel() {
29
21
  _classCallCheck(this, Grid3DModel);
30
-
31
22
  return _super.apply(this, arguments);
32
23
  }
33
-
34
24
  _createClass(Grid3DModel, [{
35
25
  key: "getUninforms",
36
26
  value: function getUninforms() {
37
27
  var _ref = this.layer.getLayerConfig(),
38
- opacity = _ref.opacity,
39
- coverage = _ref.coverage,
40
- angle = _ref.angle;
41
-
28
+ opacity = _ref.opacity,
29
+ coverage = _ref.coverage,
30
+ angle = _ref.angle;
42
31
  return {
43
32
  u_opacity: opacity || 1.0,
44
33
  u_coverage: coverage || 1.0,
@@ -51,23 +40,18 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
51
40
  value: function () {
52
41
  var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
53
42
  return _regeneratorRuntime.wrap(function _callee$(_context) {
54
- while (1) {
55
- switch (_context.prev = _context.next) {
56
- case 0:
57
- return _context.abrupt("return", this.buildModels());
58
-
59
- case 1:
60
- case "end":
61
- return _context.stop();
62
- }
43
+ while (1) switch (_context.prev = _context.next) {
44
+ case 0:
45
+ return _context.abrupt("return", this.buildModels());
46
+ case 1:
47
+ case "end":
48
+ return _context.stop();
63
49
  }
64
50
  }, _callee, this);
65
51
  }));
66
-
67
52
  function initModels() {
68
53
  return _initModels.apply(this, arguments);
69
54
  }
70
-
71
55
  return initModels;
72
56
  }()
73
57
  }, {
@@ -76,37 +60,31 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
76
60
  var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
77
61
  var model;
78
62
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
79
- while (1) {
80
- switch (_context2.prev = _context2.next) {
81
- case 0:
82
- _context2.next = 2;
83
- return this.layer.buildLayerModel({
84
- moduleName: 'heatmapGrid3d',
85
- vertexShader: heatmapGrid3dVert,
86
- fragmentShader: heatmapGridFrag,
87
- triangulation: PointExtrudeTriangulation,
88
- primitive: gl.TRIANGLES,
89
- depth: {
90
- enable: true
91
- }
92
- });
93
-
94
- case 2:
95
- model = _context2.sent;
96
- return _context2.abrupt("return", [model]);
97
-
98
- case 4:
99
- case "end":
100
- return _context2.stop();
101
- }
63
+ while (1) switch (_context2.prev = _context2.next) {
64
+ case 0:
65
+ _context2.next = 2;
66
+ return this.layer.buildLayerModel({
67
+ moduleName: 'heatmapGrid3d',
68
+ vertexShader: heatmapGrid3dVert,
69
+ fragmentShader: heatmapGridFrag,
70
+ triangulation: PointExtrudeTriangulation,
71
+ primitive: gl.TRIANGLES,
72
+ depth: {
73
+ enable: true
74
+ }
75
+ });
76
+ case 2:
77
+ model = _context2.sent;
78
+ return _context2.abrupt("return", [model]);
79
+ case 4:
80
+ case "end":
81
+ return _context2.stop();
102
82
  }
103
83
  }, _callee2, this);
104
84
  }));
105
-
106
85
  function buildModels() {
107
86
  return _buildModels.apply(this, arguments);
108
87
  }
109
-
110
88
  return buildModels;
111
89
  }()
112
90
  }, {
@@ -165,8 +143,6 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
165
143
  });
166
144
  }
167
145
  }]);
168
-
169
146
  return Grid3DModel;
170
147
  }(BaseModel);
171
-
172
148
  export { Grid3DModel as default };