@antv/l7-layers 2.10.6 → 2.10.9
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/index.d.ts +1 -1
- 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/canvas/models/index.d.ts +1 -1
- 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 +5 -5
- 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/shape/Path.d.ts +2 -2
- package/es/core/triangulation.js +8 -1
- package/es/earth/index.d.ts +3 -3
- 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/models/index.d.ts +1 -1
- 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 +66 -29
- 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/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 +7 -6
- 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/grid-index.d.ts +1 -1
- package/es/utils/layerData.js +5 -11
- package/es/utils/symbol-layout.d.ts +1 -1
- package/es/wind/index.d.ts +2 -3
- package/es/wind/index.js +27 -17
- package/es/wind/models/index.d.ts +1 -1
- 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 +68 -29
- 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/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
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import RasterTileModel from "../../tile/models/tileModel";
|
|
2
1
|
import RasterModel from "./raster";
|
|
3
2
|
import RasterRgbModel from "./rasterRgb";
|
|
3
|
+
import RasterTerrainRGB from "./rasterTerrainRgb";
|
|
4
4
|
var RasterModels = {
|
|
5
5
|
raster: RasterModel,
|
|
6
6
|
rasterRgb: RasterRgbModel,
|
|
7
7
|
raster3d: RasterModel,
|
|
8
|
-
|
|
8
|
+
rasterTerrainRgb: RasterTerrainRGB
|
|
9
9
|
};
|
|
10
10
|
export default RasterModels;
|
|
@@ -14,8 +14,8 @@ export default class RasterModel extends BaseModel {
|
|
|
14
14
|
u_colorTexture: ITexture2D;
|
|
15
15
|
};
|
|
16
16
|
private getRasterData;
|
|
17
|
-
initModels(
|
|
18
|
-
buildModels(
|
|
17
|
+
initModels(): Promise<IModel[]>;
|
|
18
|
+
buildModels(): Promise<IModel[]>;
|
|
19
19
|
clearModels(): void;
|
|
20
20
|
protected registerBuiltinAttributes(): void;
|
|
21
21
|
private updateColorTexture;
|
|
@@ -12,12 +12,11 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
12
12
|
|
|
13
13
|
import { AttributeType, gl } from '@antv/l7-core';
|
|
14
14
|
import { generateColorRamp, getMask } from '@antv/l7-utils';
|
|
15
|
-
import { isEqual } from 'lodash';
|
|
16
15
|
import BaseModel from "../../core/BaseModel";
|
|
17
16
|
import { RasterImageTriangulation } from "../../core/triangulation";
|
|
18
17
|
|
|
19
18
|
/* babel-plugin-inline-import '../shaders/raster_2d_frag.glsl' */
|
|
20
|
-
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";
|
|
21
20
|
|
|
22
21
|
/* babel-plugin-inline-import '../shaders/raster_2d_vert.glsl' */
|
|
23
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";
|
|
@@ -49,11 +48,7 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
49
48
|
domain = _ref$domain === void 0 ? [0, 1] : _ref$domain,
|
|
50
49
|
rampColors = _ref.rampColors;
|
|
51
50
|
|
|
52
|
-
|
|
53
|
-
this.updateColorTexture();
|
|
54
|
-
this.rampColors = rampColors;
|
|
55
|
-
}
|
|
56
|
-
|
|
51
|
+
this.colorTexture = this.layer.textureService.getColorTexture(rampColors);
|
|
57
52
|
return {
|
|
58
53
|
u_opacity: opacity || 1,
|
|
59
54
|
u_texture: this.texture,
|
|
@@ -117,14 +112,14 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
117
112
|
}, {
|
|
118
113
|
key: "initModels",
|
|
119
114
|
value: function () {
|
|
120
|
-
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(
|
|
121
|
-
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside,
|
|
115
|
+
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
116
|
+
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, parserDataItem, _yield$this$getRaster, data, width, height, model;
|
|
122
117
|
|
|
123
118
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
124
119
|
while (1) {
|
|
125
120
|
switch (_context2.prev = _context2.next) {
|
|
126
121
|
case 0:
|
|
127
|
-
_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
|
|
122
|
+
_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;
|
|
128
123
|
source = this.layer.getSource();
|
|
129
124
|
createTexture2D = this.rendererService.createTexture2D;
|
|
130
125
|
parserDataItem = source.data.dataArray[0];
|
|
@@ -144,14 +139,8 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
144
139
|
type: gl.FLOAT // aniso: 4,
|
|
145
140
|
|
|
146
141
|
});
|
|
147
|
-
|
|
148
|
-
this.
|
|
149
|
-
data: imageData.data,
|
|
150
|
-
width: imageData.width,
|
|
151
|
-
height: imageData.height,
|
|
152
|
-
flipY: false
|
|
153
|
-
});
|
|
154
|
-
this.layer.buildLayerModel({
|
|
142
|
+
_context2.next = 13;
|
|
143
|
+
return this.layer.buildLayerModel({
|
|
155
144
|
moduleName: 'rasterImageData',
|
|
156
145
|
vertexShader: rasterVert,
|
|
157
146
|
fragmentShader: rasterFrag,
|
|
@@ -161,14 +150,13 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
161
150
|
enable: false
|
|
162
151
|
},
|
|
163
152
|
stencil: getMask(mask, maskInside)
|
|
164
|
-
}).then(function (model) {
|
|
165
|
-
callbackModel([model]);
|
|
166
|
-
}).catch(function (err) {
|
|
167
|
-
console.warn(err);
|
|
168
|
-
callbackModel([]);
|
|
169
153
|
});
|
|
170
154
|
|
|
171
|
-
case
|
|
155
|
+
case 13:
|
|
156
|
+
model = _context2.sent;
|
|
157
|
+
return _context2.abrupt("return", [model]);
|
|
158
|
+
|
|
159
|
+
case 15:
|
|
172
160
|
case "end":
|
|
173
161
|
return _context2.stop();
|
|
174
162
|
}
|
|
@@ -176,7 +164,7 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
176
164
|
}, _callee2, this);
|
|
177
165
|
}));
|
|
178
166
|
|
|
179
|
-
function initModels(
|
|
167
|
+
function initModels() {
|
|
180
168
|
return _initModels.apply(this, arguments);
|
|
181
169
|
}
|
|
182
170
|
|
|
@@ -184,9 +172,32 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
184
172
|
}()
|
|
185
173
|
}, {
|
|
186
174
|
key: "buildModels",
|
|
187
|
-
value: function
|
|
188
|
-
|
|
189
|
-
|
|
175
|
+
value: function () {
|
|
176
|
+
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
|
|
177
|
+
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
178
|
+
while (1) {
|
|
179
|
+
switch (_context3.prev = _context3.next) {
|
|
180
|
+
case 0:
|
|
181
|
+
_context3.next = 2;
|
|
182
|
+
return this.initModels();
|
|
183
|
+
|
|
184
|
+
case 2:
|
|
185
|
+
return _context3.abrupt("return", _context3.sent);
|
|
186
|
+
|
|
187
|
+
case 3:
|
|
188
|
+
case "end":
|
|
189
|
+
return _context3.stop();
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}, _callee3, this);
|
|
193
|
+
}));
|
|
194
|
+
|
|
195
|
+
function buildModels() {
|
|
196
|
+
return _buildModels.apply(this, arguments);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
return buildModels;
|
|
200
|
+
}()
|
|
190
201
|
}, {
|
|
191
202
|
key: "clearModels",
|
|
192
203
|
value: function clearModels() {
|
|
@@ -2,19 +2,18 @@ import { IModel, ITexture2D } from '@antv/l7-core';
|
|
|
2
2
|
import BaseModel from '../../core/BaseModel';
|
|
3
3
|
export default class RasterModel extends BaseModel {
|
|
4
4
|
protected texture: ITexture2D;
|
|
5
|
-
protected
|
|
6
|
-
protected channelGMax: number;
|
|
7
|
-
protected channelBMax: number;
|
|
5
|
+
protected dataOption: any;
|
|
8
6
|
getUninforms(): {
|
|
9
7
|
u_opacity: number;
|
|
10
8
|
u_texture: ITexture2D;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
u_noDataValue: number;
|
|
10
|
+
u_rminmax: any;
|
|
11
|
+
u_gminmax: any;
|
|
12
|
+
u_bminmax: any;
|
|
14
13
|
};
|
|
15
14
|
private getRasterData;
|
|
16
|
-
initModels(
|
|
17
|
-
buildModels(
|
|
15
|
+
initModels(): Promise<IModel[]>;
|
|
16
|
+
buildModels(): Promise<IModel[]>;
|
|
18
17
|
clearModels(): void;
|
|
19
18
|
protected registerBuiltinAttributes(): void;
|
|
20
19
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
1
3
|
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
4
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
5
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
@@ -6,6 +8,8 @@ import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
|
6
8
|
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
7
9
|
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
8
10
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
11
|
+
var _excluded = ["data"],
|
|
12
|
+
_excluded2 = ["rasterData"];
|
|
9
13
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
10
14
|
|
|
11
15
|
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); }; }
|
|
@@ -18,7 +22,7 @@ import BaseModel from "../../core/BaseModel";
|
|
|
18
22
|
import { RasterImageTriangulation } from "../../core/triangulation";
|
|
19
23
|
|
|
20
24
|
/* babel-plugin-inline-import '../shaders/raster_rgb_frag.glsl' */
|
|
21
|
-
var rasterFrag = "precision mediump float;\nuniform
|
|
25
|
+
var rasterFrag = "precision mediump float;\nuniform vec2 u_rminmax: vec2(0,255); \nuniform vec2 u_gminmax: vec2(0,255);\nuniform vec2 u_bminmax: vec2(0,255);\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform float u_noDataValue : 0.0;\nvarying vec2 v_texCoord;\n\nvoid main() {\n vec3 rgb = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).rgb;\n if(rgb == vec3(u_noDataValue)) {\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n } else {\n 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);\n }\n \n}";
|
|
22
26
|
|
|
23
27
|
/* babel-plugin-inline-import '../shaders/raster_2d_vert.glsl' */
|
|
24
28
|
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";
|
|
@@ -39,11 +43,7 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
39
43
|
|
|
40
44
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
41
45
|
|
|
42
|
-
_defineProperty(_assertThisInitialized(_this), "
|
|
43
|
-
|
|
44
|
-
_defineProperty(_assertThisInitialized(_this), "channelGMax", 256);
|
|
45
|
-
|
|
46
|
-
_defineProperty(_assertThisInitialized(_this), "channelBMax", 256);
|
|
46
|
+
_defineProperty(_assertThisInitialized(_this), "dataOption", {});
|
|
47
47
|
|
|
48
48
|
return _this;
|
|
49
49
|
}
|
|
@@ -54,23 +54,27 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
54
54
|
var _ref = this.layer.getLayerConfig(),
|
|
55
55
|
_ref$opacity = _ref.opacity,
|
|
56
56
|
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
channelBMax = _ref.channelBMax;
|
|
57
|
+
_ref$noDataValue = _ref.noDataValue,
|
|
58
|
+
noDataValue = _ref$noDataValue === void 0 ? 0 : _ref$noDataValue;
|
|
60
59
|
|
|
60
|
+
var _this$dataOption = this.dataOption,
|
|
61
|
+
rMinMax = _this$dataOption.rMinMax,
|
|
62
|
+
gMinMax = _this$dataOption.gMinMax,
|
|
63
|
+
bMinMax = _this$dataOption.bMinMax;
|
|
61
64
|
return {
|
|
62
65
|
u_opacity: opacity || 1,
|
|
63
66
|
u_texture: this.texture,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
+
u_noDataValue: noDataValue,
|
|
68
|
+
u_rminmax: rMinMax,
|
|
69
|
+
u_gminmax: gMinMax,
|
|
70
|
+
u_bminmax: bMinMax
|
|
67
71
|
};
|
|
68
72
|
}
|
|
69
73
|
}, {
|
|
70
74
|
key: "getRasterData",
|
|
71
75
|
value: function () {
|
|
72
76
|
var _getRasterData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(parserDataItem) {
|
|
73
|
-
var _yield$parserDataItem, rasterData,
|
|
77
|
+
var data, rescfg, _yield$parserDataItem, rasterData, rest;
|
|
74
78
|
|
|
75
79
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
76
80
|
while (1) {
|
|
@@ -81,11 +85,11 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
81
85
|
break;
|
|
82
86
|
}
|
|
83
87
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
});
|
|
88
|
+
data = parserDataItem.data, rescfg = _objectWithoutProperties(parserDataItem, _excluded);
|
|
89
|
+
this.dataOption = rescfg;
|
|
90
|
+
return _context.abrupt("return", _objectSpread({
|
|
91
|
+
data: data
|
|
92
|
+
}, rescfg));
|
|
89
93
|
|
|
90
94
|
case 4:
|
|
91
95
|
_context.next = 6;
|
|
@@ -94,21 +98,24 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
94
98
|
case 6:
|
|
95
99
|
_yield$parserDataItem = _context.sent;
|
|
96
100
|
rasterData = _yield$parserDataItem.rasterData;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
channelR = _yield$parserDataItem.channelR;
|
|
100
|
-
channelG = _yield$parserDataItem.channelG;
|
|
101
|
-
channelB = _yield$parserDataItem.channelB;
|
|
102
|
-
this.channelRMax = channelR;
|
|
103
|
-
this.channelGMax = channelG;
|
|
104
|
-
this.channelBMax = channelB;
|
|
105
|
-
return _context.abrupt("return", {
|
|
106
|
-
data: Array.from(rasterData),
|
|
107
|
-
width: width,
|
|
108
|
-
height: height
|
|
109
|
-
});
|
|
101
|
+
rest = _objectWithoutProperties(_yield$parserDataItem, _excluded2);
|
|
102
|
+
this.dataOption = rest;
|
|
110
103
|
|
|
111
|
-
|
|
104
|
+
if (!Array.isArray(rasterData)) {
|
|
105
|
+
_context.next = 14;
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
return _context.abrupt("return", _objectSpread({
|
|
110
|
+
data: rasterData
|
|
111
|
+
}, rest));
|
|
112
|
+
|
|
113
|
+
case 14:
|
|
114
|
+
return _context.abrupt("return", _objectSpread({
|
|
115
|
+
data: Array.from(rasterData)
|
|
116
|
+
}, rest));
|
|
117
|
+
|
|
118
|
+
case 15:
|
|
112
119
|
case "end":
|
|
113
120
|
return _context.stop();
|
|
114
121
|
}
|
|
@@ -125,8 +132,8 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
125
132
|
}, {
|
|
126
133
|
key: "initModels",
|
|
127
134
|
value: function () {
|
|
128
|
-
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(
|
|
129
|
-
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, parserDataItem, _yield$this$getRaster, data, width, height;
|
|
135
|
+
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
136
|
+
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, parserDataItem, _yield$this$getRaster, data, width, height, model;
|
|
130
137
|
|
|
131
138
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
132
139
|
while (1) {
|
|
@@ -152,7 +159,8 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
152
159
|
format: gl.RGB,
|
|
153
160
|
type: gl.FLOAT
|
|
154
161
|
});
|
|
155
|
-
|
|
162
|
+
_context2.next = 13;
|
|
163
|
+
return this.layer.buildLayerModel({
|
|
156
164
|
moduleName: 'rasterImageDataRGBA',
|
|
157
165
|
vertexShader: rasterVert,
|
|
158
166
|
fragmentShader: rasterFrag,
|
|
@@ -162,14 +170,13 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
162
170
|
enable: false
|
|
163
171
|
},
|
|
164
172
|
stencil: getMask(mask, maskInside)
|
|
165
|
-
}).then(function (model) {
|
|
166
|
-
callbackModel([model]);
|
|
167
|
-
}).catch(function (err) {
|
|
168
|
-
console.warn(err);
|
|
169
|
-
callbackModel([]);
|
|
170
173
|
});
|
|
171
174
|
|
|
172
|
-
case
|
|
175
|
+
case 13:
|
|
176
|
+
model = _context2.sent;
|
|
177
|
+
return _context2.abrupt("return", [model]);
|
|
178
|
+
|
|
179
|
+
case 15:
|
|
173
180
|
case "end":
|
|
174
181
|
return _context2.stop();
|
|
175
182
|
}
|
|
@@ -177,7 +184,7 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
177
184
|
}, _callee2, this);
|
|
178
185
|
}));
|
|
179
186
|
|
|
180
|
-
function initModels(
|
|
187
|
+
function initModels() {
|
|
181
188
|
return _initModels.apply(this, arguments);
|
|
182
189
|
}
|
|
183
190
|
|
|
@@ -185,9 +192,32 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
185
192
|
}()
|
|
186
193
|
}, {
|
|
187
194
|
key: "buildModels",
|
|
188
|
-
value: function
|
|
189
|
-
|
|
190
|
-
|
|
195
|
+
value: function () {
|
|
196
|
+
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
|
|
197
|
+
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
198
|
+
while (1) {
|
|
199
|
+
switch (_context3.prev = _context3.next) {
|
|
200
|
+
case 0:
|
|
201
|
+
_context3.next = 2;
|
|
202
|
+
return this.initModels();
|
|
203
|
+
|
|
204
|
+
case 2:
|
|
205
|
+
return _context3.abrupt("return", _context3.sent);
|
|
206
|
+
|
|
207
|
+
case 3:
|
|
208
|
+
case "end":
|
|
209
|
+
return _context3.stop();
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}, _callee3, this);
|
|
213
|
+
}));
|
|
214
|
+
|
|
215
|
+
function buildModels() {
|
|
216
|
+
return _buildModels.apply(this, arguments);
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
return buildModels;
|
|
220
|
+
}()
|
|
191
221
|
}, {
|
|
192
222
|
key: "clearModels",
|
|
193
223
|
value: function clearModels() {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { IModel, IModelUniform, ITexture2D } from '@antv/l7-core';
|
|
2
2
|
import BaseModel from '../../core/BaseModel';
|
|
3
|
-
export default class
|
|
3
|
+
export default class RasterTerrainRGB extends BaseModel {
|
|
4
4
|
protected texture: ITexture2D;
|
|
5
5
|
getUninforms(): IModelUniform;
|
|
6
|
-
initModels(
|
|
6
|
+
initModels(): Promise<IModel[]>;
|
|
7
7
|
clearModels(): void;
|
|
8
|
-
buildModels(
|
|
8
|
+
buildModels(): Promise<IModel[]>;
|
|
9
9
|
protected registerBuiltinAttributes(): void;
|
|
10
10
|
}
|
|
@@ -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
|
}
|