@antv/l7-layers 2.17.4 → 2.17.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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,116 +1,85 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
-
|
|
14
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
12
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
19
|
-
|
|
20
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
21
|
-
|
|
22
14
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
23
|
-
|
|
24
15
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
25
|
-
|
|
26
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
|
-
|
|
28
17
|
var _l7Core = require("@antv/l7-core");
|
|
29
|
-
|
|
30
18
|
var _l7Utils = require("@antv/l7-utils");
|
|
31
|
-
|
|
32
19
|
var _lodash = require("lodash");
|
|
33
|
-
|
|
34
20
|
var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
|
|
35
|
-
|
|
36
21
|
var _triangulation = require("../../core/triangulation");
|
|
37
|
-
|
|
38
22
|
var _utils = require("../../earth/utils");
|
|
39
|
-
|
|
40
23
|
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); }; }
|
|
41
|
-
|
|
42
24
|
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; } }
|
|
43
|
-
|
|
44
25
|
/* babel-plugin-inline-import '../shaders/earth/extrude_frag.glsl' */
|
|
45
26
|
var pointExtrudeFrag = "varying vec4 v_color;\nuniform float u_opacity: 1.0;\n\nuniform float u_pickLight: 0.0;\n\n#pragma include \"picking\"\n\n\nuniform float u_linearColor: 0;\nuniform vec4 u_sourceColor;\nuniform vec4 u_targetColor;\n\nuniform float u_opacitylinear: 0.0;\nuniform float u_opacitylinear_dir: 1.0;\nvarying float v_lightWeight;\nvarying float v_barLinearZ;\nvoid main() {\n\n gl_FragColor = v_color;\n\n // \u5F00\u542F\u900F\u660E\u5EA6\u6E10\u53D8\n if(u_opacitylinear > 0.0) {\n gl_FragColor.a *= u_opacitylinear_dir > 0.0 ? (1.0 - v_barLinearZ): v_barLinearZ;\n }\n\n // picking\n if(u_pickLight > 0.0) {\n gl_FragColor = filterColorAlpha(gl_FragColor, v_lightWeight);\n } else {\n gl_FragColor = filterColor(gl_FragColor);\n }\n}\n";
|
|
46
|
-
|
|
47
27
|
/* babel-plugin-inline-import '../shaders/earth/extrude_vert.glsl' */
|
|
48
28
|
var pointExtrudeVert = "precision highp float;\n\n#define pi 3.1415926535\n#define ambientRatio 0.5\n#define diffuseRatio 0.3\n#define specularRatio 0.2\n\nattribute vec3 a_Position;\nattribute vec3 a_Pos;\nattribute vec4 a_Color;\nattribute vec3 a_Size;\nattribute vec3 a_Normal;\n\nuniform float u_heightfixed: 0.0; // \u9ED8\u8BA4\u4E0D\u56FA\u5B9A\nuniform float u_globel;\nuniform float u_r;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nvarying vec4 v_color;\n\nuniform float u_opacity : 1;\nuniform float u_lightEnable: 1;\nvarying float v_lightWeight;\nvarying float v_barLinearZ;\n// \u7528\u4E8E\u5C06\u5728\u9876\u70B9\u7740\u8272\u5668\u4E2D\u8BA1\u7B97\u597D\u7684\u6837\u5F0F\u503C\u4F20\u9012\u7ED9\u7247\u5143\n\n\n#pragma include \"projection\"\n#pragma include \"light\"\n#pragma include \"picking\"\n\nfloat getYRadian(float x, float z) {\n if(x > 0.0 && z > 0.0) {\n return atan(x/z);\n } else if(x > 0.0 && z <= 0.0){\n return atan(-z/x) + pi/2.0;\n } else if(x <= 0.0 && z <= 0.0) {\n return pi + atan(x/z); //atan(x/z) + \n } else {\n return atan(z/-x) + pi*3.0/2.0;\n }\n}\n\nfloat getXRadian(float y, float r) {\n return atan(y/r);\n}\n\nvoid main() {\n\n \n float textureOffset = 0.0; // \u5728 cell \u4E2D\u53D6\u503C\u7684\u504F\u79FB\u91CF\n\n textureOffset = opacityAndOffset.g;\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\n vec3 size = a_Size * a_Position;\n\n // a_Position.z \u662F\u5728\u6784\u5EFA\u7F51\u683C\u7684\u65F6\u5019\u4F20\u5165\u7684\u6807\u51C6\u503C 0 - 1\uFF0C\u5728\u63D2\u503C\u5668\u63D2\u503C\u53EF\u4EE5\u83B7\u53D6 0\uFF5E1 \u7EBF\u6027\u6E10\u53D8\u7684\u503C\n v_barLinearZ = a_Position.z;\n\n vec3 offset = size; // \u63A7\u5236\u5706\u67F1\u4F53\u7684\u5927\u5C0F - \u4ECE\u6807\u51C6\u5355\u4F4D\u5706\u67F1\u4F53\u8FDB\u884C\u504F\u79FB\n if(u_heightfixed < 1.0) { // \u5706\u67F1\u4F53\u4E0D\u56FA\u5B9A\u9AD8\u5EA6\n \n if (u_CoordinateSystem == COORDINATE_SYSTEM_P20 || u_CoordinateSystem == COORDINATE_SYSTEM_P20_OFFSET) {\n // P20 \u5750\u6807\u7CFB\u4E0B\uFF0C\u4E3A\u4E86\u548C Web \u58A8\u5361\u6258\u5750\u6807\u7CFB\u7EDF\u4E00\uFF0Czoom \u9ED8\u8BA4\u51CF1\n offset = offset * pow(2.0, (19.0 - u_Zoom));\n }\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) {\n // P20_2 \u5750\u6807\u7CFB\u4E0B\uFF0C\u4E3A\u4E86\u548C Web \u58A8\u5361\u6258\u5750\u6807\u7CFB\u7EDF\u4E00\uFF0Czoom \u9ED8\u8BA4\u51CF3\n offset = offset * pow(2.0, (19.0 - 3.0 - u_Zoom));\n }\n } else {// \u5706\u67F1\u4F53\u56FA\u5B9A\u9AD8\u5EA6 \uFF08 \u5904\u7406 mapbox \uFF09\n if(u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT || u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT_OFFSET) {\n offset *= 4.0/pow(2.0, 21.0 - u_Zoom);\n }\n }\n\n\n vec4 project_pos = project_position(vec4(a_Pos.xy, 0., 1.0));\n\n // u_r \u63A7\u5236\u5706\u67F1\u7684\u751F\u957F\n vec4 pos = vec4(project_pos.xy + offset.xy, offset.z * u_r, 1.0);\n\n // \u5706\u67F1\u5149\u7167\u6548\u679C\n float lightWeight = 1.0;\n if(u_lightEnable > 0.0) { // \u53D6\u6D88\u4E09\u5143\u8868\u8FBE\u5F0F\uFF0C\u589E\u5F3A\u5065\u58EE\u6027\n lightWeight = calc_lighting(pos);\n }\n v_lightWeight = lightWeight;\n // \u8BBE\u7F6E\u5706\u67F1\u7684\u5E95\u8272\n if(u_linearColor == 1.0) { // \u4F7F\u7528\u6E10\u53D8\u989C\u8272\n v_color = mix(u_sourceColor, u_targetColor, barLinearZ);\n v_color.rgb *= lightWeight;\n } else { // \u4F7F\u7528 color \u65B9\u6CD5\u4F20\u5165\u7684\u989C\u8272\n v_color = a_Color;\n }\n v_color.a *= u_opacity;\n\n \n // \u5728\u5730\u7403\u6A21\u5F0F\u4E0B\uFF0C\u5C06\u539F\u672C\u5782\u76F4\u4E8E xy \u5E73\u9762\u7684\u5706\u67F1\u8C03\u6574\u59FF\u6001\u5230\u9002\u5E94\u5706\u7684\u89D2\u5EA6\n //\u65CB\u8F6C\u77E9\u9635mx\uFF0C\u521B\u5EFA\u7ED5x\u8F74\u65CB\u8F6C\u77E9\u9635\n float r = sqrt(a_Pos.z*a_Pos.z + a_Pos.x*a_Pos.x);\n float xRadian = getXRadian(a_Pos.y, r);\n float xcos = cos(xRadian);//\u6C42\u89E3\u65CB\u8F6C\u89D2\u5EA6\u4F59\u5F26\u503C\n float xsin = sin(xRadian);//\u6C42\u89E3\u65CB\u8F6C\u89D2\u5EA6\u6B63\u5F26\u503C\n mat4 mx = mat4(\n 1,0,0,0, \n 0,xcos,-xsin,0, \n 0,xsin,xcos,0, \n 0,0,0,1);\n\n //\u65CB\u8F6C\u77E9\u9635my\uFF0C\u521B\u5EFA\u7ED5y\u8F74\u65CB\u8F6C\u77E9\u9635\n float yRadian = getYRadian(a_Pos.x, a_Pos.z);\n float ycos = cos(yRadian);//\u6C42\u89E3\u65CB\u8F6C\u89D2\u5EA6\u4F59\u5F26\u503C\n float ysin = sin(yRadian);//\u6C42\u89E3\u65CB\u8F6C\u89D2\u5EA6\u6B63\u5F26\u503C\n mat4 my = mat4(\n ycos,0,-ysin,0, \n 0,1,0,0, \n ysin,0,ycos,0, \n 0,0,0,1);\n\n gl_Position = u_ViewProjectionMatrix * vec4(( my * mx * vec4(a_Position * a_Size, 1.0)).xyz + a_Pos, 1.0);\n \n\n setPickingColor(a_PickingColor);\n}\n";
|
|
49
|
-
|
|
50
29
|
var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
51
30
|
(0, _inherits2.default)(ExtrudeModel, _BaseModel);
|
|
52
|
-
|
|
53
31
|
var _super = _createSuper(ExtrudeModel);
|
|
54
|
-
|
|
55
32
|
function ExtrudeModel() {
|
|
56
33
|
var _this;
|
|
57
|
-
|
|
58
34
|
(0, _classCallCheck2.default)(this, ExtrudeModel);
|
|
59
|
-
|
|
60
35
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
61
36
|
args[_key] = arguments[_key];
|
|
62
37
|
}
|
|
63
|
-
|
|
64
38
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
65
39
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "raiseCount", 0);
|
|
66
40
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "raiseRepeat", 0);
|
|
67
41
|
return _this;
|
|
68
42
|
}
|
|
69
|
-
|
|
70
43
|
(0, _createClass2.default)(ExtrudeModel, [{
|
|
71
44
|
key: "getUninforms",
|
|
72
45
|
value: function getUninforms() {
|
|
73
46
|
var _ref = this.layer.getLayerConfig(),
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
47
|
+
_ref$animateOption = _ref.animateOption,
|
|
48
|
+
animateOption = _ref$animateOption === void 0 ? {
|
|
49
|
+
enable: false,
|
|
50
|
+
speed: 0.01,
|
|
51
|
+
repeat: false
|
|
52
|
+
} : _ref$animateOption,
|
|
53
|
+
_ref$opacity = _ref.opacity,
|
|
54
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
55
|
+
sourceColor = _ref.sourceColor,
|
|
56
|
+
targetColor = _ref.targetColor,
|
|
57
|
+
_ref$pickLight = _ref.pickLight,
|
|
58
|
+
pickLight = _ref$pickLight === void 0 ? false : _ref$pickLight,
|
|
59
|
+
_ref$heightfixed = _ref.heightfixed,
|
|
60
|
+
heightfixed = _ref$heightfixed === void 0 ? false : _ref$heightfixed,
|
|
61
|
+
_ref$opacityLinear = _ref.opacityLinear,
|
|
62
|
+
opacityLinear = _ref$opacityLinear === void 0 ? {
|
|
63
|
+
enable: false,
|
|
64
|
+
dir: 'up'
|
|
65
|
+
} : _ref$opacityLinear,
|
|
66
|
+
_ref$lightEnable = _ref.lightEnable,
|
|
67
|
+
lightEnable = _ref$lightEnable === void 0 ? true : _ref$lightEnable;
|
|
68
|
+
|
|
69
|
+
// 转化渐变色
|
|
97
70
|
var useLinearColor = 0; // 默认不生效
|
|
98
|
-
|
|
99
71
|
var sourceColorArr = [0, 0, 0, 0];
|
|
100
72
|
var targetColorArr = [0, 0, 0, 0];
|
|
101
|
-
|
|
102
73
|
if (sourceColor && targetColor) {
|
|
103
74
|
sourceColorArr = (0, _l7Utils.rgb2arr)(sourceColor);
|
|
104
75
|
targetColorArr = (0, _l7Utils.rgb2arr)(targetColor);
|
|
105
76
|
useLinearColor = 1;
|
|
106
77
|
}
|
|
107
|
-
|
|
108
78
|
if (this.raiseCount < 1 && this.raiseRepeat > 0) {
|
|
109
79
|
if (animateOption.enable) {
|
|
110
80
|
var _animateOption$speed = animateOption.speed,
|
|
111
|
-
|
|
81
|
+
speed = _animateOption$speed === void 0 ? 0.01 : _animateOption$speed;
|
|
112
82
|
this.raiseCount += speed;
|
|
113
|
-
|
|
114
83
|
if (this.raiseCount >= 1) {
|
|
115
84
|
if (this.raiseRepeat > 1) {
|
|
116
85
|
this.raiseCount = 0;
|
|
@@ -121,7 +90,6 @@ var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
121
90
|
}
|
|
122
91
|
}
|
|
123
92
|
}
|
|
124
|
-
|
|
125
93
|
return {
|
|
126
94
|
// 圆柱体的拾取高亮是否要计算光照
|
|
127
95
|
u_pickLight: Number(pickLight),
|
|
@@ -145,23 +113,18 @@ var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
145
113
|
value: function () {
|
|
146
114
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
147
115
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
148
|
-
while (1) {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
case "end":
|
|
155
|
-
return _context.stop();
|
|
156
|
-
}
|
|
116
|
+
while (1) switch (_context.prev = _context.next) {
|
|
117
|
+
case 0:
|
|
118
|
+
return _context.abrupt("return", this.buildModels());
|
|
119
|
+
case 1:
|
|
120
|
+
case "end":
|
|
121
|
+
return _context.stop();
|
|
157
122
|
}
|
|
158
123
|
}, _callee, this);
|
|
159
124
|
}));
|
|
160
|
-
|
|
161
125
|
function initModels() {
|
|
162
126
|
return _initModels.apply(this, arguments);
|
|
163
127
|
}
|
|
164
|
-
|
|
165
128
|
return initModels;
|
|
166
129
|
}()
|
|
167
130
|
}, {
|
|
@@ -169,46 +132,39 @@ var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
169
132
|
value: function () {
|
|
170
133
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
171
134
|
var _ref2, _ref2$animateOption$r, repeat, model;
|
|
172
|
-
|
|
173
135
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
174
|
-
while (1) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
case 6:
|
|
201
|
-
case "end":
|
|
202
|
-
return _context2.stop();
|
|
203
|
-
}
|
|
136
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
137
|
+
case 0:
|
|
138
|
+
// GAODE1.x GAODE2.x MAPBOX
|
|
139
|
+
_ref2 = this.layer.getLayerConfig(), _ref2$animateOption$r = _ref2.animateOption.repeat, repeat = _ref2$animateOption$r === void 0 ? 1 : _ref2$animateOption$r;
|
|
140
|
+
this.raiseRepeat = repeat;
|
|
141
|
+
_context2.next = 4;
|
|
142
|
+
return this.layer.buildLayerModel({
|
|
143
|
+
moduleName: 'pointEarthExtrude',
|
|
144
|
+
vertexShader: pointExtrudeVert,
|
|
145
|
+
fragmentShader: pointExtrudeFrag,
|
|
146
|
+
triangulation: _triangulation.PointExtrudeTriangulation,
|
|
147
|
+
depth: {
|
|
148
|
+
enable: true
|
|
149
|
+
},
|
|
150
|
+
cull: {
|
|
151
|
+
enable: true,
|
|
152
|
+
face: (0, _l7Utils.getCullFace)(this.mapService.version)
|
|
153
|
+
},
|
|
154
|
+
blend: this.getBlend()
|
|
155
|
+
});
|
|
156
|
+
case 4:
|
|
157
|
+
model = _context2.sent;
|
|
158
|
+
return _context2.abrupt("return", [model]);
|
|
159
|
+
case 6:
|
|
160
|
+
case "end":
|
|
161
|
+
return _context2.stop();
|
|
204
162
|
}
|
|
205
163
|
}, _callee2, this);
|
|
206
164
|
}));
|
|
207
|
-
|
|
208
165
|
function buildModels() {
|
|
209
166
|
return _buildModels.apply(this, arguments);
|
|
210
167
|
}
|
|
211
|
-
|
|
212
168
|
return buildModels;
|
|
213
169
|
}()
|
|
214
170
|
}, {
|
|
@@ -227,26 +183,23 @@ var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
227
183
|
size: 3,
|
|
228
184
|
update: function update(feature) {
|
|
229
185
|
var size = feature.size;
|
|
230
|
-
|
|
231
186
|
if (size) {
|
|
232
187
|
var buffersize = [];
|
|
233
|
-
|
|
234
188
|
if (Array.isArray(size)) {
|
|
235
189
|
buffersize = size.length === 2 ? [size[0], size[0], size[1]] : size;
|
|
236
190
|
}
|
|
237
|
-
|
|
238
191
|
if (!Array.isArray(size)) {
|
|
239
192
|
buffersize = [size, size, size];
|
|
240
193
|
}
|
|
241
|
-
|
|
242
194
|
return buffersize;
|
|
243
195
|
} else {
|
|
244
196
|
return [2, 2, 2];
|
|
245
197
|
}
|
|
246
198
|
}
|
|
247
199
|
}
|
|
248
|
-
});
|
|
200
|
+
});
|
|
249
201
|
|
|
202
|
+
// point layer size;
|
|
250
203
|
this.styleAttributeService.registerStyleAttribute({
|
|
251
204
|
name: 'normal',
|
|
252
205
|
type: _l7Core.AttributeType.Attribute,
|
|
@@ -285,5 +238,4 @@ var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
285
238
|
}]);
|
|
286
239
|
return ExtrudeModel;
|
|
287
240
|
}(_BaseModel2.default);
|
|
288
|
-
|
|
289
241
|
exports.default = ExtrudeModel;
|
|
@@ -1,95 +1,70 @@
|
|
|
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
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 _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
|
|
31
|
-
|
|
32
19
|
var _triangulation = require("../../core/triangulation");
|
|
33
|
-
|
|
34
20
|
var _l7Utils = require("@antv/l7-utils");
|
|
35
|
-
|
|
36
21
|
var _glMatrix = require("gl-matrix");
|
|
37
|
-
|
|
38
22
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
39
|
-
|
|
40
23
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
41
|
-
|
|
42
24
|
/* babel-plugin-inline-import '../shaders/earth/fill_frag.glsl' */
|
|
43
25
|
var pointFillFrag = "uniform float u_additive;\nuniform float u_opacity : 1;\nuniform float u_stroke_opacity : 1;\nuniform float u_stroke_width : 2;\n\nvarying vec4 v_data;\nvarying vec4 v_color;\nvarying float v_radius;\n\n#pragma include \"sdf_2d\"\n#pragma include \"picking\"\n\n\nvoid main() {\n int shape = int(floor(v_data.w + 0.5));\n\n vec4 strokeColor = textrueStroke == vec4(0) ? v_color : textrueStroke;\n\n lowp float antialiasblur = v_data.z;\n float r = v_radius / (v_radius + strokeWidth);\n\n float outer_df;\n float inner_df;\n // 'circle', 'triangle', 'square', 'pentagon', 'hexagon', 'octogon', 'hexagram', 'rhombus', 'vesica'\n if (shape == 0) {\n outer_df = sdCircle(v_data.xy, 1.0);\n inner_df = sdCircle(v_data.xy, r);\n } else if (shape == 1) {\n outer_df = sdEquilateralTriangle(1.1 * v_data.xy);\n inner_df = sdEquilateralTriangle(1.1 / r * v_data.xy);\n } else if (shape == 2) {\n outer_df = sdBox(v_data.xy, vec2(1.));\n inner_df = sdBox(v_data.xy, vec2(r));\n } else if (shape == 3) {\n outer_df = sdPentagon(v_data.xy, 0.8);\n inner_df = sdPentagon(v_data.xy, r * 0.8);\n } else if (shape == 4) {\n outer_df = sdHexagon(v_data.xy, 0.8);\n inner_df = sdHexagon(v_data.xy, r * 0.8);\n } else if (shape == 5) {\n outer_df = sdOctogon(v_data.xy, 1.0);\n inner_df = sdOctogon(v_data.xy, r);\n } else if (shape == 6) {\n outer_df = sdHexagram(v_data.xy, 0.52);\n inner_df = sdHexagram(v_data.xy, r * 0.52);\n } else if (shape == 7) {\n outer_df = sdRhombus(v_data.xy, vec2(1.0));\n inner_df = sdRhombus(v_data.xy, vec2(r));\n } else if (shape == 8) {\n outer_df = sdVesica(v_data.xy, 1.1, 0.8);\n inner_df = sdVesica(v_data.xy, r * 1.1, r * 0.8);\n }\n\n if(outer_df > antialiasblur + 0.018) discard;\n\n float opacity_t = smoothstep(0.0, antialiasblur, outer_df);\n\n float color_t = strokeWidth < 0.01 ? 0.0 : smoothstep(\n antialiasblur,\n 0.0,\n inner_df\n );\n\n if(strokeWidth < 0.01) {\n gl_FragColor = vec4(v_color.rgb, v_color.a * u_opacity);\n } else {\n gl_FragColor = mix(vec4(v_color.rgb, v_color.a * u_opacity), u_stroke_color * u_stroke_opacity, color_t);\n }\n\n if(u_additive > 0.0) {\n gl_FragColor *= opacity_t;\n gl_FragColor = filterColorAlpha(gl_FragColor, gl_FragColor.a);\n } else {\n gl_FragColor.a *= opacity_t;\n gl_FragColor = filterColor(gl_FragColor);\n }\n}\n";
|
|
44
|
-
|
|
45
26
|
/* babel-plugin-inline-import '../shaders/earth/fill_vert.glsl' */
|
|
46
27
|
var pointFillVert = "attribute vec4 a_Color;\nattribute vec3 a_Position;\nattribute vec3 a_Extrude;\nattribute float a_Size;\nattribute float a_Shape;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\n\nvarying vec4 v_data;\nvarying vec4 v_color;\nvarying float v_radius;\n\nuniform float u_opacity : 1;\nuniform float u_stroke_opacity : 1;\nuniform float u_stroke_width : 2;\nuniform vec4 u_stroke_color : [0.0, 0.0, 0.0, 0.0];\nuniform vec2 u_offsets;\n\nuniform float u_blur : 0.0;\n\n#pragma include \"projection\"\n#pragma include \"picking\"\n\n\nvoid main() {\n vec3 extrude = a_Extrude;\n float shape_type = a_Shape;\n /*\n * setPickingSize \u8BBE\u7F6E\u62FE\u53D6\u5927\u5C0F\n */\n float newSize = setPickingSize(a_Size);\n // float newSize = setPickingSize(a_Size) * 0.00001038445708445579;\n\n // unpack color(vec2)\n v_color = a_Color;\n\n // radius(16-bit)\n v_radius = newSize;\n\n // anti-alias\n // float antialiased_blur = -max(u_blur, antialiasblur);\n float antialiasblur = -max(2.0 / u_DevicePixelRatio / newSize, u_blur);\n\n // TODP: /abs(extrude.x) \u662F\u4E3A\u4E86\u517C\u5BB9\u5730\u7403\u6A21\u5F0F\n v_data = vec4(extrude.x/abs(extrude.x), extrude.y/abs(extrude.y), antialiasblur,shape_type);\n\n\n gl_Position = u_ViewProjectionMatrix * vec4(a_Position + extrude * newSize * 0.1 + u_offsets, 1.0);\n\n setPickingColor(a_PickingColor);\n}\n";
|
|
47
|
-
|
|
48
28
|
var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
49
29
|
(0, _inherits2.default)(FillModel, _BaseModel);
|
|
50
|
-
|
|
51
30
|
var _super = _createSuper(FillModel);
|
|
52
|
-
|
|
53
31
|
function FillModel() {
|
|
54
32
|
(0, _classCallCheck2.default)(this, FillModel);
|
|
55
33
|
return _super.apply(this, arguments);
|
|
56
34
|
}
|
|
57
|
-
|
|
58
35
|
(0, _createClass2.default)(FillModel, [{
|
|
59
36
|
key: "getUninforms",
|
|
60
37
|
value: function getUninforms() {
|
|
61
38
|
var _ref = this.layer.getLayerConfig(),
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
39
|
+
_ref$opacity = _ref.opacity,
|
|
40
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
41
|
+
_ref$strokeOpacity = _ref.strokeOpacity,
|
|
42
|
+
strokeOpacity = _ref$strokeOpacity === void 0 ? 1 : _ref$strokeOpacity,
|
|
43
|
+
_ref$strokeWidth = _ref.strokeWidth,
|
|
44
|
+
strokeWidth = _ref$strokeWidth === void 0 ? 0 : _ref$strokeWidth,
|
|
45
|
+
_ref$stroke = _ref.stroke,
|
|
46
|
+
stroke = _ref$stroke === void 0 ? 'rgba(0,0,0,0)' : _ref$stroke,
|
|
47
|
+
blend = _ref.blend,
|
|
48
|
+
_ref$blur = _ref.blur,
|
|
49
|
+
blur = _ref$blur === void 0 ? 0 : _ref$blur;
|
|
74
50
|
return {
|
|
75
51
|
u_blur: blur,
|
|
76
52
|
u_additive: blend === 'additive' ? 1.0 : 0.0,
|
|
77
53
|
u_opacity: opacity,
|
|
78
54
|
u_stroke_opacity: strokeOpacity,
|
|
79
55
|
u_stroke_width: strokeWidth,
|
|
80
|
-
u_stroke_color: (0, _l7Utils.rgb2arr)(stroke)
|
|
81
|
-
|
|
56
|
+
u_stroke_color: (0, _l7Utils.rgb2arr)(stroke)
|
|
57
|
+
// u_offsets: offsets,
|
|
82
58
|
};
|
|
83
59
|
}
|
|
84
60
|
}, {
|
|
85
61
|
key: "getAnimateUniforms",
|
|
86
62
|
value: function getAnimateUniforms() {
|
|
87
63
|
var _ref2 = this.layer.getLayerConfig(),
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
64
|
+
_ref2$animateOption = _ref2.animateOption,
|
|
65
|
+
animateOption = _ref2$animateOption === void 0 ? {
|
|
66
|
+
enable: false
|
|
67
|
+
} : _ref2$animateOption;
|
|
93
68
|
return {
|
|
94
69
|
u_animate: this.animateOption2Array(animateOption),
|
|
95
70
|
u_time: this.layer.getLayerAnimateTime()
|
|
@@ -100,23 +75,18 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
100
75
|
value: function () {
|
|
101
76
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
102
77
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
103
|
-
while (1) {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
case "end":
|
|
110
|
-
return _context.stop();
|
|
111
|
-
}
|
|
78
|
+
while (1) switch (_context.prev = _context.next) {
|
|
79
|
+
case 0:
|
|
80
|
+
return _context.abrupt("return", this.buildModels());
|
|
81
|
+
case 1:
|
|
82
|
+
case "end":
|
|
83
|
+
return _context.stop();
|
|
112
84
|
}
|
|
113
85
|
}, _callee, this);
|
|
114
86
|
}));
|
|
115
|
-
|
|
116
87
|
function initModels() {
|
|
117
88
|
return _initModels.apply(this, arguments);
|
|
118
89
|
}
|
|
119
|
-
|
|
120
90
|
return initModels;
|
|
121
91
|
}()
|
|
122
92
|
}, {
|
|
@@ -125,41 +95,34 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
125
95
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
126
96
|
var model;
|
|
127
97
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
128
|
-
while (1) {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
case 5:
|
|
149
|
-
case "end":
|
|
150
|
-
return _context2.stop();
|
|
151
|
-
}
|
|
98
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
99
|
+
case 0:
|
|
100
|
+
this.layer.triangulation = _triangulation.GlobelPointFillTriangulation;
|
|
101
|
+
_context2.next = 3;
|
|
102
|
+
return this.layer.buildLayerModel({
|
|
103
|
+
moduleName: 'pointEarthFill',
|
|
104
|
+
vertexShader: pointFillVert,
|
|
105
|
+
fragmentShader: pointFillFrag,
|
|
106
|
+
triangulation: _triangulation.GlobelPointFillTriangulation,
|
|
107
|
+
depth: {
|
|
108
|
+
enable: true
|
|
109
|
+
},
|
|
110
|
+
blend: this.getBlend()
|
|
111
|
+
});
|
|
112
|
+
case 3:
|
|
113
|
+
model = _context2.sent;
|
|
114
|
+
return _context2.abrupt("return", [model]);
|
|
115
|
+
case 5:
|
|
116
|
+
case "end":
|
|
117
|
+
return _context2.stop();
|
|
152
118
|
}
|
|
153
119
|
}, _callee2, this);
|
|
154
120
|
}));
|
|
155
|
-
|
|
156
121
|
function buildModels() {
|
|
157
122
|
return _buildModels.apply(this, arguments);
|
|
158
123
|
}
|
|
159
|
-
|
|
160
124
|
return buildModels;
|
|
161
125
|
}() // overwrite baseModel func
|
|
162
|
-
|
|
163
126
|
}, {
|
|
164
127
|
key: "animateOption2Array",
|
|
165
128
|
value: function animateOption2Array(option) {
|
|
@@ -169,7 +132,6 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
169
132
|
key: "registerBuiltinAttributes",
|
|
170
133
|
value: function registerBuiltinAttributes() {
|
|
171
134
|
var _this = this;
|
|
172
|
-
|
|
173
135
|
this.styleAttributeService.registerStyleAttribute({
|
|
174
136
|
name: 'extrude',
|
|
175
137
|
type: _l7Core.AttributeType.Attribute,
|
|
@@ -184,54 +146,36 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
184
146
|
size: 3,
|
|
185
147
|
update: function update(feature, featureIdx, vertex, attributeIdx) {
|
|
186
148
|
var _vertex = (0, _slicedToArray2.default)(vertex, 3),
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
149
|
+
x = _vertex[0],
|
|
150
|
+
y = _vertex[1],
|
|
151
|
+
z = _vertex[2];
|
|
191
152
|
var n1 = _glMatrix.vec3.fromValues(0, 0, 1);
|
|
192
|
-
|
|
193
153
|
var n2 = _glMatrix.vec3.fromValues(x, 0, z);
|
|
194
|
-
|
|
195
154
|
var xzReg = x >= 0 ? _glMatrix.vec3.angle(n1, n2) : Math.PI * 2 - _glMatrix.vec3.angle(n1, n2);
|
|
196
155
|
var yReg = Math.PI * 2 - Math.asin(y / 100);
|
|
197
|
-
|
|
198
156
|
var m = _glMatrix.mat4.create();
|
|
199
|
-
|
|
200
157
|
_glMatrix.mat4.rotateY(m, m, xzReg);
|
|
201
|
-
|
|
202
158
|
_glMatrix.mat4.rotateX(m, m, yReg);
|
|
203
|
-
|
|
204
159
|
var v1 = _glMatrix.vec3.fromValues(1, 1, 0);
|
|
205
|
-
|
|
206
160
|
_glMatrix.vec3.transformMat4(v1, v1, m);
|
|
207
|
-
|
|
208
161
|
_glMatrix.vec3.normalize(v1, v1);
|
|
209
|
-
|
|
210
162
|
var v2 = _glMatrix.vec3.fromValues(-1, 1, 0);
|
|
211
|
-
|
|
212
163
|
_glMatrix.vec3.transformMat4(v2, v2, m);
|
|
213
|
-
|
|
214
164
|
_glMatrix.vec3.normalize(v2, v2);
|
|
215
|
-
|
|
216
165
|
var v3 = _glMatrix.vec3.fromValues(-1, -1, 0);
|
|
217
|
-
|
|
218
166
|
_glMatrix.vec3.transformMat4(v3, v3, m);
|
|
219
|
-
|
|
220
167
|
_glMatrix.vec3.normalize(v3, v3);
|
|
221
|
-
|
|
222
168
|
var v4 = _glMatrix.vec3.fromValues(1, -1, 0);
|
|
223
|
-
|
|
224
169
|
_glMatrix.vec3.transformMat4(v4, v4, m);
|
|
225
|
-
|
|
226
170
|
_glMatrix.vec3.normalize(v4, v4);
|
|
227
|
-
|
|
228
171
|
var extrude = [].concat((0, _toConsumableArray2.default)(v1), (0, _toConsumableArray2.default)(v2), (0, _toConsumableArray2.default)(v3), (0, _toConsumableArray2.default)(v4));
|
|
229
172
|
var extrudeIndex = attributeIdx % 4 * 3;
|
|
230
173
|
return [extrude[extrudeIndex], extrude[extrudeIndex + 1], extrude[extrudeIndex + 2]];
|
|
231
174
|
}
|
|
232
175
|
}
|
|
233
|
-
});
|
|
176
|
+
});
|
|
234
177
|
|
|
178
|
+
// point layer size;
|
|
235
179
|
this.styleAttributeService.registerStyleAttribute({
|
|
236
180
|
name: 'size',
|
|
237
181
|
type: _l7Core.AttributeType.Attribute,
|
|
@@ -246,12 +190,13 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
246
190
|
size: 1,
|
|
247
191
|
update: function update(feature) {
|
|
248
192
|
var _feature$size = feature.size,
|
|
249
|
-
|
|
193
|
+
size = _feature$size === void 0 ? 5 : _feature$size;
|
|
250
194
|
return Array.isArray(size) ? [size[0]] : [size];
|
|
251
195
|
}
|
|
252
196
|
}
|
|
253
|
-
});
|
|
197
|
+
});
|
|
254
198
|
|
|
199
|
+
// point layer size;
|
|
255
200
|
this.styleAttributeService.registerStyleAttribute({
|
|
256
201
|
name: 'shape',
|
|
257
202
|
type: _l7Core.AttributeType.Attribute,
|
|
@@ -266,10 +211,8 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
266
211
|
size: 1,
|
|
267
212
|
update: function update(feature) {
|
|
268
213
|
var _feature$shape = feature.shape,
|
|
269
|
-
|
|
270
|
-
|
|
214
|
+
shape = _feature$shape === void 0 ? 2 : _feature$shape;
|
|
271
215
|
var shape2d = _this.layer.getLayerConfig().shape2d;
|
|
272
|
-
|
|
273
216
|
var shapeIndex = shape2d.indexOf(shape);
|
|
274
217
|
return [shapeIndex];
|
|
275
218
|
}
|
|
@@ -279,5 +222,4 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
279
222
|
}]);
|
|
280
223
|
return FillModel;
|
|
281
224
|
}(_BaseModel2.default);
|
|
282
|
-
|
|
283
225
|
exports.default = FillModel;
|