@antv/l7-layers 2.10.5 → 2.10.7
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.d.ts +2 -3
- package/es/Geometry/index.js +27 -17
- package/es/Geometry/models/billboard.d.ts +2 -2
- package/es/Geometry/models/billboard.js +77 -37
- package/es/Geometry/models/plane.d.ts +2 -2
- package/es/Geometry/models/plane.js +80 -40
- package/es/Geometry/models/sprite.d.ts +2 -2
- package/es/Geometry/models/sprite.js +83 -45
- package/es/canvas/index.d.ts +2 -3
- package/es/canvas/index.js +29 -19
- package/es/canvas/models/canvas.d.ts +2 -2
- package/es/canvas/models/canvas.js +54 -15
- package/es/citybuliding/building.d.ts +2 -3
- package/es/citybuliding/building.js +26 -17
- package/es/citybuliding/models/build.d.ts +2 -2
- package/es/citybuliding/models/build.js +70 -25
- package/es/core/BaseLayer.d.ts +22 -18
- package/es/core/BaseLayer.js +387 -266
- package/es/core/BaseModel.d.ts +2 -2
- package/es/core/BaseModel.js +47 -6
- package/es/core/LayerPickService.d.ts +12 -0
- package/es/core/LayerPickService.js +165 -0
- package/es/core/TextureService.d.ts +14 -0
- package/es/core/TextureService.js +67 -0
- package/es/core/triangulation.js +8 -1
- package/es/earth/index.d.ts +2 -2
- package/es/earth/index.js +28 -9
- package/es/earth/models/atmosphere.d.ts +2 -2
- package/es/earth/models/atmosphere.js +67 -22
- package/es/earth/models/base.d.ts +2 -2
- package/es/earth/models/base.js +89 -43
- package/es/earth/models/bloomsphere.d.ts +2 -2
- package/es/earth/models/bloomsphere.js +67 -22
- package/es/heatmap/index.d.ts +2 -3
- package/es/heatmap/index.js +33 -24
- package/es/heatmap/models/grid.d.ts +2 -2
- package/es/heatmap/models/grid.js +68 -27
- package/es/heatmap/models/grid3d.d.ts +2 -2
- package/es/heatmap/models/grid3d.js +70 -29
- package/es/heatmap/models/heatmap.d.ts +2 -2
- package/es/heatmap/models/heatmap.js +40 -14
- package/es/heatmap/models/hexagon.d.ts +2 -2
- package/es/heatmap/models/hexagon.js +69 -28
- package/es/heatmap/shaders/hexagon_3d_vert.glsl +2 -13
- package/es/image/index.d.ts +3 -4
- package/es/image/index.js +29 -34
- package/es/image/models/image.d.ts +2 -2
- package/es/image/models/image.js +117 -67
- package/es/image/models/index.d.ts +1 -1
- package/es/image/models/index.js +1 -5
- package/es/image/shaders/dataImage_frag.glsl +10 -16
- package/es/index.d.ts +2 -2
- package/es/index.js +2 -2
- package/es/line/index.d.ts +5 -4
- package/es/line/index.js +51 -25
- package/es/line/models/arc.d.ts +2 -2
- package/es/line/models/arc.js +73 -38
- package/es/line/models/arc_3d.d.ts +2 -2
- package/es/line/models/arc_3d.js +69 -34
- package/es/line/models/earthArc_3d.d.ts +2 -2
- package/es/line/models/earthArc_3d.js +72 -37
- package/es/line/models/great_circle.d.ts +2 -2
- package/es/line/models/great_circle.js +70 -29
- package/es/line/models/half.d.ts +2 -2
- package/es/line/models/half.js +40 -17
- package/es/line/models/index.d.ts +1 -1
- package/es/line/models/index.js +0 -2
- package/es/line/models/line.d.ts +2 -2
- package/es/line/models/line.js +79 -47
- package/es/line/models/linearline.d.ts +2 -2
- package/es/line/models/linearline.js +70 -31
- package/es/line/models/simpleLine.d.ts +2 -2
- package/es/line/models/simpleLine.js +71 -34
- package/es/line/models/simpleTileLine.d.ts +2 -2
- package/es/line/models/simpleTileLine.js +70 -30
- package/es/line/models/tile.d.ts +2 -2
- package/es/line/models/tile.js +40 -17
- package/es/line/models/wall.d.ts +2 -2
- package/es/line/models/wall.js +67 -22
- package/es/mask/index.d.ts +2 -4
- package/es/mask/index.js +27 -97
- package/es/mask/models/fill.d.ts +2 -2
- package/es/mask/models/fill.js +40 -16
- package/es/mask/models/index.d.ts +1 -1
- package/es/mask/models/index.js +1 -3
- package/es/plugins/DataMappingPlugin.d.ts +0 -2
- package/es/plugins/DataMappingPlugin.js +90 -152
- package/es/plugins/DataSourcePlugin.js +67 -30
- package/es/plugins/FeatureScalePlugin.d.ts +0 -1
- package/es/plugins/FeatureScalePlugin.js +85 -61
- package/es/plugins/LayerModelPlugin.d.ts +2 -2
- package/es/plugins/LayerModelPlugin.js +121 -37
- package/es/plugins/LayerStylePlugin.js +1 -6
- package/es/plugins/MultiPassRendererPlugin.js +1 -1
- package/es/plugins/PixelPickingPlugin.js +1 -1
- package/es/plugins/RegisterStyleAttributePlugin.js +1 -16
- package/es/plugins/UpdateModelPlugin.js +3 -0
- package/es/plugins/UpdateStyleAttributePlugin.js +3 -6
- package/es/point/index.d.ts +4 -4
- package/es/point/index.js +55 -23
- package/es/point/models/earthExtrude.d.ts +2 -2
- package/es/point/models/earthExtrude.js +73 -30
- package/es/point/models/earthFill.d.ts +2 -2
- package/es/point/models/earthFill.js +66 -21
- package/es/point/models/extrude.d.ts +2 -2
- package/es/point/models/extrude.js +40 -17
- package/es/point/models/fill.d.ts +2 -2
- package/es/point/models/fill.js +43 -20
- package/es/point/models/fillmage.d.ts +2 -2
- package/es/point/models/fillmage.js +82 -43
- package/es/point/models/image.d.ts +2 -2
- package/es/point/models/image.js +72 -31
- package/es/point/models/index.d.ts +1 -1
- package/es/point/models/index.js +0 -2
- package/es/point/models/normal.d.ts +2 -2
- package/es/point/models/normal.js +71 -30
- package/es/point/models/radar.d.ts +2 -2
- package/es/point/models/radar.js +75 -35
- package/es/point/models/simplePoint.d.ts +2 -2
- package/es/point/models/simplePoint.js +70 -29
- package/es/point/models/text.d.ts +3 -2
- package/es/point/models/text.js +185 -112
- package/es/point/models/tile.d.ts +2 -2
- package/es/point/models/tile.js +77 -35
- package/es/point/models/tileText.d.ts +2 -2
- package/es/point/models/tileText.js +151 -116
- package/es/polygon/index.d.ts +2 -3
- package/es/polygon/index.js +27 -24
- package/es/polygon/models/extrude.d.ts +2 -2
- package/es/polygon/models/extrude.js +69 -32
- package/es/polygon/models/fill.d.ts +2 -2
- package/es/polygon/models/fill.js +76 -43
- package/es/polygon/models/index.d.ts +1 -1
- package/es/polygon/models/index.js +0 -2
- package/es/polygon/models/ocean.d.ts +2 -2
- package/es/polygon/models/ocean.js +69 -28
- package/es/polygon/models/tile.d.ts +2 -2
- package/es/polygon/models/tile.js +70 -30
- package/es/polygon/models/water.d.ts +2 -2
- package/es/polygon/models/water.js +69 -28
- package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +1 -2
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +1 -2
- package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +1 -2
- package/es/raster/index.d.ts +2 -3
- package/es/raster/index.js +30 -20
- package/es/raster/models/index.d.ts +1 -1
- package/es/raster/models/index.js +2 -2
- package/es/raster/models/raster.d.ts +2 -2
- package/es/raster/models/raster.js +39 -28
- package/es/raster/models/rasterRgb.d.ts +7 -8
- package/es/raster/models/rasterRgb.js +75 -45
- package/es/{image/models/tileDataImage.d.ts → raster/models/rasterTerrainRgb.d.ts} +3 -3
- package/es/raster/models/rasterTerrainRgb.js +184 -0
- package/es/raster/models/rasterTile.d.ts +2 -2
- package/es/raster/models/rasterTile.js +78 -37
- package/es/raster/shaders/raster_2d_frag.glsl +2 -38
- package/es/raster/shaders/raster_rgb_frag.glsl +10 -4
- package/es/raster/shaders/raster_terrain_rgb_frag.glsl +31 -0
- package/es/raster/shaders/rater_terrain_rgb_vert.glsl +17 -0
- package/es/tile/interaction/getRasterData.d.ts +2 -2
- package/es/tile/interaction/utils.js +3 -11
- package/es/tile/interface.d.ts +5 -4
- package/es/tile/manager/base.d.ts +17 -12
- package/es/tile/manager/base.js +212 -47
- package/es/tile/service/TileLayerService.d.ts +34 -0
- package/es/tile/service/TileLayerService.js +220 -0
- package/es/tile/service/TilePickService.d.ts +26 -0
- package/es/tile/service/TilePickService.js +174 -0
- package/es/tile/service/TileSourceService.d.ts +7 -0
- package/es/tile/service/TileSourceService.js +39 -0
- package/es/tile/style/constants.d.ts +1 -13
- package/es/tile/style/constants.js +6 -15
- package/es/tile/style/utils.d.ts +1 -8
- package/es/tile/style/utils.js +0 -126
- package/es/tile/tileFactory/DebugTile.d.ts +16 -0
- package/es/tile/tileFactory/DebugTile.js +100 -0
- package/es/tile/tileFactory/ImageTile.d.ts +14 -0
- package/es/tile/tileFactory/ImageTile.js +89 -0
- package/es/tile/tileFactory/MaskTile.d.ts +18 -0
- package/es/tile/tileFactory/MaskTile.js +105 -0
- package/es/tile/tileFactory/RasterRGBTile.d.ts +11 -0
- package/es/tile/tileFactory/RasterRGBTile.js +98 -0
- package/es/tile/tileFactory/RasterTerrainRGBTile.d.ts +14 -0
- package/es/tile/tileFactory/RasterTerrainRGBTile.js +89 -0
- package/es/tile/tileFactory/RasterTile.d.ts +18 -0
- package/es/tile/tileFactory/RasterTile.js +133 -0
- package/es/tile/tileFactory/Tile.d.ts +34 -0
- package/es/tile/tileFactory/Tile.js +161 -0
- package/es/tile/tileFactory/VectorTile.d.ts +27 -0
- package/es/tile/tileFactory/VectorTile.js +198 -0
- package/es/tile/tileFactory/index.d.ts +11 -4
- package/es/tile/tileFactory/index.js +34 -23
- package/es/tile/tileFactory/layers/{rasterDataLayer.d.ts → RasterDataLayer.d.ts} +3 -3
- package/es/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +34 -22
- package/es/tile/tileFactory/layers/{tileTest.d.ts → TileDebugLayer.d.ts} +2 -2
- package/es/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +23 -10
- package/es/tile/tileFactory/util.d.ts +5 -0
- package/es/tile/tileFactory/util.js +21 -0
- package/es/tile/tileLayer/BaseLayer.d.ts +45 -0
- package/es/tile/tileLayer/BaseLayer.js +348 -0
- package/es/tile/utils.d.ts +1 -11
- package/es/tile/utils.js +0 -129
- package/es/utils/dataMappingStyle.d.ts +4 -4
- package/es/utils/dataMappingStyle.js +16 -18
- package/es/utils/layerData.js +5 -11
- package/es/wind/index.d.ts +2 -3
- package/es/wind/index.js +27 -17
- package/es/wind/models/wind.d.ts +2 -2
- package/es/wind/models/wind.js +123 -104
- package/lib/Geometry/index.js +29 -17
- package/lib/Geometry/models/billboard.js +79 -37
- package/lib/Geometry/models/plane.js +82 -40
- package/lib/Geometry/models/sprite.js +85 -45
- package/lib/canvas/index.js +31 -19
- package/lib/canvas/models/canvas.js +56 -15
- package/lib/citybuliding/building.js +28 -17
- package/lib/citybuliding/models/build.js +72 -25
- package/lib/core/BaseLayer.js +388 -261
- package/lib/core/BaseModel.js +48 -6
- package/lib/core/LayerPickService.js +179 -0
- package/lib/core/TextureService.js +77 -0
- package/lib/core/triangulation.js +8 -1
- package/lib/earth/index.js +30 -9
- package/lib/earth/models/atmosphere.js +69 -22
- package/lib/earth/models/base.js +90 -42
- package/lib/earth/models/bloomsphere.js +69 -22
- package/lib/heatmap/index.js +35 -24
- package/lib/heatmap/models/grid.js +70 -27
- package/lib/heatmap/models/grid3d.js +72 -29
- package/lib/heatmap/models/heatmap.js +40 -14
- package/lib/heatmap/models/hexagon.js +71 -28
- package/lib/heatmap/shaders/hexagon_3d_vert.glsl +2 -13
- package/lib/image/index.js +31 -34
- package/lib/image/models/image.js +119 -67
- package/lib/image/models/index.js +1 -7
- package/lib/image/shaders/dataImage_frag.glsl +10 -16
- package/lib/index.js +5 -5
- package/lib/line/index.js +53 -26
- package/lib/line/models/arc.js +75 -38
- package/lib/line/models/arc_3d.js +71 -34
- package/lib/line/models/earthArc_3d.js +74 -37
- package/lib/line/models/great_circle.js +72 -29
- package/lib/line/models/half.js +40 -17
- package/lib/line/models/index.js +0 -3
- package/lib/line/models/line.js +81 -47
- package/lib/line/models/linearline.js +72 -31
- package/lib/line/models/simpleLine.js +73 -34
- package/lib/line/models/simpleTileLine.js +72 -30
- package/lib/line/models/tile.js +40 -17
- package/lib/line/models/wall.js +69 -22
- package/lib/mask/index.js +28 -99
- package/lib/mask/models/fill.js +40 -16
- package/lib/mask/models/index.js +1 -4
- package/lib/plugins/DataMappingPlugin.js +91 -149
- package/lib/plugins/DataSourcePlugin.js +69 -30
- package/lib/plugins/FeatureScalePlugin.js +87 -61
- package/lib/plugins/LayerModelPlugin.js +128 -41
- package/lib/plugins/LayerStylePlugin.js +1 -6
- package/lib/plugins/MultiPassRendererPlugin.js +1 -1
- package/lib/plugins/PixelPickingPlugin.js +1 -1
- package/lib/plugins/RegisterStyleAttributePlugin.js +1 -16
- package/lib/plugins/UpdateModelPlugin.js +3 -0
- package/lib/plugins/UpdateStyleAttributePlugin.js +3 -6
- package/lib/point/index.js +56 -24
- package/lib/point/models/earthExtrude.js +75 -30
- package/lib/point/models/earthFill.js +68 -21
- package/lib/point/models/extrude.js +40 -17
- package/lib/point/models/fill.js +44 -21
- package/lib/point/models/fillmage.js +84 -43
- package/lib/point/models/image.js +74 -31
- package/lib/point/models/index.js +0 -3
- package/lib/point/models/normal.js +73 -30
- package/lib/point/models/radar.js +77 -35
- package/lib/point/models/simplePoint.js +72 -29
- package/lib/point/models/text.js +185 -111
- package/lib/point/models/tile.js +79 -35
- package/lib/point/models/tileText.js +151 -115
- package/lib/polygon/index.js +29 -25
- package/lib/polygon/models/extrude.js +71 -32
- package/lib/polygon/models/fill.js +78 -43
- package/lib/polygon/models/index.js +0 -3
- package/lib/polygon/models/ocean.js +71 -28
- package/lib/polygon/models/tile.js +72 -30
- package/lib/polygon/models/water.js +71 -28
- package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +1 -2
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +1 -2
- package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +1 -2
- package/lib/raster/index.js +32 -20
- package/lib/raster/models/index.js +3 -3
- package/lib/raster/models/raster.js +39 -29
- package/lib/raster/models/rasterRgb.js +78 -43
- package/lib/raster/models/rasterTerrainRgb.js +200 -0
- package/lib/raster/models/rasterTile.js +80 -37
- package/lib/raster/shaders/raster_2d_frag.glsl +2 -38
- package/lib/raster/shaders/raster_rgb_frag.glsl +10 -4
- package/lib/raster/shaders/raster_terrain_rgb_frag.glsl +31 -0
- package/lib/raster/shaders/rater_terrain_rgb_vert.glsl +17 -0
- package/lib/tile/interaction/utils.js +3 -11
- package/lib/tile/manager/base.js +213 -47
- package/lib/tile/service/TileLayerService.js +233 -0
- package/lib/tile/service/TilePickService.js +190 -0
- package/lib/tile/service/TileSourceService.js +59 -0
- package/lib/tile/style/constants.js +8 -19
- package/lib/tile/style/utils.js +0 -140
- package/lib/tile/tileFactory/DebugTile.js +115 -0
- package/lib/tile/tileFactory/ImageTile.js +104 -0
- package/lib/tile/tileFactory/MaskTile.js +120 -0
- package/lib/tile/tileFactory/RasterRGBTile.js +112 -0
- package/lib/tile/tileFactory/RasterTerrainRGBTile.js +104 -0
- package/lib/tile/tileFactory/RasterTile.js +149 -0
- package/lib/tile/tileFactory/Tile.js +171 -0
- package/lib/tile/tileFactory/VectorTile.js +214 -0
- package/lib/tile/tileFactory/index.js +46 -23
- package/lib/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +36 -22
- package/lib/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +24 -11
- package/lib/tile/tileFactory/util.js +35 -0
- package/lib/tile/tileLayer/BaseLayer.js +363 -0
- package/lib/tile/utils.js +0 -148
- package/lib/utils/dataMappingStyle.js +18 -20
- package/lib/utils/layerData.js +4 -10
- package/lib/wind/index.js +29 -17
- package/lib/wind/models/wind.js +125 -104
- package/package.json +7 -7
- package/es/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
- package/es/image/models/dataImage.d.ts +0 -13
- package/es/image/models/dataImage.js +0 -186
- package/es/image/models/tileDataImage.js +0 -160
- package/es/raster/raster.d.ts +0 -21
- package/es/raster/raster.js +0 -161
- package/es/tile/interaction/TilePickService.d.ts +0 -16
- package/es/tile/interaction/TilePickService.js +0 -129
- package/es/tile/manager/layerManager.d.ts +0 -19
- package/es/tile/manager/layerManager.js +0 -254
- package/es/tile/manager/mapLayerManager.d.ts +0 -7
- package/es/tile/manager/mapLayerManager.js +0 -119
- package/es/tile/models/tileModel.d.ts +0 -10
- package/es/tile/models/tileModel.js +0 -81
- package/es/tile/render/TileRenderService.d.ts +0 -10
- package/es/tile/render/TileRenderService.js +0 -68
- package/es/tile/style/TileStyleService.d.ts +0 -17
- package/es/tile/style/TileStyleService.js +0 -118
- package/es/tile/tileFactory/base.d.ts +0 -45
- package/es/tile/tileFactory/base.js +0 -403
- package/es/tile/tileFactory/layers/vectorLayer.d.ts +0 -30
- package/es/tile/tileFactory/layers/vectorLayer.js +0 -253
- package/es/tile/tileFactory/line.d.ts +0 -12
- package/es/tile/tileFactory/line.js +0 -59
- package/es/tile/tileFactory/mask.d.ts +0 -12
- package/es/tile/tileFactory/mask.js +0 -60
- package/es/tile/tileFactory/point.d.ts +0 -12
- package/es/tile/tileFactory/point.js +0 -60
- package/es/tile/tileFactory/polygon.d.ts +0 -12
- package/es/tile/tileFactory/polygon.js +0 -59
- package/es/tile/tileFactory/raster.d.ts +0 -12
- package/es/tile/tileFactory/raster.js +0 -55
- package/es/tile/tileFactory/rasterData.d.ts +0 -12
- package/es/tile/tileFactory/rasterData.js +0 -81
- package/es/tile/tileFactory/test.d.ts +0 -12
- package/es/tile/tileFactory/test.js +0 -94
- package/es/tile/tileLayer/MapTileLayer.d.ts +0 -6
- package/es/tile/tileLayer/MapTileLayer.js +0 -48
- package/es/tile/tileLayer/TileLayer.d.ts +0 -22
- package/es/tile/tileLayer/TileLayer.js +0 -198
- package/es/tile/tileLayer/base.d.ts +0 -33
- package/es/tile/tileLayer/base.js +0 -212
- package/lib/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
- package/lib/image/models/dataImage.js +0 -201
- package/lib/image/models/tileDataImage.js +0 -174
- package/lib/raster/raster.js +0 -178
- package/lib/tile/interaction/TilePickService.js +0 -143
- package/lib/tile/manager/layerManager.js +0 -275
- package/lib/tile/manager/mapLayerManager.js +0 -134
- package/lib/tile/models/tileModel.js +0 -94
- package/lib/tile/render/TileRenderService.js +0 -78
- package/lib/tile/style/TileStyleService.js +0 -133
- package/lib/tile/tileFactory/base.js +0 -427
- package/lib/tile/tileFactory/layers/vectorLayer.js +0 -268
- package/lib/tile/tileFactory/line.js +0 -70
- package/lib/tile/tileFactory/mask.js +0 -71
- package/lib/tile/tileFactory/point.js +0 -71
- package/lib/tile/tileFactory/polygon.js +0 -70
- package/lib/tile/tileFactory/raster.js +0 -68
- package/lib/tile/tileFactory/rasterData.js +0 -93
- package/lib/tile/tileFactory/test.js +0 -106
- package/lib/tile/tileLayer/MapTileLayer.js +0 -63
- package/lib/tile/tileLayer/TileLayer.js +0 -215
- package/lib/tile/tileLayer/base.js +0 -225
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
4
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
5
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
6
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
7
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
8
|
+
|
|
9
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
+
|
|
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
|
+
|
|
13
|
+
import { AttributeType, gl } from '@antv/l7-core';
|
|
14
|
+
import { getMask } from '@antv/l7-utils';
|
|
15
|
+
import BaseModel from "../../core/BaseModel";
|
|
16
|
+
import { RasterImageTriangulation } from "../../core/triangulation";
|
|
17
|
+
|
|
18
|
+
/* babel-plugin-inline-import '../shaders/raster_terrain_rgb_frag.glsl' */
|
|
19
|
+
var Raster_terrainFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\n\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\n\nvarying vec2 v_texCoord;\n\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\n\nvoid main() {\n vec4 baseColor = texture2D(u_texture, vec2(v_texCoord.x, v_texCoord.y)) * 256.0;\n float r = baseColor.r * 256.0 * 256.0;\n float g = baseColor.g * 256.0;\n float b = baseColor.b;\n float value = (r + g + b) * 0.1 - 10000.0;\n \n if (value == u_noDataValue) {\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n } else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1])) {\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n } else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] - u_domain[0]);\n vec4 color = texture2D(u_colorTexture, vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n}\n";
|
|
20
|
+
|
|
21
|
+
/* babel-plugin-inline-import '../shaders/rater_terrain_rgb_vert.glsl' */
|
|
22
|
+
var Raster_terrainVert = "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 // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\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
|
+
|
|
24
|
+
var RasterTerrainRGB = /*#__PURE__*/function (_BaseModel) {
|
|
25
|
+
_inherits(RasterTerrainRGB, _BaseModel);
|
|
26
|
+
|
|
27
|
+
var _super = _createSuper(RasterTerrainRGB);
|
|
28
|
+
|
|
29
|
+
function RasterTerrainRGB() {
|
|
30
|
+
_classCallCheck(this, RasterTerrainRGB);
|
|
31
|
+
|
|
32
|
+
return _super.apply(this, arguments);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
_createClass(RasterTerrainRGB, [{
|
|
36
|
+
key: "getUninforms",
|
|
37
|
+
value: function getUninforms() {
|
|
38
|
+
var _ref = this.layer.getLayerConfig(),
|
|
39
|
+
opacity = _ref.opacity,
|
|
40
|
+
_ref$clampLow = _ref.clampLow,
|
|
41
|
+
clampLow = _ref$clampLow === void 0 ? true : _ref$clampLow,
|
|
42
|
+
_ref$clampHigh = _ref.clampHigh,
|
|
43
|
+
clampHigh = _ref$clampHigh === void 0 ? true : _ref$clampHigh,
|
|
44
|
+
_ref$noDataValue = _ref.noDataValue,
|
|
45
|
+
noDataValue = _ref$noDataValue === void 0 ? -9999999 : _ref$noDataValue,
|
|
46
|
+
_ref$domain = _ref.domain,
|
|
47
|
+
domain = _ref$domain === void 0 ? [0, 1] : _ref$domain,
|
|
48
|
+
rampColors = _ref.rampColors,
|
|
49
|
+
colorTexture = _ref.colorTexture;
|
|
50
|
+
|
|
51
|
+
var texture = colorTexture;
|
|
52
|
+
|
|
53
|
+
if (!colorTexture) {
|
|
54
|
+
texture = this.layer.textureService.getColorTexture(rampColors);
|
|
55
|
+
} else {
|
|
56
|
+
this.layer.textureService.setColorTexture(colorTexture, rampColors);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return {
|
|
60
|
+
u_opacity: opacity || 1,
|
|
61
|
+
u_texture: this.texture,
|
|
62
|
+
u_domain: domain,
|
|
63
|
+
u_clampLow: clampLow,
|
|
64
|
+
u_clampHigh: typeof clampHigh !== 'undefined' ? clampHigh : clampLow,
|
|
65
|
+
u_noDataValue: noDataValue,
|
|
66
|
+
u_colorTexture: texture
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
}, {
|
|
70
|
+
key: "initModels",
|
|
71
|
+
value: function () {
|
|
72
|
+
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
73
|
+
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, imageData, model;
|
|
74
|
+
|
|
75
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
76
|
+
while (1) {
|
|
77
|
+
switch (_context.prev = _context.next) {
|
|
78
|
+
case 0:
|
|
79
|
+
_ref2 = this.layer.getLayerConfig(), _ref2$mask = _ref2.mask, mask = _ref2$mask === void 0 ? false : _ref2$mask, _ref2$maskInside = _ref2.maskInside, maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
|
|
80
|
+
source = this.layer.getSource();
|
|
81
|
+
createTexture2D = this.rendererService.createTexture2D;
|
|
82
|
+
_context.next = 5;
|
|
83
|
+
return source.data.images;
|
|
84
|
+
|
|
85
|
+
case 5:
|
|
86
|
+
imageData = _context.sent;
|
|
87
|
+
this.texture = createTexture2D({
|
|
88
|
+
data: imageData[0],
|
|
89
|
+
width: imageData[0].width,
|
|
90
|
+
height: imageData[0].height
|
|
91
|
+
});
|
|
92
|
+
_context.next = 9;
|
|
93
|
+
return this.layer.buildLayerModel({
|
|
94
|
+
moduleName: 'RasterTileDataImage',
|
|
95
|
+
vertexShader: Raster_terrainVert,
|
|
96
|
+
fragmentShader: Raster_terrainFrag,
|
|
97
|
+
triangulation: RasterImageTriangulation,
|
|
98
|
+
primitive: gl.TRIANGLES,
|
|
99
|
+
depth: {
|
|
100
|
+
enable: false
|
|
101
|
+
},
|
|
102
|
+
blend: this.getBlend(),
|
|
103
|
+
stencil: getMask(mask, maskInside)
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
case 9:
|
|
107
|
+
model = _context.sent;
|
|
108
|
+
return _context.abrupt("return", [model]);
|
|
109
|
+
|
|
110
|
+
case 11:
|
|
111
|
+
case "end":
|
|
112
|
+
return _context.stop();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}, _callee, this);
|
|
116
|
+
}));
|
|
117
|
+
|
|
118
|
+
function initModels() {
|
|
119
|
+
return _initModels.apply(this, arguments);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
return initModels;
|
|
123
|
+
}()
|
|
124
|
+
}, {
|
|
125
|
+
key: "clearModels",
|
|
126
|
+
value: function clearModels() {
|
|
127
|
+
var _this$texture;
|
|
128
|
+
|
|
129
|
+
(_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
|
|
130
|
+
}
|
|
131
|
+
}, {
|
|
132
|
+
key: "buildModels",
|
|
133
|
+
value: function () {
|
|
134
|
+
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
135
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
136
|
+
while (1) {
|
|
137
|
+
switch (_context2.prev = _context2.next) {
|
|
138
|
+
case 0:
|
|
139
|
+
_context2.next = 2;
|
|
140
|
+
return this.initModels();
|
|
141
|
+
|
|
142
|
+
case 2:
|
|
143
|
+
return _context2.abrupt("return", _context2.sent);
|
|
144
|
+
|
|
145
|
+
case 3:
|
|
146
|
+
case "end":
|
|
147
|
+
return _context2.stop();
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}, _callee2, this);
|
|
151
|
+
}));
|
|
152
|
+
|
|
153
|
+
function buildModels() {
|
|
154
|
+
return _buildModels.apply(this, arguments);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
return buildModels;
|
|
158
|
+
}()
|
|
159
|
+
}, {
|
|
160
|
+
key: "registerBuiltinAttributes",
|
|
161
|
+
value: function registerBuiltinAttributes() {
|
|
162
|
+
this.styleAttributeService.registerStyleAttribute({
|
|
163
|
+
name: 'uv',
|
|
164
|
+
type: AttributeType.Attribute,
|
|
165
|
+
descriptor: {
|
|
166
|
+
name: 'a_Uv',
|
|
167
|
+
buffer: {
|
|
168
|
+
usage: gl.DYNAMIC_DRAW,
|
|
169
|
+
data: [],
|
|
170
|
+
type: gl.FLOAT
|
|
171
|
+
},
|
|
172
|
+
size: 2,
|
|
173
|
+
update: function update(feature, featureIdx, vertex) {
|
|
174
|
+
return [vertex[3], vertex[4]];
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
}]);
|
|
180
|
+
|
|
181
|
+
return RasterTerrainRGB;
|
|
182
|
+
}(BaseModel);
|
|
183
|
+
|
|
184
|
+
export { RasterTerrainRGB as default };
|
|
@@ -11,8 +11,8 @@ export default class RasterModel extends BaseModel {
|
|
|
11
11
|
u_noDataValue: number;
|
|
12
12
|
u_colorTexture: ITexture2D;
|
|
13
13
|
};
|
|
14
|
-
initModels(
|
|
15
|
-
buildModels(
|
|
14
|
+
initModels(): Promise<IModel[]>;
|
|
15
|
+
buildModels(): Promise<IModel[]>;
|
|
16
16
|
clearModels(): void;
|
|
17
17
|
protected registerBuiltinAttributes(): void;
|
|
18
18
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
1
2
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
3
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
4
|
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
4
5
|
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
5
6
|
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
7
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
6
8
|
|
|
7
9
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
8
10
|
|
|
@@ -14,7 +16,7 @@ import BaseModel from "../../core/BaseModel";
|
|
|
14
16
|
import { RasterImageTriangulation } from "../../core/triangulation";
|
|
15
17
|
|
|
16
18
|
/* babel-plugin-inline-import '../shaders/raster_2d_frag.glsl' */
|
|
17
|
-
var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\
|
|
19
|
+
var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\nbool isnan_emu(float x) { return (x > 0.0 || x < 0.0) ? x != x : x != 0.0; }\n\n\nvoid main() {\n\n float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;\n if (value == u_noDataValue || isnan_emu(value))\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))\n gl_FragColor = vec4(0, 0, 0, 0);\n else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] -u_domain[0]);\n vec4 color = texture2D(u_colorTexture,vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n}\n";
|
|
18
20
|
|
|
19
21
|
/* babel-plugin-inline-import '../shaders/raster_2d_vert.glsl' */
|
|
20
22
|
var rasterVert = "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";
|
|
@@ -66,44 +68,83 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
66
68
|
}
|
|
67
69
|
}, {
|
|
68
70
|
key: "initModels",
|
|
69
|
-
value: function
|
|
70
|
-
var
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
71
|
+
value: function () {
|
|
72
|
+
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
73
|
+
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, parserDataItem, model;
|
|
74
|
+
|
|
75
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
76
|
+
while (1) {
|
|
77
|
+
switch (_context.prev = _context.next) {
|
|
78
|
+
case 0:
|
|
79
|
+
_ref2 = this.layer.getLayerConfig(), _ref2$mask = _ref2.mask, mask = _ref2$mask === void 0 ? false : _ref2$mask, _ref2$maskInside = _ref2.maskInside, maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
|
|
80
|
+
source = this.layer.getSource();
|
|
81
|
+
createTexture2D = this.rendererService.createTexture2D;
|
|
82
|
+
parserDataItem = source.data.dataArray[0];
|
|
83
|
+
this.texture = createTexture2D({
|
|
84
|
+
data: parserDataItem.data,
|
|
85
|
+
width: parserDataItem.width,
|
|
86
|
+
height: parserDataItem.height,
|
|
87
|
+
format: gl.LUMINANCE,
|
|
88
|
+
type: gl.FLOAT
|
|
89
|
+
});
|
|
90
|
+
_context.next = 7;
|
|
91
|
+
return this.layer.buildLayerModel({
|
|
92
|
+
moduleName: 'rasterTileImageData',
|
|
93
|
+
vertexShader: rasterVert,
|
|
94
|
+
fragmentShader: rasterFrag,
|
|
95
|
+
triangulation: RasterImageTriangulation,
|
|
96
|
+
depth: {
|
|
97
|
+
enable: false
|
|
98
|
+
},
|
|
99
|
+
stencil: getMask(mask, maskInside)
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
case 7:
|
|
103
|
+
model = _context.sent;
|
|
104
|
+
return _context.abrupt("return", [model]);
|
|
105
|
+
|
|
106
|
+
case 9:
|
|
107
|
+
case "end":
|
|
108
|
+
return _context.stop();
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}, _callee, this);
|
|
112
|
+
}));
|
|
113
|
+
|
|
114
|
+
function initModels() {
|
|
115
|
+
return _initModels.apply(this, arguments);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return initModels;
|
|
119
|
+
}()
|
|
102
120
|
}, {
|
|
103
121
|
key: "buildModels",
|
|
104
|
-
value: function
|
|
105
|
-
|
|
106
|
-
|
|
122
|
+
value: function () {
|
|
123
|
+
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
124
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
125
|
+
while (1) {
|
|
126
|
+
switch (_context2.prev = _context2.next) {
|
|
127
|
+
case 0:
|
|
128
|
+
_context2.next = 2;
|
|
129
|
+
return this.initModels();
|
|
130
|
+
|
|
131
|
+
case 2:
|
|
132
|
+
return _context2.abrupt("return", _context2.sent);
|
|
133
|
+
|
|
134
|
+
case 3:
|
|
135
|
+
case "end":
|
|
136
|
+
return _context2.stop();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}, _callee2, this);
|
|
140
|
+
}));
|
|
141
|
+
|
|
142
|
+
function buildModels() {
|
|
143
|
+
return _buildModels.apply(this, arguments);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
return buildModels;
|
|
147
|
+
}()
|
|
107
148
|
}, {
|
|
108
149
|
key: "clearModels",
|
|
109
150
|
value: function clearModels() {
|
|
@@ -9,49 +9,13 @@ uniform float u_noDataValue;
|
|
|
9
9
|
uniform bool u_clampLow: true;
|
|
10
10
|
uniform bool u_clampHigh: true;
|
|
11
11
|
varying vec2 v_texCoord;
|
|
12
|
+
bool isnan_emu(float x) { return (x > 0.0 || x < 0.0) ? x != x : x != 0.0; }
|
|
12
13
|
|
|
13
14
|
|
|
14
|
-
|
|
15
|
-
// float getBlurIndusty() {
|
|
16
|
-
// vec2 u_ViewportSize = vec2(1024);
|
|
17
|
-
|
|
18
|
-
// float vW = 2.0/u_ViewportSize.x;
|
|
19
|
-
// float vH = 2.0/u_ViewportSize.y;
|
|
20
|
-
// vec2 vUv = v_texCoord;
|
|
21
|
-
// float i11 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y + 1.0 * vH) ).r;
|
|
22
|
-
// float i12 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y + 1.0 * vH) ).r;
|
|
23
|
-
// float i13 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y + 1.0 * vH) ).r;
|
|
24
|
-
|
|
25
|
-
// float i21 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y) ).r;
|
|
26
|
-
// float i22 = texture2D( u_texture, vec2( vUv.x , vUv.y) ).r;
|
|
27
|
-
// float i23 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y) ).r;
|
|
28
|
-
|
|
29
|
-
// float i31 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y-1.0*vH) ).r;
|
|
30
|
-
// float i32 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y-1.0*vH) ).r;
|
|
31
|
-
// float i33 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y-1.0*vH) ).r;
|
|
32
|
-
|
|
33
|
-
// return(
|
|
34
|
-
// i11 +
|
|
35
|
-
// i12 +
|
|
36
|
-
// i13 +
|
|
37
|
-
// i21 +
|
|
38
|
-
// i21 +
|
|
39
|
-
// i22 +
|
|
40
|
-
// i23 +
|
|
41
|
-
// i31 +
|
|
42
|
-
// i32 +
|
|
43
|
-
// i33
|
|
44
|
-
// )/9.0;
|
|
45
|
-
// }
|
|
46
|
-
|
|
47
15
|
void main() {
|
|
48
16
|
|
|
49
17
|
float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;
|
|
50
|
-
|
|
51
|
-
// float value = getBlurIndusty();
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if (value == u_noDataValue)
|
|
18
|
+
if (value == u_noDataValue || isnan_emu(value))
|
|
55
19
|
gl_FragColor = vec4(0.0, 0, 0, 0.0);
|
|
56
20
|
else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))
|
|
57
21
|
gl_FragColor = vec4(0, 0, 0, 0);
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
precision mediump float;
|
|
2
|
+
uniform vec2 u_rminmax: vec2(0,255);
|
|
3
|
+
uniform vec2 u_gminmax: vec2(0,255);
|
|
4
|
+
uniform vec2 u_bminmax: vec2(0,255);
|
|
2
5
|
uniform float u_opacity: 1.0;
|
|
3
6
|
uniform sampler2D u_texture;
|
|
4
|
-
uniform float
|
|
5
|
-
uniform float u_channelGMax: 256.;
|
|
6
|
-
uniform float u_channelBMax: 256.;
|
|
7
|
+
uniform float u_noDataValue : 0.0;
|
|
7
8
|
varying vec2 v_texCoord;
|
|
8
9
|
|
|
9
10
|
void main() {
|
|
10
11
|
vec3 rgb = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).rgb;
|
|
11
|
-
|
|
12
|
+
if(rgb == vec3(u_noDataValue)) {
|
|
13
|
+
gl_FragColor = vec4(0.0, 0, 0, 0.0);
|
|
14
|
+
} else {
|
|
15
|
+
gl_FragColor = vec4(rgb.r / (u_rminmax.y -u_rminmax.x), rgb.g /(u_gminmax.y -u_gminmax.x), rgb.b/ (u_bminmax.y - u_bminmax.x), u_opacity);
|
|
16
|
+
}
|
|
17
|
+
|
|
12
18
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
precision mediump float;
|
|
2
|
+
uniform float u_opacity: 1.0;
|
|
3
|
+
|
|
4
|
+
uniform sampler2D u_texture;
|
|
5
|
+
uniform sampler2D u_colorTexture;
|
|
6
|
+
|
|
7
|
+
varying vec2 v_texCoord;
|
|
8
|
+
|
|
9
|
+
uniform vec2 u_domain;
|
|
10
|
+
uniform float u_noDataValue;
|
|
11
|
+
uniform bool u_clampLow: true;
|
|
12
|
+
uniform bool u_clampHigh: true;
|
|
13
|
+
|
|
14
|
+
void main() {
|
|
15
|
+
vec4 baseColor = texture2D(u_texture, vec2(v_texCoord.x, v_texCoord.y)) * 256.0;
|
|
16
|
+
float r = baseColor.r * 256.0 * 256.0;
|
|
17
|
+
float g = baseColor.g * 256.0;
|
|
18
|
+
float b = baseColor.b;
|
|
19
|
+
float value = (r + g + b) * 0.1 - 10000.0;
|
|
20
|
+
|
|
21
|
+
if (value == u_noDataValue) {
|
|
22
|
+
gl_FragColor = vec4(0.0, 0, 0, 0.0);
|
|
23
|
+
} else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1])) {
|
|
24
|
+
gl_FragColor = vec4(0.0, 0, 0, 0.0);
|
|
25
|
+
} else {
|
|
26
|
+
float normalisedValue =(value - u_domain[0]) / (u_domain[1] - u_domain[0]);
|
|
27
|
+
vec4 color = texture2D(u_colorTexture, vec2(normalisedValue, 0));
|
|
28
|
+
gl_FragColor = color;
|
|
29
|
+
gl_FragColor.a = gl_FragColor.a * u_opacity ;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
precision highp float;
|
|
2
|
+
uniform mat4 u_ModelMatrix;
|
|
3
|
+
uniform mat4 u_Mvp;
|
|
4
|
+
attribute vec3 a_Position;
|
|
5
|
+
attribute vec2 a_Uv;
|
|
6
|
+
varying vec2 v_texCoord;
|
|
7
|
+
#pragma include "projection"
|
|
8
|
+
void main() {
|
|
9
|
+
v_texCoord = a_Uv;
|
|
10
|
+
vec4 project_pos = project_position(vec4(a_Position, 1.0));
|
|
11
|
+
// gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));
|
|
12
|
+
if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x
|
|
13
|
+
gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));
|
|
14
|
+
} else {
|
|
15
|
+
gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IMapService, IRendererService } from '@antv/l7-core';
|
|
2
|
-
import {
|
|
3
|
-
export declare function readRasterValue(tile:
|
|
2
|
+
import { SourceTile } from '@antv/l7-utils';
|
|
3
|
+
export declare function readRasterValue(tile: SourceTile, mapService: IMapService, x: number, y: number): any;
|
|
4
4
|
export declare function readPixel(x: number, y: number, rendererService: IRendererService): false | Uint8Array;
|
|
@@ -27,7 +27,7 @@ export function setSelect(layers, pickedColors, renderList) {
|
|
|
27
27
|
}); // unselect normal layer
|
|
28
28
|
|
|
29
29
|
renderList.filter(function (layer) {
|
|
30
|
-
return layer.inited &&
|
|
30
|
+
return layer.inited && layer.isVisible() && layer.needPick('click');
|
|
31
31
|
}).filter(function (layer) {
|
|
32
32
|
return layer.getCurrentSelectedId() !== null;
|
|
33
33
|
}).map(function (layer) {
|
|
@@ -39,9 +39,8 @@ export function setSelect(layers, pickedColors, renderList) {
|
|
|
39
39
|
export function setHighlight(layers, pickedColors) {
|
|
40
40
|
var pickId = decodePickingColor(pickedColors);
|
|
41
41
|
layers.filter(function (layer) {
|
|
42
|
-
return layer.inited && layer.isVisible()
|
|
43
|
-
}) //
|
|
44
|
-
// @ts-ignore
|
|
42
|
+
return layer.inited && layer.isVisible();
|
|
43
|
+
}) // @ts-ignore
|
|
45
44
|
.filter(function (layer) {
|
|
46
45
|
return layer.getPickID() !== pickId;
|
|
47
46
|
}).map(function (layer) {
|
|
@@ -53,13 +52,6 @@ export function setHighlight(layers, pickedColors) {
|
|
|
53
52
|
export function setPickState(layers, pickColors) {
|
|
54
53
|
if (pickColors.select) {
|
|
55
54
|
layers.map(function (layer) {
|
|
56
|
-
// if(layer.modelLoaded) {
|
|
57
|
-
// selectFeature(layer, this.pickColors.select);
|
|
58
|
-
// } else {
|
|
59
|
-
// layer.once('modelLoaded', () => {
|
|
60
|
-
// selectFeature(layer, this.pickColors.select);
|
|
61
|
-
// })
|
|
62
|
-
// }
|
|
63
55
|
selectFeature(layer, pickColors.select);
|
|
64
56
|
});
|
|
65
57
|
}
|
package/es/tile/interface.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ILayer, IMapService, IRendererService, ISource, ISubLayerInitOptions } from '@antv/l7-core';
|
|
2
|
-
import {
|
|
2
|
+
import { SourceTile } from '@antv/l7-utils';
|
|
3
3
|
export declare type Timeout = any;
|
|
4
4
|
export declare type CacheEvent = 'click' | 'mousemove' | 'mouseup' | 'mousedown' | 'contextmenu';
|
|
5
5
|
export interface ITileFactoryOptions {
|
|
@@ -12,16 +12,17 @@ export interface ITileStyles {
|
|
|
12
12
|
}
|
|
13
13
|
export interface ILayerTileConfig {
|
|
14
14
|
L7Layer?: any;
|
|
15
|
-
tile:
|
|
15
|
+
tile: SourceTile;
|
|
16
16
|
initOptions: ISubLayerInitOptions;
|
|
17
17
|
vectorTileLayer?: any;
|
|
18
18
|
source: ISource;
|
|
19
19
|
needListen?: boolean;
|
|
20
20
|
}
|
|
21
21
|
export interface ITileFactory {
|
|
22
|
-
|
|
22
|
+
loaded: boolean;
|
|
23
|
+
layers: ILayer[];
|
|
24
|
+
createTile(tile: SourceTile, initOptions: ISubLayerInitOptions): {
|
|
23
25
|
layers: ILayer[];
|
|
24
|
-
layerIDList: string[];
|
|
25
26
|
};
|
|
26
27
|
createLayer(option: ILayerTileConfig): ILayer;
|
|
27
28
|
updateStyle(styles: ITileStyles): string;
|
|
@@ -1,30 +1,35 @@
|
|
|
1
|
-
import { ILayer, IRendererService, IMapService, ISubLayerInitOptions } from '@antv/l7-core';
|
|
2
|
-
import {
|
|
3
|
-
import { ITileFactory } from '../tileFactory';
|
|
1
|
+
import { ILayer, IRendererService, IMapService, ISubLayerInitOptions, ILayerService } from '@antv/l7-core';
|
|
2
|
+
import { SourceTile } from '@antv/l7-utils';
|
|
4
3
|
export declare class Base {
|
|
5
4
|
sourceLayer: string;
|
|
6
5
|
parent: ILayer;
|
|
7
6
|
children: ILayer[];
|
|
8
7
|
mapService: IMapService;
|
|
9
8
|
rendererService: IRendererService;
|
|
10
|
-
protected tileFactory:
|
|
9
|
+
protected tileFactory: any;
|
|
11
10
|
protected initOptions: ISubLayerInitOptions;
|
|
12
11
|
private tileCache;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
removeTile(tile:
|
|
12
|
+
private tileLayerCache;
|
|
13
|
+
private initTileLayers;
|
|
14
|
+
render(): void;
|
|
15
|
+
hasTile(tile: SourceTile): boolean;
|
|
16
|
+
addTile(tile: SourceTile): Promise<any>;
|
|
17
|
+
removeTile(tile: SourceTile): void;
|
|
19
18
|
addChild(layer: ILayer): void;
|
|
20
19
|
addChildren(layers: ILayer[]): void;
|
|
21
|
-
|
|
20
|
+
removeLayers(layers?: ILayer[], refresh?: boolean): void;
|
|
22
21
|
removeChild(layer: ILayer): void;
|
|
23
|
-
|
|
22
|
+
getLayers(tile: SourceTile): ILayer[];
|
|
24
23
|
getChild(layerID: string): ILayer;
|
|
25
24
|
clearChild(): void;
|
|
26
25
|
hasChild(layer: ILayer): boolean;
|
|
27
26
|
initTileFactory(): void;
|
|
28
27
|
getSourceLayer(parentParserType: string, sourceLayer: string | undefined): string | undefined;
|
|
28
|
+
updateTileVisible(tile: SourceTile, layerService: ILayerService): void;
|
|
29
|
+
listenLoad(tile: SourceTile, callback: () => void): void;
|
|
30
|
+
isTileLoaded(tile: SourceTile): boolean;
|
|
31
|
+
isTileChildLoaded(tile: SourceTile): boolean;
|
|
32
|
+
isTileParentLoaded(tile: SourceTile): boolean;
|
|
33
|
+
isTileAllLoad(tile: SourceTile): boolean;
|
|
29
34
|
destroy(): void;
|
|
30
35
|
}
|