@antv/l7-layers 2.17.4 → 2.17.5

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
@@ -1,86 +1,57 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
12
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
-
20
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
-
22
14
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
15
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
-
26
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
-
28
17
  var _l7Core = require("@antv/l7-core");
29
-
30
18
  var _l7Utils = require("@antv/l7-utils");
31
-
32
19
  var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
33
-
34
20
  var _interface = require("../../core/interface");
35
-
36
21
  var _triangulation = require("../../core/triangulation");
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/image/fillImage_frag.glsl' */
43
25
  // static pointLayer shader - not support animate
44
26
  var pointFillFrag = "uniform sampler2D u_texture;\nuniform vec2 u_textSize;\nuniform float u_opacity : 1;\n\n#pragma include \"sdf_2d\"\n#pragma include \"picking\"\nvarying vec2 v_uv; // \u672C\u8EAB\u7684 uv \u5750\u6807\nvarying vec2 v_Iconuv;\n\nvoid main() {\n\n vec2 pos = v_Iconuv / u_textSize + v_uv / u_textSize * 64.;\n gl_FragColor = texture2D(u_texture, pos);\n gl_FragColor.a *= u_opacity;\n\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
45
-
46
27
  /* babel-plugin-inline-import '../shaders/image/fillImage_vert.glsl' */
47
28
  var pointFillVert = "attribute vec4 a_Color;\nattribute vec3 a_Position;\nattribute vec3 a_Extrude;\nattribute float a_Size;\nattribute vec2 a_Uv;\nattribute float a_Rotate;\n\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nuniform mat2 u_RotateMatrix;\nuniform int u_size_unit;\n\nvarying vec2 v_uv; // \u672C\u8EAB\u7684 uv \u5750\u6807\nvarying vec2 v_Iconuv; // icon \u8D34\u56FE\u7684 uv \u5750\u6807\n\nuniform float u_raisingHeight: 0.0;\nuniform float u_heightfixed: 0.0;\nuniform float u_opacity : 1;\nuniform vec2 u_offsets;\n\n\n\n#pragma include \"projection\"\n#pragma include \"picking\"\n\nvoid main() {\n vec3 extrude = a_Extrude;\n v_uv = (a_Extrude.xy + 1.0)/2.0;\n v_uv.y = 1.0 - v_uv.y;\n v_Iconuv = a_Uv;\n\n\n highp float angle_sin = sin(a_Rotate);\n highp float angle_cos = cos(a_Rotate);\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n float newSize = a_Size;\n if(u_size_unit == 1) {\n newSize = newSize * u_PixelsPerMeter.z;\n }\n\n // vec2 offset = (u_RotateMatrix * extrude.xy * (a_Size) + textrueOffsets);\n vec2 offset = (rotation_matrix * u_RotateMatrix * extrude.xy * (newSize) + u_offsets);\n vec3 aPosition = a_Position;\n\n offset = project_pixel(offset);\n\n vec4 project_pos = project_position(vec4(aPosition.xy, 0.0, 1.0));\n float raisingHeight = u_raisingHeight;\n if(u_heightfixed < 1.0) { // height fixed\n raisingHeight = project_pixel(u_raisingHeight);\n } else {\n if(u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT || u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT_OFFSET) {\n float mapboxZoomScale = 4.0/pow(2.0, 21.0 - u_Zoom);\n raisingHeight = u_raisingHeight * mapboxZoomScale;\n }\n }\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp *vec4(project_pos.xy + offset, raisingHeight, 1.0);\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, raisingHeight, 1.0));\n }\n \n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, 0.0, 1.0));\n\n setPickingColor(a_PickingColor);\n}\n";
48
-
49
29
  var FillImageModel = /*#__PURE__*/function (_BaseModel) {
50
30
  (0, _inherits2.default)(FillImageModel, _BaseModel);
51
-
52
31
  var _super = _createSuper(FillImageModel);
53
-
54
32
  function FillImageModel() {
55
33
  var _this;
56
-
57
34
  (0, _classCallCheck2.default)(this, FillImageModel);
58
-
59
35
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
60
36
  args[_key] = arguments[_key];
61
37
  }
62
-
63
38
  _this = _super.call.apply(_super, [this].concat(args));
64
39
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meter2coord", 1);
65
40
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isMeter", false);
66
41
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "radian", 0);
67
42
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateTexture", function () {
68
43
  var createTexture2D = _this.rendererService.createTexture2D;
69
-
70
44
  if (_this.texture) {
71
45
  _this.texture.update({
72
46
  data: _this.iconService.getCanvas(),
73
47
  mag: 'linear',
74
48
  min: 'linear mipmap nearest',
75
49
  mipmap: true
76
- }); // 更新完纹理后在更新的图层的时候需要更新所有的图层
77
-
78
-
50
+ });
51
+ // 更新完纹理后在更新的图层的时候需要更新所有的图层
79
52
  _this.layerService.throttleRenderLayers();
80
-
81
53
  return;
82
54
  }
83
-
84
55
  _this.texture = createTexture2D({
85
56
  data: _this.iconService.getCanvas(),
86
57
  mag: _l7Core.gl.LINEAR,
@@ -93,24 +64,23 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
93
64
  });
94
65
  return _this;
95
66
  }
96
-
97
67
  (0, _createClass2.default)(FillImageModel, [{
98
68
  key: "getUninforms",
99
- value: // 旋转的弧度
69
+ value:
70
+ // 旋转的弧度
100
71
  function getUninforms() {
101
72
  var _ref = this.layer.getLayerConfig(),
102
- _ref$opacity = _ref.opacity,
103
- opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
104
- _ref$offsets = _ref.offsets,
105
- offsets = _ref$offsets === void 0 ? [0, 0] : _ref$offsets,
106
- rotation = _ref.rotation,
107
- _ref$raisingHeight = _ref.raisingHeight,
108
- raisingHeight = _ref$raisingHeight === void 0 ? 0.0 : _ref$raisingHeight,
109
- _ref$heightfixed = _ref.heightfixed,
110
- heightfixed = _ref$heightfixed === void 0 ? false : _ref$heightfixed,
111
- _ref$unit = _ref.unit,
112
- unit = _ref$unit === void 0 ? 'pixel' : _ref$unit;
113
-
73
+ _ref$opacity = _ref.opacity,
74
+ opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
75
+ _ref$offsets = _ref.offsets,
76
+ offsets = _ref$offsets === void 0 ? [0, 0] : _ref$offsets,
77
+ rotation = _ref.rotation,
78
+ _ref$raisingHeight = _ref.raisingHeight,
79
+ raisingHeight = _ref$raisingHeight === void 0 ? 0.0 : _ref$raisingHeight,
80
+ _ref$heightfixed = _ref.heightfixed,
81
+ heightfixed = _ref$heightfixed === void 0 ? false : _ref$heightfixed,
82
+ _ref$unit = _ref.unit,
83
+ unit = _ref$unit === void 0 ? 'pixel' : _ref$unit;
114
84
  if (this.rendererService.getDirty()) {
115
85
  this.texture.bind();
116
86
  }
@@ -121,15 +91,11 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
121
91
  * GAODE2.x -1
122
92
  * GAODE1.x -1
123
93
  */
124
-
125
-
126
94
  var rotateFlag = 1;
127
-
128
95
  if (this.mapService.version === 'GAODE2.x' || this.mapService.version === 'GAODE1.x') {
129
96
  rotateFlag = -1;
130
- } // 控制图标的旋转角度(绕 Z 轴旋转)
131
-
132
-
97
+ }
98
+ // 控制图标的旋转角度(绕 Z 轴旋转)
133
99
  this.radian = rotation !== undefined ? rotateFlag * Math.PI * rotation / 180 : rotateFlag * Math.PI * (this.mapService.getRotation() % 360) / 180;
134
100
  return {
135
101
  u_raisingHeight: Number(raisingHeight),
@@ -152,25 +118,20 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
152
118
  value: function () {
153
119
  var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
154
120
  return _regenerator.default.wrap(function _callee$(_context) {
155
- while (1) {
156
- switch (_context.prev = _context.next) {
157
- case 0:
158
- this.iconService.on('imageUpdate', this.updateTexture);
159
- this.updateTexture();
160
- return _context.abrupt("return", this.buildModels());
161
-
162
- case 3:
163
- case "end":
164
- return _context.stop();
165
- }
121
+ while (1) switch (_context.prev = _context.next) {
122
+ case 0:
123
+ this.iconService.on('imageUpdate', this.updateTexture);
124
+ this.updateTexture();
125
+ return _context.abrupt("return", this.buildModels());
126
+ case 3:
127
+ case "end":
128
+ return _context.stop();
166
129
  }
167
130
  }, _callee, this);
168
131
  }));
169
-
170
132
  function initModels() {
171
133
  return _initModels.apply(this, arguments);
172
134
  }
173
-
174
135
  return initModels;
175
136
  }()
176
137
  }, {
@@ -179,56 +140,49 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
179
140
  var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
180
141
  var model;
181
142
  return _regenerator.default.wrap(function _callee2$(_context2) {
182
- while (1) {
183
- switch (_context2.prev = _context2.next) {
184
- case 0:
185
- _context2.next = 2;
186
- return this.layer.buildLayerModel({
187
- moduleName: 'pointFillImage',
188
- vertexShader: pointFillVert,
189
- fragmentShader: pointFillFrag,
190
- triangulation: _triangulation.PointFillTriangulation,
191
- depth: {
192
- enable: false
193
- },
194
- cull: {
195
- enable: true,
196
- face: (0, _l7Utils.getCullFace)(this.mapService.version)
197
- }
198
- });
199
-
200
- case 2:
201
- model = _context2.sent;
202
- return _context2.abrupt("return", [model]);
203
-
204
- case 4:
205
- case "end":
206
- return _context2.stop();
207
- }
143
+ while (1) switch (_context2.prev = _context2.next) {
144
+ case 0:
145
+ _context2.next = 2;
146
+ return this.layer.buildLayerModel({
147
+ moduleName: 'pointFillImage',
148
+ vertexShader: pointFillVert,
149
+ fragmentShader: pointFillFrag,
150
+ triangulation: _triangulation.PointFillTriangulation,
151
+ depth: {
152
+ enable: false
153
+ },
154
+ cull: {
155
+ enable: true,
156
+ face: (0, _l7Utils.getCullFace)(this.mapService.version)
157
+ }
158
+ });
159
+ case 2:
160
+ model = _context2.sent;
161
+ return _context2.abrupt("return", [model]);
162
+ case 4:
163
+ case "end":
164
+ return _context2.stop();
208
165
  }
209
166
  }, _callee2, this);
210
167
  }));
211
-
212
168
  function buildModels() {
213
169
  return _buildModels.apply(this, arguments);
214
170
  }
215
-
216
171
  return buildModels;
217
172
  }()
218
173
  }, {
219
174
  key: "clearModels",
220
175
  value: function clearModels() {
221
176
  var _this$texture;
222
-
223
177
  this.iconService.off('imageUpdate', this.updateTexture);
224
178
  (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
225
- } // overwrite baseModel func
179
+ }
226
180
 
181
+ // overwrite baseModel func
227
182
  }, {
228
183
  key: "registerBuiltinAttributes",
229
184
  value: function registerBuiltinAttributes() {
230
185
  var _this2 = this;
231
-
232
186
  this.styleAttributeService.registerStyleAttribute({
233
187
  name: 'rotate',
234
188
  type: _l7Core.AttributeType.Attribute,
@@ -242,7 +196,7 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
242
196
  size: 1,
243
197
  update: function update(feature) {
244
198
  var _feature$rotate = feature.rotate,
245
- rotate = _feature$rotate === void 0 ? 0 : _feature$rotate;
199
+ rotate = _feature$rotate === void 0 ? 0 : _feature$rotate;
246
200
  return Array.isArray(rotate) ? [rotate[0]] : [rotate];
247
201
  }
248
202
  }
@@ -261,16 +215,13 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
261
215
  size: 2,
262
216
  update: function update(feature) {
263
217
  var iconMap = _this2.iconService.getIconMap();
264
-
265
218
  var shape = feature.shape;
266
-
267
219
  var _ref2 = iconMap[shape] || {
268
- x: -64,
269
- y: -64
270
- },
271
- x = _ref2.x,
272
- y = _ref2.y;
273
-
220
+ x: -64,
221
+ y: -64
222
+ },
223
+ x = _ref2.x,
224
+ y = _ref2.y;
274
225
  return [x, y];
275
226
  }
276
227
  }
@@ -293,8 +244,9 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
293
244
  return [extrude[extrudeIndex], extrude[extrudeIndex + 1], extrude[extrudeIndex + 2]];
294
245
  }
295
246
  }
296
- }); // point layer size;
247
+ });
297
248
 
249
+ // point layer size;
298
250
  this.styleAttributeService.registerStyleAttribute({
299
251
  name: 'size',
300
252
  type: _l7Core.AttributeType.Attribute,
@@ -309,7 +261,7 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
309
261
  size: 1,
310
262
  update: function update(feature) {
311
263
  var _feature$size = feature.size,
312
- size = _feature$size === void 0 ? 5 : _feature$size;
264
+ size = _feature$size === void 0 ? 5 : _feature$size;
313
265
  return Array.isArray(size) ? [size[0]] : [size];
314
266
  }
315
267
  }
@@ -318,5 +270,4 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
318
270
  }]);
319
271
  return FillImageModel;
320
272
  }(_BaseModel2.default);
321
-
322
273
  exports.default = FillImageModel;
@@ -1,81 +1,55 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
12
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
-
20
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
-
22
14
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
15
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
-
26
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
-
28
17
  var _l7Core = require("@antv/l7-core");
29
-
30
18
  var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
31
-
32
19
  var _triangulation = require("../../core/triangulation");
33
-
34
20
  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
21
  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
22
  /* babel-plugin-inline-import '../shaders/image_frag.glsl' */
39
23
  var pointImageFrag = "\nuniform sampler2D u_texture;\nvarying vec4 v_color;\nvarying vec2 v_uv;\nuniform vec2 u_textSize;\nuniform float u_opacity : 1;\n\n#pragma include \"picking\"\n\nvoid main(){\n vec2 pos = v_uv / u_textSize + gl_PointCoord / u_textSize * 64.;\n vec4 textureColor;\n\n // Y = 0.299R + 0.587G + 0.114B // \u4EAE\u5EA6\u63D0\u53D6\n \n textureColor = texture2D(u_texture, pos);\n\n // Tip: \u53BB\u9664\u8FB9\u7F18\u90E8\u5206 mipmap \u5BFC\u81F4\u7684\u6DF7\u5408\u53D8\u6697\n float fragmengTocenter = distance(vec2(0.5), gl_PointCoord);\n if(fragmengTocenter >= 0.5) {\n float luma = 0.299 * textureColor.r + 0.587 * textureColor.g + 0.114 * textureColor.b;\n textureColor.a *= luma;\n }\n \n \n\n if(all(lessThan(v_color, vec4(1.0+0.00001))) && all(greaterThan(v_color, vec4(1.0-0.00001))) || v_color==vec4(1.0)){\n gl_FragColor= textureColor;\n }else {\n gl_FragColor= step(0.01, textureColor.z) * v_color;\n }\n\n gl_FragColor.a = gl_FragColor.a * u_opacity;\n \n if (gl_FragColor.a < 0.01) {\n discard;\n }\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
40
-
41
24
  /* babel-plugin-inline-import '../shaders/image_vert.glsl' */
42
25
  var pointImageVert = "precision highp float;\nattribute vec3 a_Position;\nattribute vec4 a_Color;\nattribute vec2 a_Uv;\nattribute float a_Size;\nvarying vec4 v_color;\nvarying vec2 v_uv;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nuniform vec2 u_offsets;\n\nuniform float u_opacity : 1;\nuniform float u_raisingHeight: 0.0;\nuniform float u_heightfixed: 0.0;\n\n\n#pragma include \"projection\"\n#pragma include \"picking\"\n\nvoid main() {\n\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\n v_color = a_Color;\n v_uv = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n \n vec2 offset = project_pixel(u_offsets);\n\n float raisingHeight = u_raisingHeight;\n if(u_heightfixed < 1.0) { // false\n raisingHeight = project_pixel(u_raisingHeight);\n } else {\n if(u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT || u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT_OFFSET) {\n float mapboxZoomScale = 4.0/pow(2.0, 21.0 - u_Zoom);\n raisingHeight = u_raisingHeight * mapboxZoomScale;\n }\n }\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * vec4(project_pos.xy + offset, raisingHeight, 1.0);\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, raisingHeight, 1.0));\n }\n\n gl_PointSize = a_Size * 2.0 * u_DevicePixelRatio;\n setPickingColor(a_PickingColor);\n}\n";
43
-
44
26
  var ImageModel = /*#__PURE__*/function (_BaseModel) {
45
27
  (0, _inherits2.default)(ImageModel, _BaseModel);
46
-
47
28
  var _super = _createSuper(ImageModel);
48
-
49
29
  function ImageModel() {
50
30
  var _this;
51
-
52
31
  (0, _classCallCheck2.default)(this, ImageModel);
53
-
54
32
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
55
33
  args[_key] = arguments[_key];
56
34
  }
57
-
58
35
  _this = _super.call.apply(_super, [this].concat(args));
59
36
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateTexture", function () {
60
37
  var createTexture2D = _this.rendererService.createTexture2D;
61
-
62
38
  if (_this.texture) {
63
39
  _this.texture.update({
64
40
  data: _this.iconService.getCanvas(),
65
41
  mag: 'linear',
66
42
  min: 'linear mipmap nearest',
67
43
  mipmap: true
68
- }); // 更新完纹理后在更新的图层的时候需要更新所有的图层
44
+ });
45
+ // 更新完纹理后在更新的图层的时候需要更新所有的图层
69
46
  // this.layer.layerModelNeedUpdate = true;
70
-
71
-
72
47
  setTimeout(function () {
73
48
  // 延迟渲染
74
49
  _this.layerService.throttleRenderLayers();
75
50
  });
76
51
  return;
77
52
  }
78
-
79
53
  _this.texture = createTexture2D({
80
54
  data: _this.iconService.getCanvas(),
81
55
  mag: _l7Core.gl.LINEAR,
@@ -88,25 +62,23 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
88
62
  });
89
63
  return _this;
90
64
  }
91
-
92
65
  (0, _createClass2.default)(ImageModel, [{
93
66
  key: "getUninforms",
94
67
  value: function getUninforms() {
95
68
  var _ref = this.layer.getLayerConfig(),
96
- _ref$opacity = _ref.opacity,
97
- opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
98
- _ref$offsets = _ref.offsets,
99
- offsets = _ref$offsets === void 0 ? [0, 0] : _ref$offsets,
100
- _ref$raisingHeight = _ref.raisingHeight,
101
- raisingHeight = _ref$raisingHeight === void 0 ? 0 : _ref$raisingHeight,
102
- _ref$heightfixed = _ref.heightfixed,
103
- heightfixed = _ref$heightfixed === void 0 ? false : _ref$heightfixed; // ThreeJS 图层兼容
104
-
105
-
69
+ _ref$opacity = _ref.opacity,
70
+ opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
71
+ _ref$offsets = _ref.offsets,
72
+ offsets = _ref$offsets === void 0 ? [0, 0] : _ref$offsets,
73
+ _ref$raisingHeight = _ref.raisingHeight,
74
+ raisingHeight = _ref$raisingHeight === void 0 ? 0 : _ref$raisingHeight,
75
+ _ref$heightfixed = _ref.heightfixed,
76
+ heightfixed = _ref$heightfixed === void 0 ? false : _ref$heightfixed;
77
+
78
+ // ThreeJS 图层兼容
106
79
  if (this.rendererService.getDirty()) {
107
80
  this.texture.bind();
108
81
  }
109
-
110
82
  return {
111
83
  u_raisingHeight: Number(raisingHeight),
112
84
  u_heightfixed: Number(heightfixed),
@@ -121,32 +93,26 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
121
93
  value: function () {
122
94
  var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
123
95
  return _regenerator.default.wrap(function _callee$(_context) {
124
- while (1) {
125
- switch (_context.prev = _context.next) {
126
- case 0:
127
- this.iconService.on('imageUpdate', this.updateTexture);
128
- this.updateTexture();
129
- return _context.abrupt("return", this.buildModels());
130
-
131
- case 3:
132
- case "end":
133
- return _context.stop();
134
- }
96
+ while (1) switch (_context.prev = _context.next) {
97
+ case 0:
98
+ this.iconService.on('imageUpdate', this.updateTexture);
99
+ this.updateTexture();
100
+ return _context.abrupt("return", this.buildModels());
101
+ case 3:
102
+ case "end":
103
+ return _context.stop();
135
104
  }
136
105
  }, _callee, this);
137
106
  }));
138
-
139
107
  function initModels() {
140
108
  return _initModels.apply(this, arguments);
141
109
  }
142
-
143
110
  return initModels;
144
111
  }()
145
112
  }, {
146
113
  key: "clearModels",
147
114
  value: function clearModels() {
148
115
  var _this$texture;
149
-
150
116
  (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
151
117
  this.iconService.off('imageUpdate', this.updateTexture);
152
118
  }
@@ -156,44 +122,37 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
156
122
  var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
157
123
  var model;
158
124
  return _regenerator.default.wrap(function _callee2$(_context2) {
159
- while (1) {
160
- switch (_context2.prev = _context2.next) {
161
- case 0:
162
- _context2.next = 2;
163
- return this.layer.buildLayerModel({
164
- moduleName: 'pointImage',
165
- vertexShader: pointImageVert,
166
- fragmentShader: pointImageFrag,
167
- triangulation: _triangulation.PointImageTriangulation,
168
- depth: {
169
- enable: false
170
- },
171
- primitive: _l7Core.gl.POINTS
172
- });
173
-
174
- case 2:
175
- model = _context2.sent;
176
- return _context2.abrupt("return", [model]);
177
-
178
- case 4:
179
- case "end":
180
- return _context2.stop();
181
- }
125
+ while (1) switch (_context2.prev = _context2.next) {
126
+ case 0:
127
+ _context2.next = 2;
128
+ return this.layer.buildLayerModel({
129
+ moduleName: 'pointImage',
130
+ vertexShader: pointImageVert,
131
+ fragmentShader: pointImageFrag,
132
+ triangulation: _triangulation.PointImageTriangulation,
133
+ depth: {
134
+ enable: false
135
+ },
136
+ primitive: _l7Core.gl.POINTS
137
+ });
138
+ case 2:
139
+ model = _context2.sent;
140
+ return _context2.abrupt("return", [model]);
141
+ case 4:
142
+ case "end":
143
+ return _context2.stop();
182
144
  }
183
145
  }, _callee2, this);
184
146
  }));
185
-
186
147
  function buildModels() {
187
148
  return _buildModels.apply(this, arguments);
188
149
  }
189
-
190
150
  return buildModels;
191
151
  }()
192
152
  }, {
193
153
  key: "registerBuiltinAttributes",
194
154
  value: function registerBuiltinAttributes() {
195
155
  var _this2 = this;
196
-
197
156
  // point layer size;
198
157
  this.styleAttributeService.registerStyleAttribute({
199
158
  name: 'size',
@@ -209,12 +168,13 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
209
168
  size: 1,
210
169
  update: function update(feature) {
211
170
  var _feature$size = feature.size,
212
- size = _feature$size === void 0 ? 5 : _feature$size;
171
+ size = _feature$size === void 0 ? 5 : _feature$size;
213
172
  return Array.isArray(size) ? [size[0]] : [size];
214
173
  }
215
174
  }
216
- }); // point layer size;
175
+ });
217
176
 
177
+ // point layer size;
218
178
  this.styleAttributeService.registerStyleAttribute({
219
179
  name: 'uv',
220
180
  type: _l7Core.AttributeType.Attribute,
@@ -229,17 +189,13 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
229
189
  size: 2,
230
190
  update: function update(feature) {
231
191
  var iconMap = _this2.iconService.getIconMap();
232
-
233
192
  var shape = feature.shape;
234
-
235
193
  var _ref2 = iconMap[shape] || {
236
- x: -64,
237
- y: -64
238
- },
239
- x = _ref2.x,
240
- y = _ref2.y; // 非画布区域,默认的图标改为透明
241
-
242
-
194
+ x: -64,
195
+ y: -64
196
+ },
197
+ x = _ref2.x,
198
+ y = _ref2.y; // 非画布区域,默认的图标改为透明
243
199
  return [x, y];
244
200
  }
245
201
  }
@@ -248,5 +204,4 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
248
204
  }]);
249
205
  return ImageModel;
250
206
  }(_BaseModel2.default);
251
-
252
207
  exports.default = ImageModel;
@@ -1,33 +1,22 @@
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 _earthExtrude = _interopRequireDefault(require("./earthExtrude"));
11
-
12
9
  var _earthFill = _interopRequireDefault(require("./earthFill"));
13
-
14
10
  var _extrude = _interopRequireDefault(require("./extrude"));
15
-
16
11
  var _fill = _interopRequireDefault(require("./fill"));
17
-
18
12
  var _fillmage = _interopRequireDefault(require("./fillmage"));
19
-
20
13
  var _image = _interopRequireDefault(require("./image"));
21
-
22
14
  var _normal = _interopRequireDefault(require("./normal"));
23
-
24
15
  var _radar = _interopRequireDefault(require("./radar"));
25
-
26
16
  var _simplePoint = _interopRequireDefault(require("./simplePoint"));
27
-
28
17
  var _text = _interopRequireDefault(require("./text"));
29
-
30
18
  // earth
19
+
31
20
  var PointModels = {
32
21
  fillImage: _fillmage.default,
33
22
  fill: _fill.default,