@antv/l7-layers 2.9.27-alpha.2 → 2.9.27-alpha.3
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 +6 -2
- package/es/Geometry/models/billboard.js +1 -2
- package/es/Geometry/models/plane.js +2 -4
- package/es/Geometry/models/sprite.js +2 -4
- package/es/canvas/index.d.ts +4 -0
- package/es/canvas/index.js +38 -2
- package/es/citybuliding/building.js +6 -2
- package/es/citybuliding/models/build.js +2 -3
- package/es/core/BaseLayer.d.ts +15 -6
- package/es/core/BaseLayer.js +51 -69
- package/es/core/BaseModel.d.ts +1 -1
- package/es/core/BaseModel.js +7 -3
- package/es/core/interface.d.ts +18 -0
- package/es/core/triangulation.d.ts +6 -0
- package/es/core/triangulation.js +64 -2
- package/es/earth/index.js +3 -1
- package/es/earth/models/base.js +2 -4
- package/es/earth/shaders/atmosphere_frag.glsl +1 -1
- package/es/earth/shaders/bloomsphere_frag.glsl +1 -1
- package/es/heatmap/index.js +6 -2
- package/es/heatmap/models/heatmap.js +5 -3
- package/es/image/index.js +6 -2
- package/es/image/models/dataImage.js +4 -7
- package/es/image/models/image.js +4 -7
- package/es/line/index.d.ts +1 -0
- package/es/line/index.js +8 -2
- package/es/line/models/arc.js +6 -5
- package/es/line/models/half.js +3 -4
- package/es/line/models/line.js +9 -8
- package/es/line/models/simpleLine.js +2 -1
- package/es/line/models/simpleTileLine.d.ts +9 -0
- package/es/line/models/simpleTileLine.js +100 -0
- package/es/line/models/tile.d.ts +1 -4
- package/es/line/models/tile.js +49 -222
- package/es/line/models/wall.js +10 -46
- package/es/line/shaders/dash/arc_dash_vert.glsl +2 -0
- package/es/line/shaders/dash/line_dash_frag.glsl +1 -1
- package/es/line/shaders/line_arc2d_vert.glsl +1 -1
- package/es/line/shaders/line_arc_3d_frag.glsl +1 -1
- package/es/line/shaders/line_arc_3d_vert.glsl +3 -3
- package/es/line/shaders/line_arc_frag.glsl +1 -1
- package/es/line/shaders/line_arc_great_circle_frag.glsl +1 -1
- package/es/line/shaders/line_arc_great_circle_vert.glsl +1 -1
- package/es/line/shaders/line_arc_vert.glsl +5 -3
- package/es/line/shaders/line_bezier_vert.glsl +1 -1
- package/es/line/shaders/line_frag.glsl +1 -2
- package/es/line/shaders/line_vert.glsl +1 -1
- package/es/line/shaders/linear/arc3d_linear_frag.glsl +1 -1
- package/es/line/shaders/linear/arc3d_linear_vert.glsl +3 -3
- package/es/line/shaders/linear/arc_linear_frag.glsl +1 -1
- package/es/line/shaders/tile/line_tile_map_vert.glsl +25 -0
- package/es/line/shaders/tile/line_tile_vert.glsl +19 -177
- package/es/line/shaders/tile/simpleline_map_vert.glsl +15 -0
- package/es/line/shaders/tile/simpleline_vert.glsl +21 -0
- package/es/line/shaders/{wall_frag.glsl → wall/wall_frag.glsl} +17 -21
- package/es/line/shaders/wall/wall_vert.glsl +77 -0
- package/es/mask/index.d.ts +1 -0
- package/es/mask/index.js +80 -5
- package/es/mask/models/fill.d.ts +2 -1
- package/es/mask/models/fill.js +13 -10
- package/es/mask/shaders/mask_vert.glsl +0 -6
- package/es/plugins/DataMappingPlugin.d.ts +4 -3
- package/es/plugins/DataMappingPlugin.js +129 -58
- package/es/plugins/DataSourcePlugin.js +3 -2
- package/es/plugins/FeatureScalePlugin.d.ts +0 -2
- package/es/plugins/FeatureScalePlugin.js +8 -51
- package/es/plugins/LayerAnimateStylePlugin.d.ts +0 -2
- package/es/plugins/LayerAnimateStylePlugin.js +7 -27
- package/es/plugins/LayerModelPlugin.js +2 -6
- package/es/plugins/LightingPlugin.js +1 -7
- package/es/plugins/MultiPassRendererPlugin.d.ts +0 -1
- package/es/plugins/MultiPassRendererPlugin.js +4 -16
- package/es/plugins/PixelPickingPlugin.d.ts +1 -1
- package/es/plugins/PixelPickingPlugin.js +8 -28
- package/es/plugins/RegisterStyleAttributePlugin.d.ts +4 -0
- package/es/plugins/RegisterStyleAttributePlugin.js +56 -5
- package/es/plugins/UpdateStyleAttributePlugin.js +2 -9
- package/es/point/index.js +6 -2
- package/es/point/models/fill.js +2 -2
- package/es/point/models/fillmage.js +1 -1
- package/es/point/models/image.js +1 -1
- package/es/point/models/normal.d.ts +0 -1
- package/es/point/models/normal.js +9 -60
- package/es/point/models/radar.js +4 -69
- package/es/point/models/simplePoint.d.ts +0 -1
- package/es/point/models/simplePoint.js +2 -11
- package/es/point/models/text.js +6 -7
- package/es/point/models/tile.d.ts +0 -7
- package/es/point/models/tile.js +22 -155
- package/es/point/models/tileText.d.ts +0 -4
- package/es/point/models/tileText.js +98 -185
- package/es/point/shaders/animate/wave_frag.glsl +3 -3
- package/es/point/shaders/earth/fill_vert.glsl +0 -1
- package/es/point/shaders/fill_vert.glsl +0 -1
- package/es/point/shaders/normal_frag.glsl +1 -10
- package/es/point/shaders/normal_vert.glsl +5 -60
- package/es/point/shaders/radar/radar_frag.glsl +4 -15
- package/es/point/shaders/radar/radar_vert.glsl +4 -54
- package/es/point/shaders/tile/fill_tile_frag.glsl +10 -17
- package/es/point/shaders/tile/fill_tile_vert.glsl +20 -123
- package/es/point/shaders/tile/text_frag.glsl +33 -0
- package/es/point/shaders/tile/text_map_frag.glsl +31 -0
- package/es/point/shaders/tile/text_map_vert.glsl +38 -0
- package/es/point/shaders/tile/text_vert.glsl +48 -0
- package/es/polygon/index.js +6 -2
- package/es/polygon/models/extrude.js +1 -3
- package/es/polygon/models/fill.js +3 -4
- package/es/polygon/models/ocean.d.ts +0 -2
- package/es/polygon/models/ocean.js +13 -47
- package/es/polygon/models/tile.d.ts +1 -4
- package/es/polygon/models/tile.js +25 -57
- package/es/polygon/models/water.d.ts +0 -2
- package/es/polygon/models/water.js +13 -47
- package/es/polygon/shaders/polygon_frag.glsl +2 -2
- package/es/polygon/shaders/polygon_vert.glsl +2 -2
- package/es/polygon/shaders/tile/polygon_tile_map_vert.glsl +16 -0
- package/es/polygon/shaders/tile/polygon_tile_vert.glsl +20 -60
- package/es/polygon/shaders/water/polygon_ocean_frag.glsl +1 -2
- package/es/polygon/shaders/water/polygon_ocean_vert.glsl +0 -31
- package/es/polygon/shaders/water/polygon_water_frag.glsl +1 -3
- package/es/polygon/shaders/water/polygon_water_vert.glsl +0 -29
- package/es/raster/buffers/triangulation.js +1 -4
- package/es/raster/index.js +6 -2
- package/es/raster/models/raster.js +3 -2
- package/es/shader/minify_frag.glsl +7 -0
- package/es/shader/minify_picking_frag.glsl +10 -0
- package/es/tile/manager/baseMapTileLayerManager.d.ts +29 -0
- package/es/tile/manager/baseMapTileLayerManager.js +207 -0
- package/es/tile/manager/tileLayerManager.d.ts +2 -2
- package/es/tile/manager/tileLayerManager.js +2 -2
- package/es/tile/manager/tilePickerManager.d.ts +2 -3
- package/es/tile/manager/tilePickerManager.js +1 -2
- package/es/tile/models/tileModel.d.ts +1 -0
- package/es/tile/models/tileModel.js +18 -2
- package/es/tile/tileFactory/base.d.ts +1 -1
- package/es/tile/tileFactory/base.js +58 -33
- package/es/tile/tileFactory/line.js +3 -0
- package/es/tile/tileFactory/point.js +3 -0
- package/es/tile/tileFactory/polygon.js +3 -0
- package/es/tile/tileFactory/raster.js +3 -0
- package/es/tile/tileFactory/rasterData.js +3 -0
- package/es/tile/tileFactory/rasterDataLayer.js +6 -2
- package/es/tile/tileFactory/test.js +26 -5
- package/es/tile/tileFactory/vectorLayer.d.ts +4 -1
- package/es/tile/tileFactory/vectorLayer.js +110 -7
- package/es/tile/tileLayer/baseMapTileLayer.d.ts +29 -0
- package/es/tile/tileLayer/baseMapTileLayer.js +188 -0
- package/es/tile/tileLayer/baseTileLayer.d.ts +4 -4
- package/es/tile/tileLayer/baseTileLayer.js +46 -75
- package/es/tile/tileTest.d.ts +1 -0
- package/es/tile/tileTest.js +3 -2
- package/es/tile/tmsMapTileLayer.d.ts +9 -0
- package/es/tile/tmsMapTileLayer.js +119 -0
- package/es/tile/tmsTileLayer.d.ts +2 -0
- package/es/tile/tmsTileLayer.js +24 -2
- package/es/tile/utils.d.ts +4 -0
- package/es/tile/utils.js +30 -0
- package/es/utils/dataMappingStyle.js +3 -0
- package/es/utils/layerData.js +2 -2
- package/es/utils/updateShape.js +2 -2
- package/es/wind/index.js +6 -2
- package/es/wind/models/wind.js +8 -8
- package/es/wind/shaders/wind_vert.glsl +1 -1
- package/lib/Geometry/index.js +6 -2
- package/lib/Geometry/models/billboard.js +1 -2
- package/lib/Geometry/models/plane.js +2 -4
- package/lib/Geometry/models/sprite.js +2 -4
- package/lib/canvas/index.js +37 -2
- package/lib/citybuliding/building.js +6 -2
- package/lib/citybuliding/models/build.js +2 -3
- package/lib/core/BaseLayer.js +51 -69
- package/lib/core/BaseModel.js +7 -3
- package/lib/core/triangulation.js +66 -2
- package/lib/earth/index.js +3 -1
- package/lib/earth/models/base.js +2 -4
- package/lib/earth/shaders/atmosphere_frag.glsl +1 -1
- package/lib/earth/shaders/bloomsphere_frag.glsl +1 -1
- package/lib/heatmap/index.js +6 -2
- package/lib/heatmap/models/heatmap.js +5 -3
- package/lib/image/index.js +6 -2
- package/lib/image/models/dataImage.js +4 -7
- package/lib/image/models/image.js +4 -7
- package/lib/line/index.js +7 -2
- package/lib/line/models/arc.js +6 -5
- package/lib/line/models/half.js +3 -4
- package/lib/line/models/line.js +9 -8
- package/lib/line/models/simpleLine.js +2 -1
- package/lib/line/models/simpleTileLine.js +115 -0
- package/lib/line/models/tile.js +49 -223
- package/lib/line/models/wall.js +10 -46
- package/lib/line/shaders/dash/arc_dash_vert.glsl +2 -0
- package/lib/line/shaders/dash/line_dash_frag.glsl +1 -1
- package/lib/line/shaders/line_arc2d_vert.glsl +1 -1
- package/lib/line/shaders/line_arc_3d_frag.glsl +1 -1
- package/lib/line/shaders/line_arc_3d_vert.glsl +3 -3
- package/lib/line/shaders/line_arc_frag.glsl +1 -1
- package/lib/line/shaders/line_arc_great_circle_frag.glsl +1 -1
- package/lib/line/shaders/line_arc_great_circle_vert.glsl +1 -1
- package/lib/line/shaders/line_arc_vert.glsl +5 -3
- package/lib/line/shaders/line_bezier_vert.glsl +1 -1
- package/lib/line/shaders/line_frag.glsl +1 -2
- package/lib/line/shaders/line_vert.glsl +1 -1
- package/lib/line/shaders/linear/arc3d_linear_frag.glsl +1 -1
- package/lib/line/shaders/linear/arc3d_linear_vert.glsl +3 -3
- package/lib/line/shaders/linear/arc_linear_frag.glsl +1 -1
- package/lib/line/shaders/tile/line_tile_map_vert.glsl +25 -0
- package/lib/line/shaders/tile/line_tile_vert.glsl +19 -177
- package/lib/line/shaders/tile/simpleline_map_vert.glsl +15 -0
- package/lib/line/shaders/tile/simpleline_vert.glsl +21 -0
- package/lib/line/shaders/{wall_frag.glsl → wall/wall_frag.glsl} +17 -21
- package/lib/line/shaders/wall/wall_vert.glsl +77 -0
- package/lib/mask/index.js +82 -5
- package/lib/mask/models/fill.js +14 -10
- package/lib/mask/shaders/mask_vert.glsl +0 -6
- package/lib/plugins/DataMappingPlugin.js +127 -57
- package/lib/plugins/DataSourcePlugin.js +3 -2
- package/lib/plugins/FeatureScalePlugin.js +6 -50
- package/lib/plugins/LayerAnimateStylePlugin.js +6 -29
- package/lib/plugins/LayerModelPlugin.js +2 -6
- package/lib/plugins/LightingPlugin.js +1 -7
- package/lib/plugins/MultiPassRendererPlugin.js +3 -19
- package/lib/plugins/PixelPickingPlugin.js +8 -28
- package/lib/plugins/RegisterStyleAttributePlugin.js +56 -5
- package/lib/plugins/UpdateStyleAttributePlugin.js +2 -9
- package/lib/point/index.js +6 -2
- package/lib/point/models/fill.js +2 -2
- package/lib/point/models/fillmage.js +1 -1
- package/lib/point/models/image.js +1 -1
- package/lib/point/models/normal.js +8 -59
- package/lib/point/models/radar.js +4 -69
- package/lib/point/models/simplePoint.js +1 -10
- package/lib/point/models/text.js +6 -7
- package/lib/point/models/tile.js +21 -156
- package/lib/point/models/tileText.js +97 -184
- package/lib/point/shaders/animate/wave_frag.glsl +3 -3
- package/lib/point/shaders/earth/fill_vert.glsl +0 -1
- package/lib/point/shaders/fill_vert.glsl +0 -1
- package/lib/point/shaders/normal_frag.glsl +1 -10
- package/lib/point/shaders/normal_vert.glsl +5 -60
- package/lib/point/shaders/radar/radar_frag.glsl +4 -15
- package/lib/point/shaders/radar/radar_vert.glsl +4 -54
- package/lib/point/shaders/tile/fill_tile_frag.glsl +10 -17
- package/lib/point/shaders/tile/fill_tile_vert.glsl +20 -123
- package/lib/point/shaders/tile/text_frag.glsl +33 -0
- package/lib/point/shaders/tile/text_map_frag.glsl +31 -0
- package/lib/point/shaders/tile/text_map_vert.glsl +38 -0
- package/lib/point/shaders/tile/text_vert.glsl +48 -0
- package/lib/polygon/index.js +6 -2
- package/lib/polygon/models/extrude.js +1 -3
- package/lib/polygon/models/fill.js +3 -4
- package/lib/polygon/models/ocean.js +14 -47
- package/lib/polygon/models/tile.js +24 -57
- package/lib/polygon/models/water.js +14 -47
- package/lib/polygon/shaders/polygon_frag.glsl +2 -2
- package/lib/polygon/shaders/polygon_vert.glsl +2 -2
- package/lib/polygon/shaders/tile/polygon_tile_map_vert.glsl +16 -0
- package/lib/polygon/shaders/tile/polygon_tile_vert.glsl +20 -60
- package/lib/polygon/shaders/water/polygon_ocean_frag.glsl +1 -2
- package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +0 -31
- package/lib/polygon/shaders/water/polygon_water_frag.glsl +1 -3
- package/lib/polygon/shaders/water/polygon_water_vert.glsl +0 -29
- package/lib/raster/buffers/triangulation.js +1 -4
- package/lib/raster/index.js +6 -2
- package/lib/raster/models/raster.js +3 -2
- package/lib/shader/minify_frag.glsl +7 -0
- package/lib/shader/minify_picking_frag.glsl +10 -0
- package/lib/tile/manager/baseMapTileLayerManager.js +222 -0
- package/lib/tile/manager/tileLayerManager.js +2 -2
- package/lib/tile/manager/tilePickerManager.js +1 -2
- package/lib/tile/models/tileModel.js +19 -2
- package/lib/tile/tileFactory/base.js +60 -33
- package/lib/tile/tileFactory/line.js +3 -0
- package/lib/tile/tileFactory/point.js +3 -0
- package/lib/tile/tileFactory/polygon.js +3 -0
- package/lib/tile/tileFactory/raster.js +3 -0
- package/lib/tile/tileFactory/rasterData.js +3 -0
- package/lib/tile/tileFactory/rasterDataLayer.js +6 -2
- package/lib/tile/tileFactory/test.js +26 -5
- package/lib/tile/tileFactory/vectorLayer.js +112 -8
- package/lib/tile/tileLayer/baseMapTileLayer.js +195 -0
- package/lib/tile/tileLayer/baseTileLayer.js +46 -75
- package/lib/tile/tileTest.js +3 -2
- package/lib/tile/tmsMapTileLayer.js +136 -0
- package/lib/tile/tmsTileLayer.js +25 -2
- package/lib/tile/utils.js +38 -0
- package/lib/utils/dataMappingStyle.js +3 -0
- package/lib/utils/layerData.js +2 -2
- package/lib/utils/updateShape.js +2 -2
- package/lib/wind/index.js +6 -2
- package/lib/wind/models/wind.js +7 -7
- package/lib/wind/shaders/wind_vert.glsl +1 -1
- package/package.json +8 -7
- package/es/line/shaders/tile/line_tile_frag.glsl +0 -79
- package/es/line/shaders/wall_vert.glsl +0 -111
- package/es/mask/shaders/mask_frag.glsl +0 -7
- package/es/polygon/shaders/tile/polygon_tile_frag.glsl +0 -12
- package/lib/line/shaders/tile/line_tile_frag.glsl +0 -79
- package/lib/line/shaders/wall_vert.glsl +0 -111
- package/lib/mask/shaders/mask_frag.glsl +0 -7
- package/lib/polygon/shaders/tile/polygon_tile_frag.glsl +0 -12
package/es/tile/tmsTileLayer.js
CHANGED
|
@@ -12,6 +12,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
12
12
|
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; } }
|
|
13
13
|
|
|
14
14
|
import BaseTileLayer from "./tileLayer/baseTileLayer";
|
|
15
|
+
import { tileAllLoad } from "./utils";
|
|
15
16
|
export var TMSTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
|
|
16
17
|
_inherits(TMSTileLayer, _BaseTileLayer);
|
|
17
18
|
|
|
@@ -83,18 +84,39 @@ export var TMSTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
|
|
|
83
84
|
|
|
84
85
|
var _layers = _this2.tileLayerManager.getChilds(tile.layerIDList);
|
|
85
86
|
|
|
86
|
-
_this2.
|
|
87
|
+
_this2.updateTileVisible(tile, _layers);
|
|
87
88
|
|
|
88
89
|
_this2.setPickState(_layers);
|
|
89
90
|
}
|
|
90
91
|
});
|
|
91
|
-
this.parent.renderLayers();
|
|
92
92
|
|
|
93
93
|
if (this.tilesetManager.isLoaded) {
|
|
94
94
|
// 将事件抛出,图层上可以使用瓦片
|
|
95
95
|
this.parent.emit('tiles-loaded', this.tilesetManager.currentTiles);
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
|
+
}, {
|
|
99
|
+
key: "emitTileVisibleEvent",
|
|
100
|
+
value: function emitTileVisibleEvent(tile, callback) {
|
|
101
|
+
if (tile.isVisible) {
|
|
102
|
+
callback();
|
|
103
|
+
} else {
|
|
104
|
+
tileAllLoad(tile, function () {
|
|
105
|
+
callback();
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}, {
|
|
110
|
+
key: "updateTileVisible",
|
|
111
|
+
value: function updateTileVisible(tile, layers) {
|
|
112
|
+
var _this3 = this;
|
|
113
|
+
|
|
114
|
+
this.emitTileVisibleEvent(tile, function () {
|
|
115
|
+
_this3.tileLayerManager.updateLayersConfig(layers, 'visible', tile.isVisible);
|
|
116
|
+
|
|
117
|
+
_this3.layerService.reRender();
|
|
118
|
+
});
|
|
119
|
+
}
|
|
98
120
|
}]);
|
|
99
121
|
|
|
100
122
|
return TMSTileLayer;
|
package/es/tile/utils.d.ts
CHANGED
|
@@ -11,3 +11,7 @@ export declare function getContainerSize(container: HTMLCanvasElement | HTMLElem
|
|
|
11
11
|
};
|
|
12
12
|
export declare function readRasterValue(tile: Tile, mapService: IMapService, x: number, y: number): any;
|
|
13
13
|
export declare function readPixel(x: number, y: number, rendererService: IRendererService): false | Uint8Array;
|
|
14
|
+
export declare function isTileLoaded(tile: Tile): boolean;
|
|
15
|
+
export declare function isTileChildLoaded(tile: Tile): boolean;
|
|
16
|
+
export declare function isTileParentLoaded(tile: Tile): boolean;
|
|
17
|
+
export declare function tileAllLoad(tile: Tile, callback: () => void): void;
|
package/es/tile/utils.js
CHANGED
|
@@ -128,4 +128,34 @@ export function readPixel(x, y, rendererService) {
|
|
|
128
128
|
data: new Uint8Array(1 * 1 * 4)
|
|
129
129
|
});
|
|
130
130
|
return pickedColors;
|
|
131
|
+
}
|
|
132
|
+
export function isTileLoaded(tile) {
|
|
133
|
+
return tile.layerIDList.length === tile.loadedLayers;
|
|
134
|
+
}
|
|
135
|
+
export function isTileChildLoaded(tile) {
|
|
136
|
+
var childs = tile.children;
|
|
137
|
+
return childs.filter(function (child) {
|
|
138
|
+
return isTileLoaded(child);
|
|
139
|
+
}).length === childs.length;
|
|
140
|
+
}
|
|
141
|
+
export function isTileParentLoaded(tile) {
|
|
142
|
+
var parent = tile.parent;
|
|
143
|
+
|
|
144
|
+
if (!parent) {
|
|
145
|
+
return true;
|
|
146
|
+
} else {
|
|
147
|
+
return isTileLoaded(parent);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
export function tileAllLoad(tile, callback) {
|
|
151
|
+
var timer = window.setInterval(function () {
|
|
152
|
+
var tileLoaded = isTileLoaded(tile);
|
|
153
|
+
var tileChildLoaded = isTileChildLoaded(tile);
|
|
154
|
+
var tileParentLoaded = isTileParentLoaded(tile);
|
|
155
|
+
|
|
156
|
+
if (tileLoaded && tileChildLoaded && tileParentLoaded) {
|
|
157
|
+
callback();
|
|
158
|
+
window.clearInterval(timer);
|
|
159
|
+
}
|
|
160
|
+
}, 36);
|
|
131
161
|
}
|
|
@@ -23,6 +23,9 @@ function registerStyleAttribute(fieldName, layer, field, values, updateOptions)
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
function handleStyleDataMapping(configToUpdate, layer) {
|
|
26
|
+
// 瓦片图层不需要进行样式数据映射
|
|
27
|
+
if (layer.tileLayer || layer.isTileLayer) return;
|
|
28
|
+
|
|
26
29
|
if (configToUpdate.opacity) {
|
|
27
30
|
// 处理 style 中 opacity 属性的数据映射
|
|
28
31
|
handleStyleFloat('opacity', layer, configToUpdate.opacity);
|
package/es/utils/layerData.js
CHANGED
|
@@ -17,7 +17,7 @@ function adjustData2Amap2Coordinates(mappedData, mapService) {
|
|
|
17
17
|
if (typeof mappedData[0].coordinates[0] === 'number') {
|
|
18
18
|
// 单个的点数据
|
|
19
19
|
// @ts-ignore
|
|
20
|
-
mappedData //
|
|
20
|
+
mappedData // 避免经纬度被重复计算导致坐标位置偏移
|
|
21
21
|
.filter(function (d) {
|
|
22
22
|
return !d.originCoordinates;
|
|
23
23
|
}).map(function (d) {
|
|
@@ -31,7 +31,7 @@ function adjustData2Amap2Coordinates(mappedData, mapService) {
|
|
|
31
31
|
} else {
|
|
32
32
|
// 连续的线、面数据
|
|
33
33
|
// @ts-ignore
|
|
34
|
-
mappedData //
|
|
34
|
+
mappedData // 避免经纬度被重复计算导致坐标位置偏移
|
|
35
35
|
.filter(function (d) {
|
|
36
36
|
return !d.originCoordinates;
|
|
37
37
|
}).map(function (d) {
|
package/es/utils/updateShape.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//
|
|
1
|
+
// shapeUpdateList 存储一系列的 shape 类型
|
|
2
2
|
// 当这一系列的 shape 相互切换的时候需要重构 layer 的 model (顶点数据集)
|
|
3
3
|
var shapeUpdateList = [// PointLayer
|
|
4
4
|
['circle', 'cylinder'], ['square', 'cylinder'], ['triangle', 'cylinder'], ['pentagon', 'cylinder'], ['hexagon', 'cylinder'], ['octogon', 'cylinder'], ['hexagram', 'cylinder'], ['rhombus', 'cylinder'], ['vesica', 'cylinder']];
|
|
@@ -11,7 +11,7 @@ export function updateShape(layer, lastShape, currentShape) {
|
|
|
11
11
|
|
|
12
12
|
shapeUpdateList.map(function (shapes) {
|
|
13
13
|
if (shapes.includes(lastShape) && shapes.includes(currentShape)) {
|
|
14
|
-
//
|
|
14
|
+
// dataSourceNeedUpdate 借用数据更新时更新 layer model 的工作流
|
|
15
15
|
layer.dataState.dataSourceNeedUpdate = true;
|
|
16
16
|
return;
|
|
17
17
|
}
|
package/es/wind/index.js
CHANGED
|
@@ -44,7 +44,9 @@ var WindLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
44
44
|
this.layerModel.initModels(function (models) {
|
|
45
45
|
_this2.models = models;
|
|
46
46
|
|
|
47
|
-
_this2.
|
|
47
|
+
_this2.emit('modelLoaded', null);
|
|
48
|
+
|
|
49
|
+
_this2.layerService.throttleRenderLayers();
|
|
48
50
|
});
|
|
49
51
|
}
|
|
50
52
|
}, {
|
|
@@ -53,7 +55,9 @@ var WindLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
53
55
|
var _this3 = this;
|
|
54
56
|
|
|
55
57
|
this.layerModel.buildModels(function (models) {
|
|
56
|
-
|
|
58
|
+
_this3.models = models;
|
|
59
|
+
|
|
60
|
+
_this3.emit('modelLoaded', null);
|
|
57
61
|
});
|
|
58
62
|
}
|
|
59
63
|
}, {
|
package/es/wind/models/wind.js
CHANGED
|
@@ -11,7 +11,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
11
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
12
|
|
|
13
13
|
import { AttributeType, gl } from '@antv/l7-core';
|
|
14
|
-
import { FrequencyController } from '@antv/l7-utils';
|
|
14
|
+
import { FrequencyController, getMask } from '@antv/l7-utils';
|
|
15
15
|
import BaseModel from "../../core/BaseModel";
|
|
16
16
|
import { RasterImageTriangulation } from "../../core/triangulation";
|
|
17
17
|
|
|
@@ -19,7 +19,7 @@ import { RasterImageTriangulation } from "../../core/triangulation";
|
|
|
19
19
|
var WindFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nvarying vec2 v_texCoord;\nvoid main() {\n vec4 color = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y));\n gl_FragColor = color;\n gl_FragColor.a *= u_opacity;\n}\n";
|
|
20
20
|
|
|
21
21
|
/* babel-plugin-inline-import '../shaders/wind_vert.glsl' */
|
|
22
|
-
var WindVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n
|
|
22
|
+
var WindVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\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.xy,0., 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n }\n}\n";
|
|
23
23
|
import { Wind } from "./windRender";
|
|
24
24
|
var defaultRampColors = {
|
|
25
25
|
0.0: '#3288bd',
|
|
@@ -149,9 +149,7 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
149
149
|
height: imageHeight
|
|
150
150
|
});
|
|
151
151
|
|
|
152
|
-
_this3.layerService.
|
|
153
|
-
|
|
154
|
-
_this3.layerService.renderLayers();
|
|
152
|
+
_this3.layerService.reRender();
|
|
155
153
|
});
|
|
156
154
|
this.layer.buildLayerModel({
|
|
157
155
|
moduleName: 'wind',
|
|
@@ -162,7 +160,9 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
162
160
|
depth: {
|
|
163
161
|
enable: false
|
|
164
162
|
},
|
|
165
|
-
|
|
163
|
+
stencil: getMask(mask, maskInside),
|
|
164
|
+
blend: this.getBlend(),
|
|
165
|
+
pick: false
|
|
166
166
|
}).then(function (model) {
|
|
167
167
|
_this3.colorModel = model;
|
|
168
168
|
callbackModel([model]);
|
|
@@ -225,7 +225,7 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
225
225
|
type: gl.FLOAT
|
|
226
226
|
},
|
|
227
227
|
size: 2,
|
|
228
|
-
update: function update(feature, featureIdx, vertex
|
|
228
|
+
update: function update(feature, featureIdx, vertex) {
|
|
229
229
|
return [vertex[3], vertex[4]];
|
|
230
230
|
}
|
|
231
231
|
}
|
|
@@ -291,7 +291,7 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
291
291
|
var _this$wind$draw = this.wind.draw(),
|
|
292
292
|
d = _this$wind$draw.d,
|
|
293
293
|
w = _this$wind$draw.w,
|
|
294
|
-
h = _this$wind$draw.h; //
|
|
294
|
+
h = _this$wind$draw.h; // 恢复 L7 渲染流程中 gl 状态
|
|
295
295
|
|
|
296
296
|
|
|
297
297
|
this.rendererService.setBaseState();
|
|
@@ -8,7 +8,7 @@ varying vec2 v_texCoord;
|
|
|
8
8
|
void main() {
|
|
9
9
|
v_texCoord = a_Uv;
|
|
10
10
|
vec4 project_pos = project_position(vec4(a_Position, 1.0));
|
|
11
|
-
|
|
11
|
+
|
|
12
12
|
if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x
|
|
13
13
|
gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));
|
|
14
14
|
} else {
|
package/lib/Geometry/index.js
CHANGED
|
@@ -71,7 +71,9 @@ var GeometryLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
71
71
|
this.layerModel.initModels(function (models) {
|
|
72
72
|
_this2.models = models;
|
|
73
73
|
|
|
74
|
-
_this2.
|
|
74
|
+
_this2.emit('modelLoaded', null);
|
|
75
|
+
|
|
76
|
+
_this2.layerService.throttleRenderLayers();
|
|
75
77
|
});
|
|
76
78
|
}
|
|
77
79
|
}, {
|
|
@@ -80,7 +82,9 @@ var GeometryLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
80
82
|
var _this3 = this;
|
|
81
83
|
|
|
82
84
|
this.layerModel.buildModels(function (models) {
|
|
83
|
-
|
|
85
|
+
_this3.models = models;
|
|
86
|
+
|
|
87
|
+
_this3.emit('modelLoaded', null);
|
|
84
88
|
});
|
|
85
89
|
}
|
|
86
90
|
}, {
|
|
@@ -181,8 +181,7 @@ var BillBoardModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
181
181
|
wrapS: _l7Core.gl.CLAMP_TO_EDGE,
|
|
182
182
|
wrapT: _l7Core.gl.CLAMP_TO_EDGE
|
|
183
183
|
});
|
|
184
|
-
this.layerService.
|
|
185
|
-
this.layerService.renderLayers();
|
|
184
|
+
this.layerService.reRender();
|
|
186
185
|
}
|
|
187
186
|
}
|
|
188
187
|
}, {
|
|
@@ -281,9 +281,7 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
281
281
|
wrapT: _l7Core.gl.CLAMP_TO_EDGE
|
|
282
282
|
});
|
|
283
283
|
|
|
284
|
-
_this3.layerService.
|
|
285
|
-
|
|
286
|
-
_this3.layerService.renderLayers();
|
|
284
|
+
_this3.layerService.reRender();
|
|
287
285
|
};
|
|
288
286
|
|
|
289
287
|
img.src = mapTexture;
|
|
@@ -344,7 +342,7 @@ var PlaneModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
344
342
|
};
|
|
345
343
|
});
|
|
346
344
|
this.layer.updateModelData(modelData);
|
|
347
|
-
this.layerService.
|
|
345
|
+
this.layerService.throttleRenderLayers();
|
|
348
346
|
}
|
|
349
347
|
/**
|
|
350
348
|
* load terrain texture & offset attribute z
|
|
@@ -104,7 +104,7 @@ var SpriteModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
104
104
|
m.updateAttributes(attributes);
|
|
105
105
|
});
|
|
106
106
|
|
|
107
|
-
_this.
|
|
107
|
+
_this.layerService.throttleRenderLayers();
|
|
108
108
|
|
|
109
109
|
_this.timer = requestAnimationFrame(_this.updateModel);
|
|
110
110
|
});
|
|
@@ -280,9 +280,7 @@ var SpriteModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
280
280
|
wrapT: _l7Core.gl.CLAMP_TO_EDGE
|
|
281
281
|
});
|
|
282
282
|
|
|
283
|
-
_this4.layerService.
|
|
284
|
-
|
|
285
|
-
_this4.layerService.renderLayers();
|
|
283
|
+
_this4.layerService.reRender();
|
|
286
284
|
};
|
|
287
285
|
|
|
288
286
|
img.src = mapTexture;
|
package/lib/canvas/index.js
CHANGED
|
@@ -45,6 +45,7 @@ var CanvasLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
45
45
|
|
|
46
46
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
47
47
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'CanvasLayer');
|
|
48
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "forceRender", true);
|
|
48
49
|
return _this;
|
|
49
50
|
}
|
|
50
51
|
|
|
@@ -58,7 +59,9 @@ var CanvasLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
58
59
|
this.layerModel.initModels(function (models) {
|
|
59
60
|
_this2.models = models;
|
|
60
61
|
|
|
61
|
-
_this2.
|
|
62
|
+
_this2.emit('modelLoaded', null);
|
|
63
|
+
|
|
64
|
+
_this2.layerService.throttleRenderLayers();
|
|
62
65
|
});
|
|
63
66
|
}
|
|
64
67
|
}, {
|
|
@@ -67,8 +70,40 @@ var CanvasLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
67
70
|
var _this3 = this;
|
|
68
71
|
|
|
69
72
|
this.layerModel.buildModels(function (models) {
|
|
70
|
-
|
|
73
|
+
_this3.models = models;
|
|
74
|
+
|
|
75
|
+
_this3.emit('modelLoaded', null);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}, {
|
|
79
|
+
key: "hide",
|
|
80
|
+
value: function hide() {
|
|
81
|
+
var _this$layerModel;
|
|
82
|
+
|
|
83
|
+
// 清除画布
|
|
84
|
+
this.layerModel.clearCanvas && ((_this$layerModel = this.layerModel) === null || _this$layerModel === void 0 ? void 0 : _this$layerModel.clearCanvas());
|
|
85
|
+
this.updateLayerConfig({
|
|
86
|
+
visible: false
|
|
87
|
+
});
|
|
88
|
+
this.reRender();
|
|
89
|
+
return this;
|
|
90
|
+
}
|
|
91
|
+
}, {
|
|
92
|
+
key: "renderModels",
|
|
93
|
+
value: function renderModels() {
|
|
94
|
+
var _this$layerModel2,
|
|
95
|
+
_this4 = this;
|
|
96
|
+
|
|
97
|
+
if (this !== null && this !== void 0 && (_this$layerModel2 = this.layerModel) !== null && _this$layerModel2 !== void 0 && _this$layerModel2.renderUpdate) {
|
|
98
|
+
this.layerModel.renderUpdate();
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
this.models.forEach(function (model) {
|
|
102
|
+
model.draw({
|
|
103
|
+
uniforms: _this4.layerModel.getUninforms()
|
|
104
|
+
}, false);
|
|
71
105
|
});
|
|
106
|
+
return this;
|
|
72
107
|
}
|
|
73
108
|
}, {
|
|
74
109
|
key: "getConfigSchema",
|
|
@@ -57,7 +57,9 @@ var CityBuildingLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
57
57
|
this.layerModel.initModels(function (models) {
|
|
58
58
|
_this2.models = models;
|
|
59
59
|
|
|
60
|
-
_this2.
|
|
60
|
+
_this2.emit('modelLoaded', null);
|
|
61
|
+
|
|
62
|
+
_this2.layerService.throttleRenderLayers();
|
|
61
63
|
});
|
|
62
64
|
}
|
|
63
65
|
}, {
|
|
@@ -66,7 +68,9 @@ var CityBuildingLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
66
68
|
var _this3 = this;
|
|
67
69
|
|
|
68
70
|
this.layerModel.buildModels(function (models) {
|
|
69
|
-
|
|
71
|
+
_this3.models = models;
|
|
72
|
+
|
|
73
|
+
_this3.emit('modelLoaded', null);
|
|
70
74
|
});
|
|
71
75
|
}
|
|
72
76
|
}, {
|
|
@@ -170,7 +170,7 @@ var CityBuildModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
170
170
|
type: _l7Core.gl.FLOAT
|
|
171
171
|
},
|
|
172
172
|
size: 1,
|
|
173
|
-
update: function update(feature
|
|
173
|
+
update: function update(feature) {
|
|
174
174
|
var _feature$size = feature.size,
|
|
175
175
|
size = _feature$size === void 0 ? 10 : _feature$size;
|
|
176
176
|
return Array.isArray(size) ? [size[0]] : [size];
|
|
@@ -189,8 +189,7 @@ var CityBuildModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
189
189
|
type: _l7Core.gl.FLOAT
|
|
190
190
|
},
|
|
191
191
|
size: 2,
|
|
192
|
-
update: function update(feature, featureIdx, vertex
|
|
193
|
-
var size = feature.size;
|
|
192
|
+
update: function update(feature, featureIdx, vertex) {
|
|
194
193
|
return [vertex[3], vertex[4]];
|
|
195
194
|
}
|
|
196
195
|
}
|
package/lib/core/BaseLayer.js
CHANGED
|
@@ -83,13 +83,13 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
83
83
|
|
|
84
84
|
// 生命周期钩子
|
|
85
85
|
// 待渲染 model 列表
|
|
86
|
-
//
|
|
86
|
+
// 用于保存子图层对象
|
|
87
87
|
// Tip: 用于标识矢量图层
|
|
88
88
|
|
|
89
89
|
/**
|
|
90
90
|
* 待更新样式属性,在初始化阶段完成注册
|
|
91
91
|
*/
|
|
92
|
-
//
|
|
92
|
+
// Tip: layer 保底颜色
|
|
93
93
|
// private pickingPassRender: IPass<'pixelPicking'>;
|
|
94
94
|
function BaseLayer() {
|
|
95
95
|
var _this;
|
|
@@ -160,9 +160,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
160
160
|
|
|
161
161
|
if (layerConfig && layerConfig.autoFit) {
|
|
162
162
|
_this.fitBounds(layerConfig.fitBoundsOptions);
|
|
163
|
-
}
|
|
164
|
-
// this.emit('dataUpdate');
|
|
165
|
-
|
|
163
|
+
}
|
|
166
164
|
|
|
167
165
|
_this.reRender();
|
|
168
166
|
});
|
|
@@ -426,15 +424,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
426
424
|
}, {
|
|
427
425
|
key: "color",
|
|
428
426
|
value: function color(field, values, updateOptions) {
|
|
429
|
-
|
|
430
|
-
this.updateStyleAttribute('color', field, values, updateOptions); // this.pendingStyleAttributes.push({
|
|
431
|
-
// attributeName: 'color',
|
|
432
|
-
// attributeField: field,
|
|
433
|
-
// attributeValues: values,
|
|
434
|
-
// defaultName: 'colors',
|
|
435
|
-
// updateOptions,
|
|
436
|
-
// });
|
|
437
|
-
|
|
427
|
+
this.updateStyleAttribute('color', field, values, updateOptions);
|
|
438
428
|
return this;
|
|
439
429
|
} // 为对应的图层传入纹理的编号名称(point/image 在 shape 方法中传入纹理名称的方法并不通用)
|
|
440
430
|
|
|
@@ -474,7 +464,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
474
464
|
field: field,
|
|
475
465
|
values: values
|
|
476
466
|
};
|
|
477
|
-
this.updateStyleAttribute('shape', field, values, updateOptions); //
|
|
467
|
+
this.updateStyleAttribute('shape', field, values, updateOptions); // Tip: 根据 shape 判断是否需要更新 model
|
|
478
468
|
|
|
479
469
|
if (!this.tileLayer) {
|
|
480
470
|
(0, _updateShape.updateShape)(this, lastShape, currentShape);
|
|
@@ -613,7 +603,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
613
603
|
}, {
|
|
614
604
|
key: "render",
|
|
615
605
|
value: function render() {
|
|
616
|
-
if (this.tileLayer
|
|
606
|
+
if (this.tileLayer) {
|
|
617
607
|
// 瓦片图层执行单独的 render 渲染队列
|
|
618
608
|
this.tileLayer.render();
|
|
619
609
|
return this;
|
|
@@ -810,11 +800,6 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
810
800
|
}, {
|
|
811
801
|
key: "hide",
|
|
812
802
|
value: function hide() {
|
|
813
|
-
if (this.type === 'CanvasLayer' && this.layerModel.clearCanvas) {
|
|
814
|
-
// 对 canvasLayer 的 hide 操作做特殊处理
|
|
815
|
-
this.layerModel.clearCanvas();
|
|
816
|
-
}
|
|
817
|
-
|
|
818
803
|
this.updateLayerConfig({
|
|
819
804
|
visible: false
|
|
820
805
|
});
|
|
@@ -970,7 +955,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
970
955
|
}, {
|
|
971
956
|
key: "destroy",
|
|
972
957
|
value: function destroy() {
|
|
973
|
-
var _this$layerModel2;
|
|
958
|
+
var _this$multiPassRender, _this$layerModel2;
|
|
974
959
|
|
|
975
960
|
var refresh = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
976
961
|
|
|
@@ -980,25 +965,24 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
980
965
|
|
|
981
966
|
|
|
982
967
|
this.layerChildren.map(function (child) {
|
|
983
|
-
return child.destroy();
|
|
968
|
+
return child.destroy(false);
|
|
984
969
|
});
|
|
985
970
|
this.layerChildren = []; // remove mask list
|
|
986
971
|
|
|
987
972
|
this.masks.map(function (mask) {
|
|
988
|
-
return mask.destroy();
|
|
973
|
+
return mask.destroy(false);
|
|
989
974
|
});
|
|
990
975
|
this.masks = [];
|
|
991
976
|
this.hooks.beforeDestroy.call(); // 清除sources事件
|
|
992
977
|
|
|
993
978
|
this.layerSource.off('sourceUpdate', this.sourceEvent);
|
|
994
|
-
this.multiPassRenderer.destroy(); //
|
|
995
|
-
// 清除所有属性以及关联的 vao == 销毁所有 => model this.models.forEach((model) => model.destroy());
|
|
979
|
+
(_this$multiPassRender = this.multiPassRenderer) === null || _this$multiPassRender === void 0 ? void 0 : _this$multiPassRender.destroy(); // 清除所有属性以及关联的 vao == 销毁所有 => model this.models.forEach((model) => model.destroy());
|
|
996
980
|
|
|
997
981
|
this.styleAttributeService.clearAllAttributes(); // 执行每个图层单独的 clearModels 方法 (清除一些额外的 texture、program、buffer 等)
|
|
998
982
|
|
|
999
|
-
this.hooks.afterDestroy.call(); //
|
|
983
|
+
this.hooks.afterDestroy.call(); // Tip: 清除各个图层自定义的 models 资源
|
|
1000
984
|
|
|
1001
|
-
(_this$layerModel2 = this.layerModel) === null || _this$layerModel2 === void 0 ? void 0 : _this$layerModel2.clearModels();
|
|
985
|
+
(_this$layerModel2 = this.layerModel) === null || _this$layerModel2 === void 0 ? void 0 : _this$layerModel2.clearModels(refresh);
|
|
1002
986
|
this.models = [];
|
|
1003
987
|
this.layerService.cleanRemove(this, refresh);
|
|
1004
988
|
this.emit('remove', {
|
|
@@ -1173,45 +1157,47 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
1173
1157
|
|
|
1174
1158
|
var createModel = this.rendererService.createModel;
|
|
1175
1159
|
return new Promise(function (resolve, reject) {
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1160
|
+
setTimeout(function () {
|
|
1161
|
+
// filter supported worker & worker enabled layer
|
|
1162
|
+
if (workerOptions && workerOptions.modelType in _l7Utils.WorkerSourceMap && workerEnabled) {
|
|
1163
|
+
_this9.styleAttributeService.createAttributesAndIndicesAscy(_this9.encodedData, segmentNumber, workerOptions).then(function (_ref7) {
|
|
1164
|
+
var attributes = _ref7.attributes,
|
|
1165
|
+
elements = _ref7.elements;
|
|
1166
|
+
var m = createModel((0, _objectSpread2.default)({
|
|
1167
|
+
attributes: attributes,
|
|
1168
|
+
uniforms: uniforms,
|
|
1169
|
+
fs: fs,
|
|
1170
|
+
vs: vs,
|
|
1171
|
+
elements: elements,
|
|
1172
|
+
blend: _blend.BlendTypes[_l7Core.BlendType.normal]
|
|
1173
|
+
}, rest));
|
|
1174
|
+
resolve(m);
|
|
1175
|
+
}).catch(function (err) {
|
|
1176
|
+
return reject(err);
|
|
1177
|
+
});
|
|
1178
|
+
} else {
|
|
1179
|
+
var _this9$styleAttribute = _this9.styleAttributeService.createAttributesAndIndices(_this9.encodedData, triangulation, segmentNumber),
|
|
1180
|
+
attributes = _this9$styleAttribute.attributes,
|
|
1181
|
+
elements = _this9$styleAttribute.elements,
|
|
1182
|
+
count = _this9$styleAttribute.count;
|
|
1183
|
+
|
|
1184
|
+
var modeloptions = (0, _objectSpread2.default)({
|
|
1182
1185
|
attributes: attributes,
|
|
1183
1186
|
uniforms: uniforms,
|
|
1184
1187
|
fs: fs,
|
|
1185
1188
|
vs: vs,
|
|
1186
1189
|
elements: elements,
|
|
1187
1190
|
blend: _blend.BlendTypes[_l7Core.BlendType.normal]
|
|
1188
|
-
}, rest)
|
|
1191
|
+
}, rest);
|
|
1192
|
+
|
|
1193
|
+
if (count) {
|
|
1194
|
+
modeloptions.count = count;
|
|
1195
|
+
}
|
|
1196
|
+
|
|
1197
|
+
var m = createModel(modeloptions);
|
|
1189
1198
|
resolve(m);
|
|
1190
|
-
}).catch(function (err) {
|
|
1191
|
-
return reject(err);
|
|
1192
|
-
});
|
|
1193
|
-
} else {
|
|
1194
|
-
var _this9$styleAttribute = _this9.styleAttributeService.createAttributesAndIndices(_this9.encodedData, triangulation, segmentNumber),
|
|
1195
|
-
attributes = _this9$styleAttribute.attributes,
|
|
1196
|
-
elements = _this9$styleAttribute.elements,
|
|
1197
|
-
count = _this9$styleAttribute.count;
|
|
1198
|
-
|
|
1199
|
-
var modeloptions = (0, _objectSpread2.default)({
|
|
1200
|
-
attributes: attributes,
|
|
1201
|
-
uniforms: uniforms,
|
|
1202
|
-
fs: fs,
|
|
1203
|
-
vs: vs,
|
|
1204
|
-
elements: elements,
|
|
1205
|
-
blend: _blend.BlendTypes[_l7Core.BlendType.normal]
|
|
1206
|
-
}, rest);
|
|
1207
|
-
|
|
1208
|
-
if (count) {
|
|
1209
|
-
modeloptions.count = count;
|
|
1210
1199
|
}
|
|
1211
|
-
|
|
1212
|
-
var m = createModel(modeloptions);
|
|
1213
|
-
resolve(m);
|
|
1214
|
-
}
|
|
1200
|
+
});
|
|
1215
1201
|
});
|
|
1216
1202
|
}
|
|
1217
1203
|
}, {
|
|
@@ -1255,6 +1241,9 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
1255
1241
|
}, {
|
|
1256
1242
|
key: "needPick",
|
|
1257
1243
|
value: function needPick(type) {
|
|
1244
|
+
// 地图图层的判断
|
|
1245
|
+
if (this.rawConfig.usage === 'basemap') return false;
|
|
1246
|
+
|
|
1258
1247
|
var _this$getLayerConfig10 = this.getLayerConfig(),
|
|
1259
1248
|
_this$getLayerConfig11 = _this$getLayerConfig10.enableHighlight,
|
|
1260
1249
|
enableHighlight = _this$getLayerConfig11 === void 0 ? true : _this$getLayerConfig11,
|
|
@@ -1312,8 +1301,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
1312
1301
|
}, {
|
|
1313
1302
|
key: "renderModels",
|
|
1314
1303
|
value: function renderModels(isPicking) {
|
|
1315
|
-
var _this10 = this
|
|
1316
|
-
_this$layerModel4;
|
|
1304
|
+
var _this10 = this;
|
|
1317
1305
|
|
|
1318
1306
|
// TODO: this.getEncodedData().length > 0 这个判断是为了解决在 2.5.x 引入数据纹理后产生的 空数据渲染导致 texture 超出上限问题
|
|
1319
1307
|
if (this.encodeDataLength <= 0 && !this.forceRender) return this;
|
|
@@ -1328,10 +1316,6 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
1328
1316
|
});
|
|
1329
1317
|
}
|
|
1330
1318
|
|
|
1331
|
-
if (this !== null && this !== void 0 && (_this$layerModel4 = this.layerModel) !== null && _this$layerModel4 !== void 0 && _this$layerModel4.renderUpdate) {
|
|
1332
|
-
this.layerModel.renderUpdate();
|
|
1333
|
-
}
|
|
1334
|
-
|
|
1335
1319
|
this.models.forEach(function (model) {
|
|
1336
1320
|
model.draw({
|
|
1337
1321
|
uniforms: _this10.layerModel.getUninforms()
|
|
@@ -1370,6 +1354,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
1370
1354
|
* 继承空方法
|
|
1371
1355
|
* @param time
|
|
1372
1356
|
*/
|
|
1357
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1373
1358
|
|
|
1374
1359
|
}, {
|
|
1375
1360
|
key: "setEarthTime",
|
|
@@ -1394,10 +1379,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
1394
1379
|
}, {
|
|
1395
1380
|
key: "reRender",
|
|
1396
1381
|
value: function reRender() {
|
|
1397
|
-
|
|
1398
|
-
this.layerService.updateLayerRenderList();
|
|
1399
|
-
this.layerService.renderLayers();
|
|
1400
|
-
}
|
|
1382
|
+
this.inited && this.layerService.reRender();
|
|
1401
1383
|
}
|
|
1402
1384
|
}, {
|
|
1403
1385
|
key: "splitValuesAndCallbackInAttribute",
|