@antv/l7-layers 2.16.0 → 2.16.1
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 +31 -9
- package/es/Geometry/models/billboard.js +89 -51
- package/es/Geometry/models/plane.js +143 -81
- package/es/Geometry/models/sprite.js +118 -60
- package/es/canvas/index.js +33 -10
- package/es/canvas/models/canvas.js +97 -41
- package/es/citybuliding/building.js +27 -8
- package/es/citybuliding/models/build.js +82 -57
- package/es/core/BaseLayer.js +485 -321
- package/es/core/BaseModel.js +126 -97
- package/es/core/LayerPickService.js +32 -21
- package/es/core/TextureService.js +13 -0
- package/es/core/interface.js +24 -17
- package/es/core/shape/Path.js +20 -13
- package/es/core/shape/extrude.js +31 -10
- package/es/core/triangulation.js +114 -54
- package/es/earth/index.js +33 -9
- package/es/earth/models/atmosphere.js +54 -30
- package/es/earth/models/base.js +85 -47
- package/es/earth/models/bloomsphere.js +54 -30
- package/es/earth/utils.js +13 -9
- package/es/heatmap/index.js +40 -10
- package/es/heatmap/models/grid.js +52 -28
- package/es/heatmap/models/grid3d.js +52 -28
- package/es/heatmap/models/heatmap.js +146 -91
- package/es/heatmap/models/hexagon.js +52 -28
- package/es/heatmap/triangulation.js +4 -0
- package/es/image/index.js +28 -9
- package/es/image/models/image.js +100 -66
- package/es/index.js +17 -9
- package/es/line/index.js +34 -9
- package/es/line/models/arc.js +118 -66
- package/es/line/models/arc_3d.js +108 -60
- package/es/line/models/earthArc_3d.js +111 -63
- package/es/line/models/great_circle.js +100 -56
- package/es/line/models/half.js +77 -46
- package/es/line/models/line.js +148 -94
- package/es/line/models/linearline.js +80 -45
- package/es/line/models/simpleLine.js +74 -41
- package/es/line/models/wall.js +92 -52
- package/es/mask/index.js +28 -9
- package/es/mask/models/fill.js +54 -29
- package/es/plugins/DataMappingPlugin.js +117 -80
- package/es/plugins/DataSourcePlugin.js +68 -45
- package/es/plugins/FeatureScalePlugin.js +122 -67
- package/es/plugins/LayerAnimateStylePlugin.js +5 -0
- package/es/plugins/LayerMaskPlugin.js +11 -3
- package/es/plugins/LayerModelPlugin.js +104 -67
- package/es/plugins/LayerStylePlugin.js +9 -3
- package/es/plugins/LightingPlugin.js +18 -12
- package/es/plugins/MultiPassRendererPlugin.js +16 -11
- package/es/plugins/PixelPickingPlugin.js +21 -12
- package/es/plugins/RegisterStyleAttributePlugin.js +12 -5
- package/es/plugins/ShaderUniformPlugin.js +27 -13
- package/es/plugins/UpdateModelPlugin.js +5 -0
- package/es/plugins/UpdateStyleAttributePlugin.js +11 -5
- package/es/point/index.js +77 -26
- package/es/point/models/earthExtrude.js +102 -61
- package/es/point/models/earthFill.js +87 -57
- package/es/point/models/extrude.js +101 -60
- package/es/point/models/fill.js +100 -70
- package/es/point/models/fillmage.js +107 -63
- package/es/point/models/image.js +88 -48
- package/es/point/models/index.js +2 -2
- package/es/point/models/normal.js +54 -30
- package/es/point/models/radar.js +64 -40
- package/es/point/models/simplePoint.js +69 -41
- package/es/point/models/text.js +301 -198
- package/es/point/shape/extrude.js +13 -4
- package/es/polygon/index.js +40 -11
- package/es/polygon/models/extrude.js +92 -48
- package/es/polygon/models/fill.js +88 -54
- package/es/polygon/models/index.js +2 -3
- package/es/polygon/models/ocean.js +76 -42
- package/es/polygon/models/water.js +71 -37
- package/es/raster/buffers/triangulation.js +4 -2
- package/es/raster/index.js +32 -9
- package/es/raster/models/raster.js +116 -80
- package/es/raster/models/rasterRgb.js +127 -84
- package/es/raster/models/rasterTerrainRgb.js +84 -56
- package/es/tile/interaction/getRasterData.js +20 -14
- package/es/tile/interaction/utils.js +9 -7
- package/es/tile/manager/base.js +96 -63
- package/es/tile/service/TileLayerService.js +55 -33
- package/es/tile/service/TilePickService.js +40 -26
- package/es/tile/service/TileSourceService.js +7 -3
- package/es/tile/tileFactory/DebugTile.js +46 -29
- package/es/tile/tileFactory/ImageTile.js +38 -20
- package/es/tile/tileFactory/MaskTile.js +43 -22
- package/es/tile/tileFactory/RasterRGBTile.js +42 -22
- package/es/tile/tileFactory/RasterTerrainRGBTile.js +38 -20
- package/es/tile/tileFactory/RasterTile.js +53 -30
- package/es/tile/tileFactory/Tile.js +97 -63
- package/es/tile/tileFactory/VectorTile.js +68 -41
- package/es/tile/tileFactory/index.js +11 -0
- package/es/tile/tileFactory/layers/TileDebugLayer.js +27 -6
- package/es/tile/tileFactory/util.js +3 -0
- package/es/tile/tileLayer/BaseLayer.js +146 -105
- package/es/tile/utils.js +1 -1
- package/es/utils/blend.js +2 -0
- package/es/utils/collision-index.js +16 -9
- package/es/utils/dataMappingStyle.js +18 -8
- package/es/utils/extrude_polyline.js +149 -101
- package/es/utils/grid-index.js +27 -2
- package/es/utils/identityScale.js +8 -0
- package/es/utils/layerData.js +44 -30
- package/es/utils/multiPassRender.js +13 -11
- package/es/utils/polylineNormal.js +37 -31
- package/es/utils/simpleLine.js +16 -2
- package/es/utils/stencil.js +3 -2
- package/es/utils/symbol-layout.js +53 -27
- package/es/wind/index.js +29 -9
- package/es/wind/models/utils.js +51 -26
- package/es/wind/models/wind.js +147 -101
- package/es/wind/models/windRender.js +66 -53
- package/lib/Geometry/index.js +38 -9
- package/lib/Geometry/models/billboard.js +97 -51
- package/lib/Geometry/models/index.js +5 -0
- package/lib/Geometry/models/plane.js +151 -79
- package/lib/Geometry/models/sprite.js +127 -60
- package/lib/canvas/index.js +40 -10
- package/lib/canvas/models/canvas.js +101 -41
- package/lib/canvas/models/index.js +3 -0
- package/lib/citybuliding/building.js +35 -8
- package/lib/citybuliding/models/build.js +92 -57
- package/lib/core/BaseLayer.js +479 -321
- package/lib/core/BaseModel.js +139 -97
- package/lib/core/LayerPickService.js +37 -21
- package/lib/core/TextureService.js +16 -0
- package/lib/core/interface.js +31 -21
- package/lib/core/schema.js +1 -0
- package/lib/core/shape/Path.js +31 -14
- package/lib/core/shape/extrude.js +54 -10
- package/lib/core/triangulation.js +153 -53
- package/lib/earth/index.js +43 -9
- package/lib/earth/models/atmosphere.js +63 -30
- package/lib/earth/models/base.js +90 -47
- package/lib/earth/models/bloomsphere.js +63 -30
- package/lib/earth/utils.js +31 -7
- package/lib/heatmap/index.js +48 -10
- package/lib/heatmap/models/grid.js +60 -28
- package/lib/heatmap/models/grid3d.js +60 -28
- package/lib/heatmap/models/heatmap.js +162 -91
- package/lib/heatmap/models/hexagon.js +60 -28
- package/lib/heatmap/models/index.js +6 -0
- package/lib/heatmap/triangulation.js +5 -0
- package/lib/image/index.js +36 -9
- package/lib/image/models/image.js +109 -66
- package/lib/image/models/index.js +3 -0
- package/lib/index.js +61 -7
- package/lib/line/index.js +40 -9
- package/lib/line/models/arc.js +128 -64
- package/lib/line/models/arc_3d.js +119 -58
- package/lib/line/models/earthArc_3d.js +122 -61
- package/lib/line/models/great_circle.js +111 -56
- package/lib/line/models/half.js +87 -46
- package/lib/line/models/index.js +11 -0
- package/lib/line/models/line.js +156 -92
- package/lib/line/models/linearline.js +92 -45
- package/lib/line/models/simpleLine.js +84 -41
- package/lib/line/models/wall.js +103 -52
- package/lib/mask/index.js +36 -9
- package/lib/mask/models/fill.js +63 -29
- package/lib/mask/models/index.js +3 -0
- package/lib/plugins/DataMappingPlugin.js +128 -80
- package/lib/plugins/DataSourcePlugin.js +76 -45
- package/lib/plugins/FeatureScalePlugin.js +138 -67
- package/lib/plugins/LayerAnimateStylePlugin.js +10 -0
- package/lib/plugins/LayerMaskPlugin.js +17 -4
- package/lib/plugins/LayerModelPlugin.js +113 -68
- package/lib/plugins/LayerStylePlugin.js +14 -4
- package/lib/plugins/LightingPlugin.js +25 -12
- package/lib/plugins/MultiPassRendererPlugin.js +22 -11
- package/lib/plugins/PixelPickingPlugin.js +27 -12
- package/lib/plugins/RegisterStyleAttributePlugin.js +19 -5
- package/lib/plugins/ShaderUniformPlugin.js +34 -13
- package/lib/plugins/UpdateModelPlugin.js +10 -1
- package/lib/plugins/UpdateStyleAttributePlugin.js +16 -5
- package/lib/point/index.js +83 -26
- package/lib/point/models/earthExtrude.js +113 -61
- package/lib/point/models/earthFill.js +117 -57
- package/lib/point/models/extrude.js +111 -60
- package/lib/point/models/fill.js +109 -68
- package/lib/point/models/fillmage.js +115 -61
- package/lib/point/models/image.js +98 -48
- package/lib/point/models/index.js +12 -1
- package/lib/point/models/normal.js +64 -30
- package/lib/point/models/radar.js +74 -40
- package/lib/point/models/simplePoint.js +79 -41
- package/lib/point/models/text.js +309 -198
- package/lib/point/shape/extrude.js +20 -4
- package/lib/polygon/index.js +48 -11
- package/lib/polygon/models/extrude.js +103 -48
- package/lib/polygon/models/fill.js +98 -54
- package/lib/polygon/models/index.js +14 -2
- package/lib/polygon/models/ocean.js +88 -42
- package/lib/polygon/models/water.js +82 -37
- package/lib/raster/buffers/triangulation.js +7 -3
- package/lib/raster/index.js +40 -9
- package/lib/raster/models/index.js +5 -0
- package/lib/raster/models/raster.js +125 -80
- package/lib/raster/models/rasterRgb.js +139 -84
- package/lib/raster/models/rasterTerrainRgb.js +93 -56
- package/lib/tile/interaction/getRasterData.js +25 -14
- package/lib/tile/interaction/utils.js +19 -7
- package/lib/tile/manager/base.js +104 -63
- package/lib/tile/service/TileLayerService.js +60 -33
- package/lib/tile/service/TilePickService.js +48 -26
- package/lib/tile/service/TileSourceService.js +16 -2
- package/lib/tile/style/utils.js +3 -0
- package/lib/tile/tileFactory/DebugTile.js +54 -29
- package/lib/tile/tileFactory/ImageTile.js +46 -20
- package/lib/tile/tileFactory/MaskTile.js +51 -22
- package/lib/tile/tileFactory/RasterRGBTile.js +50 -22
- package/lib/tile/tileFactory/RasterTerrainRGBTile.js +46 -20
- package/lib/tile/tileFactory/RasterTile.js +63 -30
- package/lib/tile/tileFactory/Tile.js +102 -63
- package/lib/tile/tileFactory/VectorTile.js +76 -41
- package/lib/tile/tileFactory/index.js +25 -0
- package/lib/tile/tileFactory/layers/TileDebugLayer.js +32 -6
- package/lib/tile/tileFactory/util.js +9 -0
- package/lib/tile/tileLayer/BaseLayer.js +153 -105
- package/lib/tile/utils.js +5 -1
- package/lib/utils/blend.js +5 -0
- package/lib/utils/collision-index.js +25 -9
- package/lib/utils/dataMappingStyle.js +19 -8
- package/lib/utils/extrude_polyline.js +181 -101
- package/lib/utils/grid-index.js +28 -2
- package/lib/utils/identityScale.js +9 -0
- package/lib/utils/layerData.js +49 -30
- package/lib/utils/multiPassRender.js +16 -11
- package/lib/utils/polylineNormal.js +66 -31
- package/lib/utils/simpleLine.js +21 -2
- package/lib/utils/stencil.js +4 -0
- package/lib/utils/symbol-layout.js +55 -27
- package/lib/wind/index.js +37 -9
- package/lib/wind/models/index.js +3 -0
- package/lib/wind/models/utils.js +62 -26
- package/lib/wind/models/wind.js +157 -101
- package/lib/wind/models/windRender.js +71 -53
- package/lib/wind/models/windShader.js +1 -0
- package/package.json +7 -7
package/es/heatmap/index.js
CHANGED
|
@@ -7,52 +7,71 @@ 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
|
+
|
|
10
11
|
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
|
+
|
|
11
13
|
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
|
+
|
|
12
15
|
import BaseLayer from "../core/BaseLayer";
|
|
13
16
|
import HeatMapModels from "./models";
|
|
17
|
+
|
|
14
18
|
var HeatMapLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
15
19
|
_inherits(HeatMapLayer, _BaseLayer);
|
|
20
|
+
|
|
16
21
|
var _super = _createSuper(HeatMapLayer);
|
|
22
|
+
|
|
17
23
|
function HeatMapLayer() {
|
|
18
24
|
var _this;
|
|
25
|
+
|
|
19
26
|
_classCallCheck(this, HeatMapLayer);
|
|
27
|
+
|
|
20
28
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
21
29
|
args[_key] = arguments[_key];
|
|
22
30
|
}
|
|
31
|
+
|
|
23
32
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
33
|
+
|
|
24
34
|
_defineProperty(_assertThisInitialized(_this), "type", 'HeatMapLayer');
|
|
35
|
+
|
|
25
36
|
return _this;
|
|
26
37
|
}
|
|
38
|
+
|
|
27
39
|
_createClass(HeatMapLayer, [{
|
|
28
40
|
key: "buildModels",
|
|
29
41
|
value: function () {
|
|
30
42
|
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
31
43
|
var shape;
|
|
32
44
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
33
|
-
while (1)
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
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
|
+
}
|
|
42
57
|
}
|
|
43
58
|
}, _callee, this);
|
|
44
59
|
}));
|
|
60
|
+
|
|
45
61
|
function buildModels() {
|
|
46
62
|
return _buildModels.apply(this, arguments);
|
|
47
63
|
}
|
|
64
|
+
|
|
48
65
|
return buildModels;
|
|
49
66
|
}()
|
|
50
67
|
}, {
|
|
51
68
|
key: "renderModels",
|
|
52
69
|
value: function renderModels() {
|
|
53
70
|
var _this2 = this;
|
|
71
|
+
|
|
54
72
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
55
73
|
var shape = this.getModelType();
|
|
74
|
+
|
|
56
75
|
if (shape === 'heatmap') {
|
|
57
76
|
if (this.layerModel) {
|
|
58
77
|
this.layerModel.render(options); // 独立的渲染流程
|
|
@@ -60,9 +79,11 @@ var HeatMapLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
60
79
|
|
|
61
80
|
return this;
|
|
62
81
|
}
|
|
82
|
+
|
|
63
83
|
if (this.encodeDataLength <= 0 && !this.forceRender) {
|
|
64
84
|
return this;
|
|
65
85
|
}
|
|
86
|
+
|
|
66
87
|
this.hooks.beforeRender.call();
|
|
67
88
|
this.models.forEach(function (model) {
|
|
68
89
|
return model.draw({
|
|
@@ -87,24 +108,33 @@ var HeatMapLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
87
108
|
key: "getModelType",
|
|
88
109
|
value: function getModelType() {
|
|
89
110
|
var _shapeAttribute$scale;
|
|
111
|
+
|
|
90
112
|
var shapeAttribute = this.styleAttributeService.getLayerStyleAttribute('shape');
|
|
113
|
+
|
|
91
114
|
var _this$getLayerConfig = this.getLayerConfig(),
|
|
92
|
-
|
|
115
|
+
shape3d = _this$getLayerConfig.shape3d;
|
|
116
|
+
|
|
93
117
|
var source = this.getSource();
|
|
94
118
|
var sourceType = source.data.type;
|
|
95
119
|
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
|
+
|
|
96
121
|
if (shape === 'heatmap' || shape === 'heatmap3d') {
|
|
97
122
|
return 'heatmap';
|
|
98
123
|
}
|
|
124
|
+
|
|
99
125
|
if (sourceType === 'hexagon') {
|
|
100
126
|
return (shape3d === null || shape3d === void 0 ? void 0 : shape3d.indexOf(shape)) === -1 ? 'hexagon' : 'grid3d';
|
|
101
127
|
}
|
|
128
|
+
|
|
102
129
|
if (sourceType === 'grid') {
|
|
103
130
|
return (shape3d === null || shape3d === void 0 ? void 0 : shape3d.indexOf(shape)) === -1 ? 'grid' : 'grid3d';
|
|
104
131
|
}
|
|
132
|
+
|
|
105
133
|
return 'heatmap';
|
|
106
134
|
}
|
|
107
135
|
}]);
|
|
136
|
+
|
|
108
137
|
return HeatMapLayer;
|
|
109
138
|
}(BaseLayer);
|
|
139
|
+
|
|
110
140
|
export { HeatMapLayer as default };
|
|
@@ -5,29 +5,40 @@ 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
|
+
|
|
8
9
|
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
|
+
|
|
9
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; } }
|
|
12
|
+
|
|
10
13
|
import { AttributeType, gl } from '@antv/l7-core';
|
|
11
14
|
import BaseModel from "../../core/BaseModel";
|
|
12
15
|
import { HeatmapGridTriangulation } from "../../core/triangulation";
|
|
16
|
+
|
|
13
17
|
/* babel-plugin-inline-import '../shaders/grid_vert.glsl' */
|
|
14
18
|
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_SceneCenterMKT;\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_SceneCenterMKT; // \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
|
+
|
|
15
20
|
/* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
|
|
16
21
|
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
|
+
|
|
17
23
|
var GridModel = /*#__PURE__*/function (_BaseModel) {
|
|
18
24
|
_inherits(GridModel, _BaseModel);
|
|
25
|
+
|
|
19
26
|
var _super = _createSuper(GridModel);
|
|
27
|
+
|
|
20
28
|
function GridModel() {
|
|
21
29
|
_classCallCheck(this, GridModel);
|
|
30
|
+
|
|
22
31
|
return _super.apply(this, arguments);
|
|
23
32
|
}
|
|
33
|
+
|
|
24
34
|
_createClass(GridModel, [{
|
|
25
35
|
key: "getUninforms",
|
|
26
36
|
value: function getUninforms() {
|
|
27
37
|
var _ref = this.layer.getLayerConfig(),
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
38
|
+
opacity = _ref.opacity,
|
|
39
|
+
coverage = _ref.coverage,
|
|
40
|
+
angle = _ref.angle;
|
|
41
|
+
|
|
31
42
|
return {
|
|
32
43
|
u_opacity: opacity || 1.0,
|
|
33
44
|
u_coverage: coverage || 0.9,
|
|
@@ -40,18 +51,23 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
40
51
|
value: function () {
|
|
41
52
|
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
42
53
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
43
|
-
while (1)
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
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
|
+
}
|
|
49
63
|
}
|
|
50
64
|
}, _callee, this);
|
|
51
65
|
}));
|
|
66
|
+
|
|
52
67
|
function initModels() {
|
|
53
68
|
return _initModels.apply(this, arguments);
|
|
54
69
|
}
|
|
70
|
+
|
|
55
71
|
return initModels;
|
|
56
72
|
}()
|
|
57
73
|
}, {
|
|
@@ -60,31 +76,37 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
60
76
|
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
61
77
|
var model;
|
|
62
78
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
63
|
-
while (1)
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
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
|
+
}
|
|
82
102
|
}
|
|
83
103
|
}, _callee2, this);
|
|
84
104
|
}));
|
|
105
|
+
|
|
85
106
|
function buildModels() {
|
|
86
107
|
return _buildModels.apply(this, arguments);
|
|
87
108
|
}
|
|
109
|
+
|
|
88
110
|
return buildModels;
|
|
89
111
|
}()
|
|
90
112
|
}, {
|
|
@@ -110,6 +132,8 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
110
132
|
});
|
|
111
133
|
}
|
|
112
134
|
}]);
|
|
135
|
+
|
|
113
136
|
return GridModel;
|
|
114
137
|
}(BaseModel);
|
|
138
|
+
|
|
115
139
|
export { GridModel as default };
|
|
@@ -5,29 +5,40 @@ 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
|
+
|
|
8
9
|
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
|
+
|
|
9
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; } }
|
|
12
|
+
|
|
10
13
|
import { AttributeType, gl } from '@antv/l7-core';
|
|
11
14
|
import BaseModel from "../../core/BaseModel";
|
|
12
15
|
import { PointExtrudeTriangulation } from "../../core/triangulation";
|
|
16
|
+
|
|
13
17
|
/* babel-plugin-inline-import '../shaders/hexagon_3d_vert.glsl' */
|
|
14
18
|
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_SceneCenterMKT;\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_SceneCenterMKT; // \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
|
+
|
|
15
20
|
/* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
|
|
16
21
|
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
|
+
|
|
17
23
|
var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
18
24
|
_inherits(Grid3DModel, _BaseModel);
|
|
25
|
+
|
|
19
26
|
var _super = _createSuper(Grid3DModel);
|
|
27
|
+
|
|
20
28
|
function Grid3DModel() {
|
|
21
29
|
_classCallCheck(this, Grid3DModel);
|
|
30
|
+
|
|
22
31
|
return _super.apply(this, arguments);
|
|
23
32
|
}
|
|
33
|
+
|
|
24
34
|
_createClass(Grid3DModel, [{
|
|
25
35
|
key: "getUninforms",
|
|
26
36
|
value: function getUninforms() {
|
|
27
37
|
var _ref = this.layer.getLayerConfig(),
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
38
|
+
opacity = _ref.opacity,
|
|
39
|
+
coverage = _ref.coverage,
|
|
40
|
+
angle = _ref.angle;
|
|
41
|
+
|
|
31
42
|
return {
|
|
32
43
|
u_opacity: opacity || 1.0,
|
|
33
44
|
u_coverage: coverage || 1.0,
|
|
@@ -40,18 +51,23 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
40
51
|
value: function () {
|
|
41
52
|
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
42
53
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
43
|
-
while (1)
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
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
|
+
}
|
|
49
63
|
}
|
|
50
64
|
}, _callee, this);
|
|
51
65
|
}));
|
|
66
|
+
|
|
52
67
|
function initModels() {
|
|
53
68
|
return _initModels.apply(this, arguments);
|
|
54
69
|
}
|
|
70
|
+
|
|
55
71
|
return initModels;
|
|
56
72
|
}()
|
|
57
73
|
}, {
|
|
@@ -60,31 +76,37 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
60
76
|
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
61
77
|
var model;
|
|
62
78
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
63
|
-
while (1)
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
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
|
+
}
|
|
82
102
|
}
|
|
83
103
|
}, _callee2, this);
|
|
84
104
|
}));
|
|
105
|
+
|
|
85
106
|
function buildModels() {
|
|
86
107
|
return _buildModels.apply(this, arguments);
|
|
87
108
|
}
|
|
109
|
+
|
|
88
110
|
return buildModels;
|
|
89
111
|
}()
|
|
90
112
|
}, {
|
|
@@ -143,6 +165,8 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
143
165
|
});
|
|
144
166
|
}
|
|
145
167
|
}]);
|
|
168
|
+
|
|
146
169
|
return Grid3DModel;
|
|
147
170
|
}(BaseModel);
|
|
171
|
+
|
|
148
172
|
export { Grid3DModel as default };
|