@antv/l7-layers 2.15.5 → 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 +486 -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.d.ts +2 -1
- package/es/point/models/text.js +305 -201
- 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 +480 -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 +314 -202
- 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
|
@@ -1,44 +1,67 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
9
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
|
|
10
14
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
15
|
+
|
|
11
16
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
17
|
+
|
|
12
18
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
19
|
+
|
|
13
20
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
21
|
+
|
|
14
22
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
23
|
+
|
|
15
24
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
25
|
+
|
|
16
26
|
var _l7Core = require("@antv/l7-core");
|
|
27
|
+
|
|
17
28
|
var _l7Maps = require("@antv/l7-maps");
|
|
29
|
+
|
|
18
30
|
var _lodash = require("lodash");
|
|
31
|
+
|
|
19
32
|
var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
|
|
33
|
+
|
|
20
34
|
var _triangulation = require("../../core/triangulation");
|
|
35
|
+
|
|
21
36
|
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); }; }
|
|
37
|
+
|
|
22
38
|
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; } }
|
|
39
|
+
|
|
23
40
|
/* babel-plugin-inline-import '../shaders/water/polygon_water_frag.glsl' */
|
|
24
41
|
var water_frag = "uniform sampler2D u_texture;\nuniform float u_time: 0.0;\nuniform float u_speed: 1.0;\nuniform float u_opacity: 1.0;\n\nvarying vec4 v_Color;\nvarying vec2 v_uv;\n\nfloat rand(vec2 n) { return 0.5 + 0.5 * fract(sin(dot(n.xy, vec2(12.9898, 78.233)))* 43758.5453); }\n\nfloat water(vec3 p) {\n float t = u_time * u_speed;\n p.z += t * 2.; p.x += t * 2.;\n vec3 c1 = texture2D(u_texture, p.xz / 30.).xyz;\n p.z += t * 3.; p.x += t * 0.52;\n vec3 c2 = texture2D(u_texture, p.xz / 30.).xyz;\n p.z += t * 4.; p.x += t * 0.8;\n vec3 c3 = texture2D(u_texture, p.xz / 30.).xyz;\n c1 += c2 - c3;\n float z = (c1.x + c1.y + c1.z) / 3.;\n return p.y + z / 4.;\n}\n\nfloat map(vec3 p) {\n float d = 100.0;\n d = water(p);\n return d;\n}\n\nfloat intersect(vec3 ro, vec3 rd) {\n float d = 0.0;\n for (int i = 0; i <= 100; i++) {\n float h = map(ro + rd * d);\n if (h < 0.1) return d;\n d += h;\n }\n return 0.0;\n}\n\nvec3 norm(vec3 p) {\n float eps = .1;\n return normalize(vec3(\n map(p + vec3(eps, 0, 0)) - map(p + vec3(-eps, 0, 0)),\n map(p + vec3(0, eps, 0)) - map(p + vec3(0, -eps, 0)),\n map(p + vec3(0, 0, eps)) - map(p + vec3(0, 0, -eps))\n ));\n} \n\nfloat calSpc() {\n vec3 l1 = normalize(vec3(1, 1, 1));\n vec3 ro = vec3(-3, 20, -8);\n vec3 rc = vec3(0, 0, 0);\n vec3 ww = normalize(rc - ro);\n vec3 uu = normalize(cross(vec3(0,1,0), ww));\n vec3 vv = normalize(cross(rc - ro, uu));\n vec3 rd = normalize(uu * v_uv.x + vv * v_uv.y + ww);\n float d = intersect(ro, rd);\n vec3 p = ro + rd * d;\n vec3 n = norm(p);\n float spc = pow(max(0.0, dot(reflect(l1, n), rd)), 30.0);\n return spc;\n}\n\nvoid main() {\n float opacity = u_opacity;\n gl_FragColor = v_Color;\n gl_FragColor.a *= opacity;\n\n float spc = calSpc();\n gl_FragColor += spc * 0.4;\n}\n";
|
|
42
|
+
|
|
25
43
|
/* babel-plugin-inline-import '../shaders/water/polygon_water_vert.glsl' */
|
|
26
44
|
var water_vert = "attribute vec4 a_Color;\nattribute vec2 a_uv;\nattribute vec3 a_Position;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\n\nvarying vec4 v_Color;\nvarying vec2 v_uv;\nuniform float u_opacity: 1.0;\n\n\n#pragma include \"projection\"\n\nvoid main() {\n v_uv = a_uv;\n\n v_Color = a_Color;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xyz, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));\n }\n}\n\n";
|
|
45
|
+
|
|
27
46
|
var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
28
47
|
(0, _inherits2.default)(WaterModel, _BaseModel);
|
|
48
|
+
|
|
29
49
|
var _super = _createSuper(WaterModel);
|
|
50
|
+
|
|
30
51
|
function WaterModel() {
|
|
31
52
|
(0, _classCallCheck2.default)(this, WaterModel);
|
|
32
53
|
return _super.apply(this, arguments);
|
|
33
54
|
}
|
|
55
|
+
|
|
34
56
|
(0, _createClass2.default)(WaterModel, [{
|
|
35
57
|
key: "getUninforms",
|
|
36
58
|
value: function getUninforms() {
|
|
37
59
|
var _ref = this.layer.getLayerConfig(),
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
60
|
+
_ref$opacity = _ref.opacity,
|
|
61
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
62
|
+
_ref$speed = _ref.speed,
|
|
63
|
+
speed = _ref$speed === void 0 ? 0.5 : _ref$speed;
|
|
64
|
+
|
|
42
65
|
return {
|
|
43
66
|
u_texture: this.texture,
|
|
44
67
|
u_speed: speed,
|
|
@@ -57,19 +80,24 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
57
80
|
value: function () {
|
|
58
81
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
59
82
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
60
|
-
while (1)
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
83
|
+
while (1) {
|
|
84
|
+
switch (_context.prev = _context.next) {
|
|
85
|
+
case 0:
|
|
86
|
+
this.loadTexture();
|
|
87
|
+
return _context.abrupt("return", this.buildModels());
|
|
88
|
+
|
|
89
|
+
case 2:
|
|
90
|
+
case "end":
|
|
91
|
+
return _context.stop();
|
|
92
|
+
}
|
|
67
93
|
}
|
|
68
94
|
}, _callee, this);
|
|
69
95
|
}));
|
|
96
|
+
|
|
70
97
|
function initModels() {
|
|
71
98
|
return _initModels.apply(this, arguments);
|
|
72
99
|
}
|
|
100
|
+
|
|
73
101
|
return initModels;
|
|
74
102
|
}()
|
|
75
103
|
}, {
|
|
@@ -78,48 +106,57 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
78
106
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
79
107
|
var model;
|
|
80
108
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
81
|
-
while (1)
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
109
|
+
while (1) {
|
|
110
|
+
switch (_context2.prev = _context2.next) {
|
|
111
|
+
case 0:
|
|
112
|
+
_context2.next = 2;
|
|
113
|
+
return this.layer.buildLayerModel({
|
|
114
|
+
moduleName: 'polygonWater',
|
|
115
|
+
vertexShader: water_vert,
|
|
116
|
+
fragmentShader: water_frag,
|
|
117
|
+
triangulation: _triangulation.polygonTriangulation,
|
|
118
|
+
primitive: _l7Core.gl.TRIANGLES,
|
|
119
|
+
depth: {
|
|
120
|
+
enable: false
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
case 2:
|
|
125
|
+
model = _context2.sent;
|
|
126
|
+
return _context2.abrupt("return", [model]);
|
|
127
|
+
|
|
128
|
+
case 4:
|
|
129
|
+
case "end":
|
|
130
|
+
return _context2.stop();
|
|
131
|
+
}
|
|
100
132
|
}
|
|
101
133
|
}, _callee2, this);
|
|
102
134
|
}));
|
|
135
|
+
|
|
103
136
|
function buildModels() {
|
|
104
137
|
return _buildModels.apply(this, arguments);
|
|
105
138
|
}
|
|
139
|
+
|
|
106
140
|
return buildModels;
|
|
107
141
|
}()
|
|
108
142
|
}, {
|
|
109
143
|
key: "clearModels",
|
|
110
144
|
value: function clearModels() {
|
|
111
145
|
var _this$texture;
|
|
146
|
+
|
|
112
147
|
(_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
|
|
113
148
|
}
|
|
114
149
|
}, {
|
|
115
150
|
key: "registerBuiltinAttributes",
|
|
116
151
|
value: function registerBuiltinAttributes() {
|
|
117
152
|
var bbox = this.layer.getSource().extent;
|
|
153
|
+
|
|
118
154
|
var _bbox = (0, _slicedToArray2.default)(bbox, 4),
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
155
|
+
minLng = _bbox[0],
|
|
156
|
+
minLat = _bbox[1],
|
|
157
|
+
maxLng = _bbox[2],
|
|
158
|
+
maxLat = _bbox[3];
|
|
159
|
+
|
|
123
160
|
var lngLen = maxLng - minLng;
|
|
124
161
|
var latLen = maxLat - minLat;
|
|
125
162
|
this.styleAttributeService.registerStyleAttribute({
|
|
@@ -136,9 +173,11 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
136
173
|
size: 2,
|
|
137
174
|
update: function update(feature, featureIdx, vertex, attributeIdx) {
|
|
138
175
|
var v = feature.version === _l7Maps.Version['GAODE2.x'] ? feature.originCoordinates[0][attributeIdx] : vertex;
|
|
176
|
+
|
|
139
177
|
var _v = (0, _slicedToArray2.default)(v, 2),
|
|
140
|
-
|
|
141
|
-
|
|
178
|
+
lng = _v[0],
|
|
179
|
+
lat = _v[1];
|
|
180
|
+
|
|
142
181
|
return [(lng - minLng) / lngLen, (lat - minLat) / latLen];
|
|
143
182
|
}
|
|
144
183
|
}
|
|
@@ -148,8 +187,10 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
148
187
|
key: "loadTexture",
|
|
149
188
|
value: function loadTexture() {
|
|
150
189
|
var _this = this;
|
|
190
|
+
|
|
151
191
|
var _ref2 = this.layer.getLayerConfig(),
|
|
152
|
-
|
|
192
|
+
waterTexture = _ref2.waterTexture;
|
|
193
|
+
|
|
153
194
|
var createTexture2D = this.rendererService.createTexture2D;
|
|
154
195
|
this.texture = createTexture2D({
|
|
155
196
|
height: 0,
|
|
@@ -157,6 +198,7 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
157
198
|
});
|
|
158
199
|
var image = new Image();
|
|
159
200
|
image.crossOrigin = '';
|
|
201
|
+
|
|
160
202
|
if (waterTexture) {
|
|
161
203
|
// custom texture
|
|
162
204
|
console.warn('L7 recommend:https://gw.alipayobjects.com/mdn/rms_816329/afts/img/A*EojwT4VzSiYAAAAAAAAAAAAAARQnAQ');
|
|
@@ -165,6 +207,7 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
165
207
|
// default texture
|
|
166
208
|
image.src = 'https://gw.alipayobjects.com/mdn/rms_816329/afts/img/A*EojwT4VzSiYAAAAAAAAAAAAAARQnAQ';
|
|
167
209
|
}
|
|
210
|
+
|
|
168
211
|
image.onload = function () {
|
|
169
212
|
_this.texture = createTexture2D({
|
|
170
213
|
data: image,
|
|
@@ -175,10 +218,12 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
175
218
|
min: _l7Core.gl.LINEAR,
|
|
176
219
|
mag: _l7Core.gl.LINEAR
|
|
177
220
|
});
|
|
221
|
+
|
|
178
222
|
_this.layerService.reRender();
|
|
179
223
|
};
|
|
180
224
|
}
|
|
181
225
|
}]);
|
|
182
226
|
return WaterModel;
|
|
183
227
|
}(_BaseModel2.default);
|
|
228
|
+
|
|
184
229
|
exports.default = WaterModel;
|
|
@@ -1,25 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.RasterTriangulation = RasterTriangulation;
|
|
9
|
+
|
|
8
10
|
var _martini = _interopRequireDefault(require("@mapbox/martini"));
|
|
9
|
-
// @ts-ignore
|
|
10
11
|
|
|
12
|
+
// @ts-ignore
|
|
11
13
|
function RasterTriangulation(parserData) {
|
|
12
14
|
var data = parserData.data,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
+
width = parserData.width,
|
|
16
|
+
height = parserData.height;
|
|
15
17
|
var maxlength = Math.max(width, height);
|
|
16
18
|
var gridSize = Math.pow(2, Math.ceil(Math.log2(maxlength))) + 1;
|
|
17
19
|
var terrain = new Float32Array(gridSize * gridSize);
|
|
20
|
+
|
|
18
21
|
for (var i = 0; i < width; i++) {
|
|
19
22
|
for (var j = 0; j < height; j++) {
|
|
20
23
|
terrain[i * gridSize + j] = data[i * width + j];
|
|
21
24
|
}
|
|
22
25
|
}
|
|
26
|
+
|
|
23
27
|
var martini = new _martini.default(gridSize);
|
|
24
28
|
var tile = martini.createTile(terrain);
|
|
25
29
|
var mesh = tile.getMesh(gridSize / 2);
|
package/lib/raster/index.js
CHANGED
|
@@ -1,57 +1,83 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
9
12
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
+
|
|
10
14
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
+
|
|
11
16
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
+
|
|
12
18
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
19
|
+
|
|
13
20
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
21
|
+
|
|
14
22
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
23
|
+
|
|
15
24
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
25
|
+
|
|
16
26
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
|
+
|
|
17
28
|
var _BaseLayer2 = _interopRequireDefault(require("../core/BaseLayer"));
|
|
29
|
+
|
|
18
30
|
var _index = _interopRequireDefault(require("./models/index"));
|
|
31
|
+
|
|
19
32
|
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); }; }
|
|
33
|
+
|
|
20
34
|
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; } }
|
|
35
|
+
|
|
21
36
|
var RaterLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
22
37
|
(0, _inherits2.default)(RaterLayer, _BaseLayer);
|
|
38
|
+
|
|
23
39
|
var _super = _createSuper(RaterLayer);
|
|
40
|
+
|
|
24
41
|
function RaterLayer() {
|
|
25
42
|
var _this;
|
|
43
|
+
|
|
26
44
|
(0, _classCallCheck2.default)(this, RaterLayer);
|
|
45
|
+
|
|
27
46
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
28
47
|
args[_key] = arguments[_key];
|
|
29
48
|
}
|
|
49
|
+
|
|
30
50
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
31
51
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'RasterLayer');
|
|
32
52
|
return _this;
|
|
33
53
|
}
|
|
54
|
+
|
|
34
55
|
(0, _createClass2.default)(RaterLayer, [{
|
|
35
56
|
key: "buildModels",
|
|
36
57
|
value: function () {
|
|
37
58
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
38
59
|
var modelType;
|
|
39
60
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
40
|
-
while (1)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
61
|
+
while (1) {
|
|
62
|
+
switch (_context.prev = _context.next) {
|
|
63
|
+
case 0:
|
|
64
|
+
modelType = this.getModelType();
|
|
65
|
+
this.layerModel = new _index.default[modelType](this);
|
|
66
|
+
_context.next = 4;
|
|
67
|
+
return this.initLayerModels();
|
|
68
|
+
|
|
69
|
+
case 4:
|
|
70
|
+
case "end":
|
|
71
|
+
return _context.stop();
|
|
72
|
+
}
|
|
49
73
|
}
|
|
50
74
|
}, _callee, this);
|
|
51
75
|
}));
|
|
76
|
+
|
|
52
77
|
function buildModels() {
|
|
53
78
|
return _buildModels.apply(this, arguments);
|
|
54
79
|
}
|
|
80
|
+
|
|
55
81
|
return buildModels;
|
|
56
82
|
}()
|
|
57
83
|
}, {
|
|
@@ -71,13 +97,17 @@ var RaterLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
71
97
|
value: function getModelType() {
|
|
72
98
|
// 根据 source 的类型判断 model type
|
|
73
99
|
var parserType = this.layerSource.getParserType();
|
|
100
|
+
|
|
74
101
|
switch (parserType) {
|
|
75
102
|
case 'raster':
|
|
76
103
|
return 'raster';
|
|
104
|
+
|
|
77
105
|
case 'rasterRgb':
|
|
78
106
|
return 'rasterRgb';
|
|
107
|
+
|
|
79
108
|
case 'image':
|
|
80
109
|
return 'rasterTerrainRgb';
|
|
110
|
+
|
|
81
111
|
default:
|
|
82
112
|
return 'raster';
|
|
83
113
|
}
|
|
@@ -85,4 +115,5 @@ var RaterLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
85
115
|
}]);
|
|
86
116
|
return RaterLayer;
|
|
87
117
|
}(_BaseLayer2.default);
|
|
118
|
+
|
|
88
119
|
exports.default = RaterLayer;
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _raster = _interopRequireDefault(require("./raster"));
|
|
11
|
+
|
|
9
12
|
var _rasterRgb = _interopRequireDefault(require("./rasterRgb"));
|
|
13
|
+
|
|
10
14
|
var _rasterTerrainRgb = _interopRequireDefault(require("./rasterTerrainRgb"));
|
|
15
|
+
|
|
11
16
|
var RasterModels = {
|
|
12
17
|
raster: _raster.default,
|
|
13
18
|
rasterRgb: _rasterRgb.default,
|