@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.
- package/es/Geometry/index.js +9 -31
- package/es/Geometry/models/billboard.js +51 -89
- package/es/Geometry/models/plane.js +81 -143
- package/es/Geometry/models/sprite.js +60 -118
- package/es/canvas/index.js +10 -33
- package/es/canvas/models/canvas.js +41 -97
- package/es/citybuliding/building.js +8 -27
- package/es/citybuliding/models/build.js +57 -82
- package/es/core/BaseLayer.js +325 -483
- package/es/core/BaseModel.js +51 -80
- package/es/core/CommonStyleAttribute.js +2 -5
- package/es/core/LayerPickService.js +21 -32
- package/es/core/TextureService.js +0 -13
- package/es/core/interface.js +17 -24
- package/es/core/shape/Path.js +13 -20
- package/es/core/shape/extrude.js +27 -39
- package/es/core/triangulation.js +99 -136
- package/es/earth/index.js +9 -33
- package/es/earth/models/atmosphere.js +30 -54
- package/es/earth/models/base.js +47 -85
- package/es/earth/models/bloomsphere.js +30 -54
- package/es/earth/utils.js +9 -13
- package/es/heatmap/index.js +10 -40
- package/es/heatmap/models/grid.js +28 -52
- package/es/heatmap/models/grid3d.js +28 -52
- package/es/heatmap/models/heatmap.js +92 -149
- package/es/heatmap/models/hexagon.js +28 -52
- package/es/heatmap/triangulation.js +0 -4
- package/es/image/index.js +9 -28
- package/es/image/models/image.js +66 -100
- package/es/index.js +9 -17
- package/es/line/index.js +9 -35
- package/es/line/models/arc.js +63 -112
- package/es/line/models/arc_3d.js +58 -102
- package/es/line/models/earthArc_3d.js +60 -105
- package/es/line/models/flow.js +36 -60
- package/es/line/models/great_circle.js +53 -94
- package/es/line/models/line.js +92 -144
- package/es/line/models/linearline.js +42 -74
- package/es/line/models/simpleLine.js +38 -67
- package/es/line/models/wall.js +52 -92
- package/es/line/shaders/dash/line_dash_vert.glsl +1 -2
- package/es/line/shaders/line_frag.glsl +1 -3
- package/es/line/shaders/line_vert.glsl +2 -0
- package/es/line/shaders/linear/line_linear_frag.glsl +1 -1
- package/es/mask/index.js +9 -28
- package/es/mask/models/fill.js +29 -54
- package/es/plugins/DataMappingPlugin.js +78 -114
- package/es/plugins/DataSourcePlugin.js +45 -68
- package/es/plugins/FeatureScalePlugin.js +67 -122
- package/es/plugins/LayerAnimateStylePlugin.js +0 -5
- package/es/plugins/LayerMaskPlugin.js +3 -11
- package/es/plugins/LayerModelPlugin.js +69 -118
- package/es/plugins/LayerStylePlugin.js +4 -9
- package/es/plugins/LightingPlugin.js +12 -18
- package/es/plugins/MultiPassRendererPlugin.js +11 -16
- package/es/plugins/PixelPickingPlugin.js +12 -21
- package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
- package/es/plugins/ShaderUniformPlugin.js +13 -27
- package/es/plugins/UpdateModelPlugin.js +0 -5
- package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
- package/es/point/index.js +26 -78
- package/es/point/models/earthExtrude.js +58 -95
- package/es/point/models/earthFill.js +52 -80
- package/es/point/models/extrude.js +57 -94
- package/es/point/models/fill.js +56 -81
- package/es/point/models/fillmage.js +60 -100
- package/es/point/models/image.js +47 -83
- package/es/point/models/index.js +2 -2
- package/es/point/models/normal.js +30 -54
- package/es/point/models/radar.js +38 -63
- package/es/point/models/simplePoint.js +38 -62
- package/es/point/models/text.js +199 -296
- package/es/point/shape/extrude.js +4 -13
- package/es/polygon/index.js +11 -41
- package/es/polygon/models/extrude.js +87 -135
- package/es/polygon/models/fill.js +50 -79
- package/es/polygon/models/index.js +3 -2
- package/es/polygon/models/ocean.js +42 -76
- package/es/polygon/models/water.js +37 -71
- package/es/raster/buffers/triangulation.js +2 -4
- package/es/raster/index.js +9 -32
- package/es/raster/models/raster.js +80 -116
- package/es/raster/models/rasterRgb.js +84 -127
- package/es/raster/models/rasterTerrainRgb.js +56 -84
- package/es/tile/interaction/getRasterData.js +14 -20
- package/es/tile/interaction/utils.js +7 -9
- package/es/tile/manager/base.js +63 -96
- package/es/tile/service/TileLayerService.js +33 -55
- package/es/tile/service/TilePickService.js +26 -40
- package/es/tile/service/TileSourceService.js +3 -7
- package/es/tile/tileFactory/DebugTile.js +29 -46
- package/es/tile/tileFactory/ImageTile.js +20 -38
- package/es/tile/tileFactory/MaskTile.js +22 -43
- package/es/tile/tileFactory/RasterRGBTile.js +22 -42
- package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
- package/es/tile/tileFactory/RasterTile.js +30 -53
- package/es/tile/tileFactory/Tile.js +63 -97
- package/es/tile/tileFactory/VectorTile.js +41 -68
- package/es/tile/tileFactory/index.js +0 -11
- package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
- package/es/tile/tileFactory/util.js +0 -3
- package/es/tile/tileLayer/BaseLayer.js +105 -146
- package/es/tile/utils.js +1 -1
- package/es/utils/blend.js +0 -2
- package/es/utils/collision-index.js +9 -16
- package/es/utils/extrude_polyline.js +101 -149
- package/es/utils/grid-index.js +2 -27
- package/es/utils/identityScale.js +0 -8
- package/es/utils/layerData.js +30 -44
- package/es/utils/multiPassRender.js +11 -13
- package/es/utils/polylineNormal.js +31 -37
- package/es/utils/simpleLine.js +2 -16
- package/es/utils/stencil.js +2 -3
- package/es/utils/symbol-layout.js +27 -53
- package/es/wind/index.js +9 -29
- package/es/wind/models/utils.js +26 -51
- package/es/wind/models/wind.js +101 -147
- package/es/wind/models/windRender.js +53 -66
- package/lib/Geometry/index.js +9 -38
- package/lib/Geometry/models/billboard.js +51 -97
- package/lib/Geometry/models/index.js +0 -5
- package/lib/Geometry/models/plane.js +79 -151
- package/lib/Geometry/models/sprite.js +60 -127
- package/lib/canvas/index.js +10 -40
- package/lib/canvas/models/canvas.js +41 -101
- package/lib/canvas/models/index.js +0 -3
- package/lib/citybuliding/building.js +8 -35
- package/lib/citybuliding/models/build.js +57 -92
- package/lib/core/BaseLayer.js +325 -474
- package/lib/core/BaseModel.js +51 -90
- package/lib/core/CommonStyleAttribute.js +2 -7
- package/lib/core/LayerPickService.js +21 -37
- package/lib/core/TextureService.js +0 -16
- package/lib/core/interface.js +21 -31
- package/lib/core/schema.js +0 -1
- package/lib/core/shape/Path.js +14 -31
- package/lib/core/shape/extrude.js +27 -62
- package/lib/core/triangulation.js +98 -177
- package/lib/earth/index.js +9 -43
- package/lib/earth/models/atmosphere.js +30 -63
- package/lib/earth/models/base.js +47 -90
- package/lib/earth/models/bloomsphere.js +30 -63
- package/lib/earth/utils.js +7 -31
- package/lib/heatmap/index.js +10 -48
- package/lib/heatmap/models/grid.js +28 -60
- package/lib/heatmap/models/grid3d.js +28 -60
- package/lib/heatmap/models/heatmap.js +92 -166
- package/lib/heatmap/models/hexagon.js +28 -60
- package/lib/heatmap/models/index.js +0 -6
- package/lib/heatmap/triangulation.js +0 -5
- package/lib/image/index.js +9 -36
- package/lib/image/models/image.js +66 -109
- package/lib/image/models/index.js +0 -3
- package/lib/index.js +7 -61
- package/lib/line/index.js +9 -40
- package/lib/line/models/arc.js +61 -122
- package/lib/line/models/arc_3d.js +56 -113
- package/lib/line/models/earthArc_3d.js +58 -115
- package/lib/line/models/flow.js +36 -70
- package/lib/line/models/great_circle.js +53 -104
- package/lib/line/models/index.js +0 -11
- package/lib/line/models/line.js +90 -152
- package/lib/line/models/linearline.js +42 -86
- package/lib/line/models/simpleLine.js +38 -77
- package/lib/line/models/wall.js +52 -103
- package/lib/line/shaders/dash/line_dash_vert.glsl +1 -2
- package/lib/line/shaders/line_frag.glsl +1 -3
- package/lib/line/shaders/line_vert.glsl +2 -0
- package/lib/line/shaders/linear/line_linear_frag.glsl +1 -1
- package/lib/mask/index.js +9 -36
- package/lib/mask/models/fill.js +29 -63
- package/lib/mask/models/index.js +0 -3
- package/lib/plugins/DataMappingPlugin.js +78 -125
- package/lib/plugins/DataSourcePlugin.js +45 -76
- package/lib/plugins/FeatureScalePlugin.js +67 -138
- package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
- package/lib/plugins/LayerMaskPlugin.js +4 -17
- package/lib/plugins/LayerModelPlugin.js +70 -127
- package/lib/plugins/LayerStylePlugin.js +5 -14
- package/lib/plugins/LightingPlugin.js +12 -25
- package/lib/plugins/MultiPassRendererPlugin.js +11 -22
- package/lib/plugins/PixelPickingPlugin.js +12 -27
- package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
- package/lib/plugins/ShaderUniformPlugin.js +13 -34
- package/lib/plugins/UpdateModelPlugin.js +1 -10
- package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
- package/lib/point/index.js +26 -83
- package/lib/point/models/earthExtrude.js +58 -106
- package/lib/point/models/earthFill.js +52 -110
- package/lib/point/models/extrude.js +57 -103
- package/lib/point/models/fill.js +54 -90
- package/lib/point/models/fillmage.js +58 -107
- package/lib/point/models/image.js +47 -92
- package/lib/point/models/index.js +1 -12
- package/lib/point/models/normal.js +30 -64
- package/lib/point/models/radar.js +38 -72
- package/lib/point/models/simplePoint.js +38 -72
- package/lib/point/models/text.js +199 -305
- package/lib/point/shape/extrude.js +4 -20
- package/lib/polygon/index.js +11 -48
- package/lib/polygon/models/extrude.js +87 -146
- package/lib/polygon/models/fill.js +50 -89
- package/lib/polygon/models/index.js +2 -14
- package/lib/polygon/models/ocean.js +42 -88
- package/lib/polygon/models/water.js +37 -82
- package/lib/raster/buffers/triangulation.js +3 -7
- package/lib/raster/index.js +9 -40
- package/lib/raster/models/index.js +0 -5
- package/lib/raster/models/raster.js +80 -125
- package/lib/raster/models/rasterRgb.js +84 -139
- package/lib/raster/models/rasterTerrainRgb.js +56 -93
- package/lib/tile/interaction/getRasterData.js +14 -25
- package/lib/tile/interaction/utils.js +7 -19
- package/lib/tile/manager/base.js +63 -104
- package/lib/tile/service/TileLayerService.js +33 -60
- package/lib/tile/service/TilePickService.js +26 -48
- package/lib/tile/service/TileSourceService.js +2 -16
- package/lib/tile/style/utils.js +0 -3
- package/lib/tile/tileFactory/DebugTile.js +29 -54
- package/lib/tile/tileFactory/ImageTile.js +20 -46
- package/lib/tile/tileFactory/MaskTile.js +22 -51
- package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
- package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
- package/lib/tile/tileFactory/RasterTile.js +30 -63
- package/lib/tile/tileFactory/Tile.js +63 -102
- package/lib/tile/tileFactory/VectorTile.js +41 -76
- package/lib/tile/tileFactory/index.js +0 -25
- package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
- package/lib/tile/tileFactory/util.js +0 -9
- package/lib/tile/tileLayer/BaseLayer.js +105 -153
- package/lib/tile/utils.js +1 -5
- package/lib/utils/blend.js +0 -5
- package/lib/utils/collision-index.js +9 -25
- package/lib/utils/extrude_polyline.js +101 -181
- package/lib/utils/grid-index.js +2 -28
- package/lib/utils/identityScale.js +0 -9
- package/lib/utils/layerData.js +30 -49
- package/lib/utils/multiPassRender.js +11 -16
- package/lib/utils/polylineNormal.js +31 -66
- package/lib/utils/simpleLine.js +2 -21
- package/lib/utils/stencil.js +0 -4
- package/lib/utils/symbol-layout.js +27 -55
- package/lib/wind/index.js +9 -37
- package/lib/wind/models/index.js +0 -3
- package/lib/wind/models/utils.js +26 -62
- package/lib/wind/models/wind.js +101 -157
- package/lib/wind/models/windRender.js +53 -71
- package/lib/wind/models/windShader.js +0 -1
- package/package.json +7 -7
|
@@ -1,60 +1,40 @@
|
|
|
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 _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
-
|
|
20
13
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
-
|
|
22
14
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
-
|
|
24
15
|
var _l7Core = require("@antv/l7-core");
|
|
25
|
-
|
|
26
16
|
var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
|
|
27
|
-
|
|
28
17
|
var _triangulation = require("../../core/triangulation");
|
|
29
|
-
|
|
30
18
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
31
|
-
|
|
32
19
|
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; } }
|
|
33
|
-
|
|
34
20
|
/* babel-plugin-inline-import '../shaders/hexagon_3d_vert.glsl' */
|
|
35
21
|
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";
|
|
36
|
-
|
|
37
22
|
/* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
|
|
38
23
|
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";
|
|
39
|
-
|
|
40
24
|
var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
41
25
|
(0, _inherits2.default)(Grid3DModel, _BaseModel);
|
|
42
|
-
|
|
43
26
|
var _super = _createSuper(Grid3DModel);
|
|
44
|
-
|
|
45
27
|
function Grid3DModel() {
|
|
46
28
|
(0, _classCallCheck2.default)(this, Grid3DModel);
|
|
47
29
|
return _super.apply(this, arguments);
|
|
48
30
|
}
|
|
49
|
-
|
|
50
31
|
(0, _createClass2.default)(Grid3DModel, [{
|
|
51
32
|
key: "getUninforms",
|
|
52
33
|
value: function getUninforms() {
|
|
53
34
|
var _ref = this.layer.getLayerConfig(),
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
35
|
+
opacity = _ref.opacity,
|
|
36
|
+
coverage = _ref.coverage,
|
|
37
|
+
angle = _ref.angle;
|
|
58
38
|
return {
|
|
59
39
|
u_opacity: opacity || 1.0,
|
|
60
40
|
u_coverage: coverage || 1.0,
|
|
@@ -67,23 +47,18 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
67
47
|
value: function () {
|
|
68
48
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
69
49
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
70
|
-
while (1) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
case "end":
|
|
77
|
-
return _context.stop();
|
|
78
|
-
}
|
|
50
|
+
while (1) switch (_context.prev = _context.next) {
|
|
51
|
+
case 0:
|
|
52
|
+
return _context.abrupt("return", this.buildModels());
|
|
53
|
+
case 1:
|
|
54
|
+
case "end":
|
|
55
|
+
return _context.stop();
|
|
79
56
|
}
|
|
80
57
|
}, _callee, this);
|
|
81
58
|
}));
|
|
82
|
-
|
|
83
59
|
function initModels() {
|
|
84
60
|
return _initModels.apply(this, arguments);
|
|
85
61
|
}
|
|
86
|
-
|
|
87
62
|
return initModels;
|
|
88
63
|
}()
|
|
89
64
|
}, {
|
|
@@ -92,37 +67,31 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
92
67
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
93
68
|
var model;
|
|
94
69
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
95
|
-
while (1) {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
case 4:
|
|
115
|
-
case "end":
|
|
116
|
-
return _context2.stop();
|
|
117
|
-
}
|
|
70
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
71
|
+
case 0:
|
|
72
|
+
_context2.next = 2;
|
|
73
|
+
return this.layer.buildLayerModel({
|
|
74
|
+
moduleName: 'heatmapGrid3d',
|
|
75
|
+
vertexShader: heatmapGrid3dVert,
|
|
76
|
+
fragmentShader: heatmapGridFrag,
|
|
77
|
+
triangulation: _triangulation.PointExtrudeTriangulation,
|
|
78
|
+
primitive: _l7Core.gl.TRIANGLES,
|
|
79
|
+
depth: {
|
|
80
|
+
enable: true
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
case 2:
|
|
84
|
+
model = _context2.sent;
|
|
85
|
+
return _context2.abrupt("return", [model]);
|
|
86
|
+
case 4:
|
|
87
|
+
case "end":
|
|
88
|
+
return _context2.stop();
|
|
118
89
|
}
|
|
119
90
|
}, _callee2, this);
|
|
120
91
|
}));
|
|
121
|
-
|
|
122
92
|
function buildModels() {
|
|
123
93
|
return _buildModels.apply(this, arguments);
|
|
124
94
|
}
|
|
125
|
-
|
|
126
95
|
return buildModels;
|
|
127
96
|
}()
|
|
128
97
|
}, {
|
|
@@ -183,5 +152,4 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
183
152
|
}]);
|
|
184
153
|
return Grid3DModel;
|
|
185
154
|
}(_BaseModel2.default);
|
|
186
|
-
|
|
187
155
|
exports.default = Grid3DModel;
|
|
@@ -1,93 +1,59 @@
|
|
|
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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
10
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
15
|
-
|
|
16
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
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 _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
23
|
-
|
|
24
15
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
25
|
-
|
|
26
16
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
27
|
-
|
|
28
17
|
var _l7Core = require("@antv/l7-core");
|
|
29
|
-
|
|
30
18
|
var _l7Utils = require("@antv/l7-utils");
|
|
31
|
-
|
|
32
19
|
var _glMatrix = require("gl-matrix");
|
|
33
|
-
|
|
34
20
|
var _inversify = require("inversify");
|
|
35
|
-
|
|
36
21
|
require("reflect-metadata");
|
|
37
|
-
|
|
38
22
|
var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
|
|
39
|
-
|
|
40
23
|
var _triangulation = require("../../core/triangulation");
|
|
41
|
-
|
|
42
24
|
var _lodash = require("lodash");
|
|
43
|
-
|
|
44
25
|
var _triangulation2 = require("../triangulation");
|
|
45
|
-
|
|
46
26
|
var _dec, _class;
|
|
47
|
-
|
|
48
27
|
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); }; }
|
|
49
|
-
|
|
50
28
|
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; } }
|
|
51
|
-
|
|
52
29
|
/* babel-plugin-inline-import '../shaders/heatmap_3d_frag.glsl' */
|
|
53
30
|
var heatmap3DFrag = "uniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_opacity;\nvarying vec2 v_texCoord;\nvarying float v_intensity;\n\nvoid main(){\n \n float intensity = texture2D(u_texture, v_texCoord).r;\n vec4 color = texture2D(u_colorTexture,vec2(intensity, 0));\n gl_FragColor = color;\n // gl_FragColor.a = color.a * smoothstep(0.1,0.2,intensity)* u_opacity;\n gl_FragColor.a = color.a * smoothstep(0.,0.1,intensity) * u_opacity;\n}\n";
|
|
54
|
-
|
|
55
31
|
/* babel-plugin-inline-import '../shaders/heatmap_3d_vert.glsl' */
|
|
56
32
|
var heatmap3DVert = "precision highp float;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nuniform sampler2D u_texture;\nvarying vec2 v_texCoord;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_InverseViewProjectionMatrix;\nuniform mat4 u_ViewProjectionMatrixUncentered;\nvarying float v_intensity;\n\n\nvec2 toBezier(float t, vec2 P0, vec2 P1, vec2 P2, vec2 P3) {\n float t2 = t * t;\n float one_minus_t = 1.0 - t;\n float one_minus_t2 = one_minus_t * one_minus_t;\n return (P0 * one_minus_t2 * one_minus_t + P1 * 3.0 * t * one_minus_t2 + P2 * 3.0 * t2 * one_minus_t + P3 * t2 * t);\n}\nvec2 toBezier(float t, vec4 p){\n return toBezier(t, vec2(0.0, 0.0), vec2(p.x, p.y), vec2(p.z, p.w), vec2(1.0, 1.0));\n}\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n\n vec2 pos = a_Uv * vec2(2.0) - vec2(1.0); // \u5C06\u539F\u672C 0 -> 1 \u7684 uv \u8F6C\u6362\u4E3A -1 -> 1 \u7684\u6807\u51C6\u5750\u6807\u7A7A\u95F4\uFF08NDC\uFF09\n\n vec4 p1 = vec4(pos, 0.0, 1.0); // x/y \u5E73\u9762\u4E0A\u7684\u70B9\uFF08z == 0\uFF09\u53EF\u4EE5\u8BA4\u4E3A\u662F\u4E09\u7EF4\u4E0A\u7684\u70B9\u88AB\u6295\u5F71\u5230\u5E73\u9762\u540E\u7684\u70B9\n\tvec4 p2 = vec4(pos, 1.0, 1.0); // \u5E73\u884C\u4E8Ex/y\u5E73\u9762\u3001z==1 \u7684\u5E73\u9762\u4E0A\u7684\u70B9\n\n\tvec4 inverseP1 = u_InverseViewProjectionMatrix * p1; // \u6839\u636E\u89C6\u56FE\u6295\u5F71\u77E9\u9635\u7684\u9006\u77E9\u9635\u5E73\u9762\u4E0A\u7684\u53CD\u7B97\u51FA\u4E09\u7EF4\u7A7A\u95F4\u4E2D\u7684\u70B9\uFF08p1\u5E73\u9762\u4E0A\u7684\u70B9\uFF09\n\tvec4 inverseP2 = u_InverseViewProjectionMatrix * p2;\n\n inverseP1 = inverseP1 / inverseP1.w; // \u5F52\u4E00\u5316\u64CD\u4F5C\uFF08\u5F52\u4E00\u5316\u540E\u4E3A\u4E16\u754C\u5750\u6807\uFF09\n\tinverseP2 = inverseP2 / inverseP2.w;\n\n\tfloat zPos = (0.0 - inverseP1.z) / (inverseP2.z - inverseP1.z); // ??\n\tvec4 position = inverseP1 + zPos * (inverseP2 - inverseP1);\n\n vec4 b= vec4(0.5000, 0.0, 1.0, 0.5000);\n float fh;\n\n v_intensity = texture2D(u_texture, v_texCoord).r;\n fh = toBezier(v_intensity, b).y;\n gl_Position = u_ViewProjectionMatrixUncentered * vec4(position.xy, fh * project_pixel(50.), 1.0);\n \n}\n"; // 绘制平面热力的 shader
|
|
57
|
-
|
|
58
33
|
/* babel-plugin-inline-import '../shaders/heatmap_frag.glsl' */
|
|
59
34
|
var heatmapColorFrag = "uniform sampler2D u_texture; // \u70ED\u529B\u5F3A\u5EA6\u56FE\nuniform sampler2D u_colorTexture; // \u6839\u636E\u5F3A\u5EA6\u5206\u5E03\u7684\u8272\u5E26\nuniform float u_opacity;\nvarying vec2 v_texCoord;\n\nuniform vec2 u_ViewportSize;\n\nfloat getBlurIndusty() {\n float vW = 2.0/u_ViewportSize.x;\n float vH = 2.0/u_ViewportSize.y;\n vec2 vUv = v_texCoord;\n float i11 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y + 1.0 * vH) ).r;\n float i12 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y + 1.0 * vH) ).r;\n float i13 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y + 1.0 * vH) ).r;\n\n float i21 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y) ).r;\n float i22 = texture2D( u_texture, vec2( vUv.x , vUv.y) ).r;\n float i23 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y) ).r;\n\n float i31 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y-1.0*vH) ).r;\n float i32 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y-1.0*vH) ).r;\n float i33 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y-1.0*vH) ).r;\n\n return(\n i11 + \n i12 + \n i13 + \n i21 + \n i21 + \n i22 + \n i23 + \n i31 + \n i32 + \n i33\n )/9.0;\n}\n\n\nvoid main(){\n // float intensity = texture2D(u_texture, v_texCoord).r;\n float intensity = getBlurIndusty();\n vec4 color = texture2D(u_colorTexture, vec2(intensity, 0.0));\n\n gl_FragColor =color;\n gl_FragColor.a = color.a * smoothstep(0.,0.1,intensity) * u_opacity;\n\n}\n";
|
|
60
|
-
|
|
61
35
|
/* babel-plugin-inline-import '../shaders/heatmap_vert.glsl' */
|
|
62
36
|
var heatmapColorVert = "precision highp float;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n\nvoid main() {\n v_texCoord = a_Uv;\n\n gl_Position = vec4(a_Position.xy, 0, 1.);\n}\n";
|
|
63
|
-
|
|
64
37
|
/* babel-plugin-inline-import '../shaders/heatmap_framebuffer_frag.glsl' */
|
|
65
38
|
var heatmapFramebufferFrag = "precision highp float;\nuniform float u_intensity;\nvarying float v_weight;\nvarying vec2 v_extrude;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(){\n float d = -0.5 * 3.0 * 3.0 * dot(v_extrude, v_extrude);\n float val = v_weight * u_intensity * GAUSS_COEF * exp(d);\n gl_FragColor = vec4(val, 1., 1., 1.);\n}\n";
|
|
66
|
-
|
|
67
39
|
/* babel-plugin-inline-import '../shaders/heatmap_framebuffer_vert.glsl' */
|
|
68
40
|
var heatmapFramebufferVert = "precision highp float;\nattribute vec3 a_Position;\nattribute float a_Size;\nattribute vec2 a_Dir;\nuniform float u_intensity;\nuniform float u_radius;\nvarying vec2 v_extrude;\nvarying float v_weight;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\n\n#define GAUSS_COEF 0.3989422804014327\n\n#pragma include \"projection\"\n\nvoid main(){\n v_weight = a_Size;\n float ZERO = 1.0 / 255.0 / 16.0;\n float extrude_x = a_Dir.x * 2.0 -1.0;\n float extrude_y = a_Dir.y * 2.0 -1.0;\n vec2 extrude_dir = normalize(vec2(extrude_x,extrude_y));\n float S = sqrt(-2.0 * log(ZERO / a_Size / u_intensity / GAUSS_COEF)) / 2.5;\n v_extrude = extrude_dir * S;\n\n vec2 offset = project_pixel(v_extrude * u_radius);\n vec4 project_pos = project_position(vec4(a_Position.xy, 0.0, 1.0));\n\n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, 0.0, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy + offset, 0.0, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, 0.0, 1.0));\n }\n}\n";
|
|
69
41
|
var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function (_BaseModel) {
|
|
70
42
|
(0, _inherits2.default)(HeatMapModel, _BaseModel);
|
|
71
|
-
|
|
72
43
|
var _super = _createSuper(HeatMapModel);
|
|
73
|
-
|
|
74
44
|
function HeatMapModel() {
|
|
75
45
|
(0, _classCallCheck2.default)(this, HeatMapModel);
|
|
76
46
|
return _super.apply(this, arguments);
|
|
77
47
|
}
|
|
78
|
-
|
|
79
48
|
(0, _createClass2.default)(HeatMapModel, [{
|
|
80
49
|
key: "render",
|
|
81
50
|
value: function render(options) {
|
|
82
51
|
var _this = this;
|
|
83
|
-
|
|
84
52
|
var _this$rendererService = this.rendererService,
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
53
|
+
clear = _this$rendererService.clear,
|
|
54
|
+
useFramebuffer = _this$rendererService.useFramebuffer;
|
|
88
55
|
var _ref = this.layer.getLayerConfig(),
|
|
89
|
-
|
|
90
|
-
|
|
56
|
+
rampColors = _ref.rampColors;
|
|
91
57
|
useFramebuffer(this.heatmapFramerBuffer, function () {
|
|
92
58
|
clear({
|
|
93
59
|
color: [0, 0, 0, 0],
|
|
@@ -95,14 +61,11 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
95
61
|
stencil: 0,
|
|
96
62
|
framebuffer: _this.heatmapFramerBuffer
|
|
97
63
|
});
|
|
98
|
-
|
|
99
64
|
_this.drawIntensityMode();
|
|
100
65
|
});
|
|
101
|
-
|
|
102
66
|
if (!(0, _lodash.isEqual)(this.preRampColors, rampColors)) {
|
|
103
67
|
this.updateColorTexture();
|
|
104
68
|
}
|
|
105
|
-
|
|
106
69
|
this.shapeType === 'heatmap' ? this.drawColorMode(options) : this.draw3DHeatMap(options);
|
|
107
70
|
}
|
|
108
71
|
}, {
|
|
@@ -115,55 +78,45 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
115
78
|
value: function () {
|
|
116
79
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
117
80
|
var _shapeAttr$scale;
|
|
118
|
-
|
|
119
81
|
var _this$rendererService2, createFramebuffer, getViewportSize, createTexture2D, shapeAttr, shapeType, _getViewportSize, width, height;
|
|
120
|
-
|
|
121
82
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
122
|
-
while (1) {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
return _context.abrupt("return", [this.intensityModel, this.colorModel]);
|
|
154
|
-
|
|
155
|
-
case 12:
|
|
156
|
-
case "end":
|
|
157
|
-
return _context.stop();
|
|
158
|
-
}
|
|
83
|
+
while (1) switch (_context.prev = _context.next) {
|
|
84
|
+
case 0:
|
|
85
|
+
_this$rendererService2 = this.rendererService, createFramebuffer = _this$rendererService2.createFramebuffer, getViewportSize = _this$rendererService2.getViewportSize, createTexture2D = _this$rendererService2.createTexture2D;
|
|
86
|
+
shapeAttr = this.styleAttributeService.getLayerStyleAttribute('shape');
|
|
87
|
+
shapeType = (shapeAttr === null || shapeAttr === void 0 ? void 0 : (_shapeAttr$scale = shapeAttr.scale) === null || _shapeAttr$scale === void 0 ? void 0 : _shapeAttr$scale.field) || 'heatmap';
|
|
88
|
+
this.shapeType = shapeType;
|
|
89
|
+
// 生成热力图密度图
|
|
90
|
+
_context.next = 6;
|
|
91
|
+
return this.buildHeatMapIntensity();
|
|
92
|
+
case 6:
|
|
93
|
+
this.intensityModel = _context.sent;
|
|
94
|
+
// 渲染到屏幕
|
|
95
|
+
this.colorModel = shapeType === 'heatmap' ? this.buildHeatmapColor() // 2D
|
|
96
|
+
: this.build3dHeatMap(); // 3D
|
|
97
|
+
_getViewportSize = getViewportSize(), width = _getViewportSize.width, height = _getViewportSize.height; // 初始化密度图纹理
|
|
98
|
+
this.heatmapFramerBuffer = createFramebuffer({
|
|
99
|
+
color: createTexture2D({
|
|
100
|
+
width: Math.floor(width / 4),
|
|
101
|
+
height: Math.floor(height / 4),
|
|
102
|
+
wrapS: _l7Core.gl.CLAMP_TO_EDGE,
|
|
103
|
+
wrapT: _l7Core.gl.CLAMP_TO_EDGE,
|
|
104
|
+
min: _l7Core.gl.LINEAR,
|
|
105
|
+
mag: _l7Core.gl.LINEAR
|
|
106
|
+
}),
|
|
107
|
+
depth: false
|
|
108
|
+
});
|
|
109
|
+
this.updateColorTexture();
|
|
110
|
+
return _context.abrupt("return", [this.intensityModel, this.colorModel]);
|
|
111
|
+
case 12:
|
|
112
|
+
case "end":
|
|
113
|
+
return _context.stop();
|
|
159
114
|
}
|
|
160
115
|
}, _callee, this);
|
|
161
116
|
}));
|
|
162
|
-
|
|
163
117
|
function initModels() {
|
|
164
118
|
return _initModels.apply(this, arguments);
|
|
165
119
|
}
|
|
166
|
-
|
|
167
120
|
return initModels;
|
|
168
121
|
}()
|
|
169
122
|
}, {
|
|
@@ -171,23 +124,18 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
171
124
|
value: function () {
|
|
172
125
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
173
126
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
174
|
-
while (1) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
case "end":
|
|
181
|
-
return _context2.stop();
|
|
182
|
-
}
|
|
127
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
128
|
+
case 0:
|
|
129
|
+
return _context2.abrupt("return", this.initModels());
|
|
130
|
+
case 1:
|
|
131
|
+
case "end":
|
|
132
|
+
return _context2.stop();
|
|
183
133
|
}
|
|
184
134
|
}, _callee2, this);
|
|
185
135
|
}));
|
|
186
|
-
|
|
187
136
|
function buildModels() {
|
|
188
137
|
return _buildModels.apply(this, arguments);
|
|
189
138
|
}
|
|
190
|
-
|
|
191
139
|
return buildModels;
|
|
192
140
|
}()
|
|
193
141
|
}, {
|
|
@@ -223,7 +171,7 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
223
171
|
size: 1,
|
|
224
172
|
update: function update(feature) {
|
|
225
173
|
var _feature$size = feature.size,
|
|
226
|
-
|
|
174
|
+
size = _feature$size === void 0 ? 1 : _feature$size;
|
|
227
175
|
return [size];
|
|
228
176
|
}
|
|
229
177
|
}
|
|
@@ -235,41 +183,35 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
235
183
|
var _buildHeatMapIntensity = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
|
|
236
184
|
var model;
|
|
237
185
|
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
238
|
-
while (1) {
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
case 5:
|
|
262
|
-
case "end":
|
|
263
|
-
return _context3.stop();
|
|
264
|
-
}
|
|
186
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
187
|
+
case 0:
|
|
188
|
+
this.layer.triangulation = _triangulation.HeatmapTriangulation;
|
|
189
|
+
_context3.next = 3;
|
|
190
|
+
return this.layer.buildLayerModel({
|
|
191
|
+
moduleName: 'heatmapIntensity',
|
|
192
|
+
vertexShader: heatmapFramebufferVert,
|
|
193
|
+
fragmentShader: heatmapFramebufferFrag,
|
|
194
|
+
triangulation: _triangulation.HeatmapTriangulation,
|
|
195
|
+
depth: {
|
|
196
|
+
enable: false
|
|
197
|
+
},
|
|
198
|
+
cull: {
|
|
199
|
+
enable: true,
|
|
200
|
+
face: (0, _l7Utils.getCullFace)(this.mapService.version)
|
|
201
|
+
}
|
|
202
|
+
});
|
|
203
|
+
case 3:
|
|
204
|
+
model = _context3.sent;
|
|
205
|
+
return _context3.abrupt("return", model);
|
|
206
|
+
case 5:
|
|
207
|
+
case "end":
|
|
208
|
+
return _context3.stop();
|
|
265
209
|
}
|
|
266
210
|
}, _callee3, this);
|
|
267
211
|
}));
|
|
268
|
-
|
|
269
212
|
function buildHeatMapIntensity() {
|
|
270
213
|
return _buildHeatMapIntensity.apply(this, arguments);
|
|
271
214
|
}
|
|
272
|
-
|
|
273
215
|
return buildHeatMapIntensity;
|
|
274
216
|
}()
|
|
275
217
|
}, {
|
|
@@ -279,17 +221,15 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
279
221
|
vs: heatmapColorVert,
|
|
280
222
|
fs: heatmapColorFrag
|
|
281
223
|
});
|
|
282
|
-
|
|
283
224
|
var _this$shaderModuleSer = this.shaderModuleService.getModule('heatmapColor'),
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
225
|
+
vs = _this$shaderModuleSer.vs,
|
|
226
|
+
fs = _this$shaderModuleSer.fs,
|
|
227
|
+
uniforms = _this$shaderModuleSer.uniforms;
|
|
288
228
|
var _this$rendererService3 = this.rendererService,
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
229
|
+
createAttribute = _this$rendererService3.createAttribute,
|
|
230
|
+
createElements = _this$rendererService3.createElements,
|
|
231
|
+
createBuffer = _this$rendererService3.createBuffer,
|
|
232
|
+
createModel = _this$rendererService3.createModel;
|
|
293
233
|
return createModel({
|
|
294
234
|
vs: vs,
|
|
295
235
|
fs: fs,
|
|
@@ -324,17 +264,15 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
324
264
|
key: "drawIntensityMode",
|
|
325
265
|
value: function drawIntensityMode() {
|
|
326
266
|
var _this$intensityModel;
|
|
327
|
-
|
|
328
267
|
var _ref2 = this.layer.getLayerConfig(),
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
268
|
+
opacity = _ref2.opacity,
|
|
269
|
+
_ref2$intensity = _ref2.intensity,
|
|
270
|
+
intensity = _ref2$intensity === void 0 ? 10 : _ref2$intensity,
|
|
271
|
+
_ref2$radius = _ref2.radius,
|
|
272
|
+
radius = _ref2$radius === void 0 ? 5 : _ref2$radius;
|
|
335
273
|
this.layerService.beforeRenderData(this.layer);
|
|
336
|
-
this.layer.hooks.beforeRender.call();
|
|
337
|
-
|
|
274
|
+
this.layer.hooks.beforeRender.call();
|
|
275
|
+
// 绘制密度图
|
|
338
276
|
(_this$intensityModel = this.intensityModel) === null || _this$intensityModel === void 0 ? void 0 : _this$intensityModel.draw({
|
|
339
277
|
uniforms: {
|
|
340
278
|
u_opacity: opacity || 1.0,
|
|
@@ -367,10 +305,8 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
367
305
|
key: "drawColorMode",
|
|
368
306
|
value: function drawColorMode(options) {
|
|
369
307
|
var _this$colorModel;
|
|
370
|
-
|
|
371
308
|
var _ref3 = this.layer.getLayerConfig(),
|
|
372
|
-
|
|
373
|
-
|
|
309
|
+
opacity = _ref3.opacity;
|
|
374
310
|
(_this$colorModel = this.colorModel) === null || _this$colorModel === void 0 ? void 0 : _this$colorModel.draw({
|
|
375
311
|
uniforms: {
|
|
376
312
|
u_opacity: opacity || 1.0,
|
|
@@ -385,21 +321,18 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
385
321
|
key: "draw3DHeatMap",
|
|
386
322
|
value: function draw3DHeatMap(options) {
|
|
387
323
|
var _this$colorModel2;
|
|
388
|
-
|
|
389
324
|
var _ref4 = this.layer.getLayerConfig(),
|
|
390
|
-
|
|
325
|
+
opacity = _ref4.opacity;
|
|
326
|
+
|
|
327
|
+
// const invert = mat4.invert(
|
|
391
328
|
// mat4.create(),
|
|
392
329
|
// mat4.fromValues(
|
|
393
330
|
// // @ts-ignore
|
|
394
331
|
// ...this.cameraService.getViewProjectionMatrixUncentered(),
|
|
395
332
|
// ),
|
|
396
333
|
// ) as mat4;
|
|
397
|
-
|
|
398
|
-
|
|
399
334
|
var invert = _glMatrix.mat4.create();
|
|
400
|
-
|
|
401
335
|
_glMatrix.mat4.invert(invert, this.cameraService.getViewProjectionMatrixUncentered());
|
|
402
|
-
|
|
403
336
|
(_this$colorModel2 = this.colorModel) === null || _this$colorModel2 === void 0 ? void 0 : _this$colorModel2.draw({
|
|
404
337
|
uniforms: {
|
|
405
338
|
u_opacity: opacity || 1.0,
|
|
@@ -424,27 +357,23 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
424
357
|
key: "build3dHeatMap",
|
|
425
358
|
value: function build3dHeatMap() {
|
|
426
359
|
var getViewportSize = this.rendererService.getViewportSize;
|
|
427
|
-
|
|
428
360
|
var _getViewportSize2 = getViewportSize(),
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
361
|
+
width = _getViewportSize2.width,
|
|
362
|
+
height = _getViewportSize2.height;
|
|
432
363
|
var triangulation = (0, _triangulation2.heatMap3DTriangulation)(width / 4.0, height / 4.0);
|
|
433
364
|
this.shaderModuleService.registerModule('heatmap3dColor', {
|
|
434
365
|
vs: heatmap3DVert,
|
|
435
366
|
fs: heatmap3DFrag
|
|
436
367
|
});
|
|
437
|
-
|
|
438
368
|
var _this$shaderModuleSer2 = this.shaderModuleService.getModule('heatmap3dColor'),
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
369
|
+
vs = _this$shaderModuleSer2.vs,
|
|
370
|
+
fs = _this$shaderModuleSer2.fs,
|
|
371
|
+
uniforms = _this$shaderModuleSer2.uniforms;
|
|
443
372
|
var _this$rendererService4 = this.rendererService,
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
373
|
+
createAttribute = _this$rendererService4.createAttribute,
|
|
374
|
+
createElements = _this$rendererService4.createElements,
|
|
375
|
+
createBuffer = _this$rendererService4.createBuffer,
|
|
376
|
+
createModel = _this$rendererService4.createModel;
|
|
448
377
|
return createModel({
|
|
449
378
|
vs: vs,
|
|
450
379
|
fs: fs,
|
|
@@ -494,14 +423,11 @@ var HeatMapModel = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE
|
|
|
494
423
|
key: "updateColorTexture",
|
|
495
424
|
value: function updateColorTexture() {
|
|
496
425
|
var createTexture2D = this.rendererService.createTexture2D;
|
|
497
|
-
|
|
498
426
|
if (this.texture) {
|
|
499
427
|
this.texture.destroy();
|
|
500
428
|
}
|
|
501
|
-
|
|
502
429
|
var _ref5 = this.layer.getLayerConfig(),
|
|
503
|
-
|
|
504
|
-
|
|
430
|
+
rampColors = _ref5.rampColors;
|
|
505
431
|
var imageData = (0, _l7Utils.generateColorRamp)(rampColors);
|
|
506
432
|
this.colorTexture = createTexture2D({
|
|
507
433
|
data: new Uint8Array(imageData.data),
|