@antv/l7-layers 2.16.1 → 2.16.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/Geometry/index.js +9 -31
- package/es/Geometry/models/billboard.js +51 -89
- package/es/Geometry/models/plane.js +81 -143
- package/es/Geometry/models/sprite.js +60 -118
- package/es/canvas/index.js +10 -33
- package/es/canvas/models/canvas.js +41 -97
- package/es/citybuliding/building.js +8 -27
- package/es/citybuliding/models/build.js +57 -82
- package/es/core/BaseLayer.d.ts +3 -0
- package/es/core/BaseLayer.js +360 -528
- package/es/core/BaseModel.d.ts +9 -71
- package/es/core/BaseModel.js +118 -429
- package/es/core/CommonStyleAttribute.d.ts +2 -0
- package/es/core/CommonStyleAttribute.js +66 -0
- package/es/core/LayerPickService.js +21 -32
- package/es/core/TextureService.js +0 -13
- package/es/core/interface.d.ts +13 -3
- package/es/core/interface.js +17 -24
- package/es/core/shape/Path.js +13 -20
- package/es/core/shape/extrude.js +27 -36
- package/es/core/triangulation.d.ts +12 -0
- package/es/core/triangulation.js +124 -114
- package/es/earth/index.js +9 -33
- package/es/earth/models/atmosphere.js +30 -54
- package/es/earth/models/base.js +47 -85
- package/es/earth/models/bloomsphere.js +30 -54
- package/es/earth/utils.js +9 -13
- package/es/heatmap/index.js +10 -40
- package/es/heatmap/models/grid.js +29 -53
- package/es/heatmap/models/grid3d.js +29 -53
- package/es/heatmap/models/heatmap.d.ts +1 -0
- package/es/heatmap/models/heatmap.js +99 -150
- package/es/heatmap/models/hexagon.js +29 -53
- package/es/heatmap/shaders/grid_vert.glsl +2 -2
- package/es/heatmap/shaders/hexagon_3d_vert.glsl +2 -2
- package/es/heatmap/shaders/hexagon_vert.glsl +2 -2
- package/es/heatmap/triangulation.js +0 -4
- package/es/image/index.js +9 -28
- package/es/image/models/image.js +66 -100
- package/es/index.js +9 -17
- package/es/line/index.d.ts +1 -0
- package/es/line/index.js +12 -36
- package/es/line/models/arc.js +72 -160
- package/es/line/models/arc_3d.js +67 -148
- package/es/line/models/earthArc_3d.js +66 -148
- package/es/line/models/{half.d.ts → flow.d.ts} +1 -11
- package/es/line/models/flow.js +167 -0
- package/es/line/models/great_circle.js +57 -135
- package/es/line/models/index.d.ts +1 -1
- package/es/line/models/index.js +3 -3
- package/es/line/models/line.js +98 -186
- package/es/line/models/linearline.js +46 -115
- package/es/line/models/simpleLine.d.ts +0 -1
- package/es/line/models/simpleLine.js +42 -114
- package/es/line/models/wall.js +52 -92
- package/es/line/shaders/dash/arc_dash_frag.glsl +3 -6
- package/es/line/shaders/dash/arc_dash_vert.glsl +6 -46
- package/es/line/shaders/dash/line_dash_frag.glsl +4 -7
- package/es/line/shaders/dash/line_dash_vert.glsl +3 -33
- package/es/line/shaders/flow/flow_line_frag.glsl +13 -0
- package/es/line/shaders/flow/flow_line_vert.glsl +83 -0
- package/es/line/shaders/line_arc_3d_frag.glsl +6 -6
- package/es/line/shaders/line_arc_3d_vert.glsl +4 -34
- package/es/line/shaders/line_arc_frag.glsl +7 -11
- package/es/line/shaders/line_arc_great_circle_frag.glsl +5 -6
- package/es/line/shaders/line_arc_great_circle_vert.glsl +4 -32
- package/es/line/shaders/line_arc_vert.glsl +9 -45
- package/es/line/shaders/line_frag.glsl +15 -17
- package/es/line/shaders/line_vert.glsl +3 -34
- package/es/line/shaders/linear/arc3d_linear_frag.glsl +5 -19
- package/es/line/shaders/linear/arc3d_linear_vert.glsl +9 -48
- package/es/line/shaders/linear/arc_linear_frag.glsl +2 -30
- package/es/line/shaders/linear/arc_linear_vert.glsl +9 -45
- package/es/line/shaders/linear/line_linear_frag.glsl +5 -6
- package/es/line/shaders/linearLine/line_linear_frag.glsl +2 -14
- package/es/line/shaders/linearLine/line_linear_vert.glsl +14 -32
- package/es/line/shaders/simple/simpleline_frag.glsl +1 -5
- package/es/line/shaders/simple/simpleline_linear_frag.glsl +2 -6
- package/es/line/shaders/simple/simpleline_vert.glsl +7 -33
- package/es/mask/index.js +9 -28
- package/es/mask/models/fill.js +29 -54
- package/es/plugins/DataMappingPlugin.js +90 -141
- package/es/plugins/DataSourcePlugin.js +45 -68
- package/es/plugins/FeatureScalePlugin.js +67 -122
- package/es/plugins/LayerAnimateStylePlugin.js +0 -5
- package/es/plugins/LayerMaskPlugin.js +3 -11
- package/es/plugins/LayerModelPlugin.js +79 -104
- package/es/plugins/LayerStylePlugin.js +3 -9
- package/es/plugins/LightingPlugin.js +12 -18
- package/es/plugins/MultiPassRendererPlugin.js +11 -16
- package/es/plugins/PixelPickingPlugin.js +12 -21
- package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
- package/es/plugins/ShaderUniformPlugin.js +15 -29
- package/es/plugins/UpdateModelPlugin.js +0 -5
- package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
- package/es/point/index.d.ts +1 -0
- package/es/point/index.js +27 -77
- package/es/point/models/earthExtrude.d.ts +0 -3
- package/es/point/models/earthExtrude.js +60 -139
- package/es/point/models/earthFill.d.ts +0 -1
- package/es/point/models/earthFill.js +59 -140
- package/es/point/models/extrude.d.ts +0 -3
- package/es/point/models/extrude.js +60 -140
- package/es/point/models/fill.d.ts +0 -1
- package/es/point/models/fill.js +67 -158
- package/es/point/models/fillmage.js +66 -147
- package/es/point/models/image.js +52 -126
- package/es/point/models/index.js +2 -2
- package/es/point/models/normal.js +32 -56
- package/es/point/models/radar.d.ts +0 -1
- package/es/point/models/radar.js +42 -75
- package/es/point/models/simplePoint.d.ts +0 -1
- package/es/point/models/simplePoint.js +46 -115
- package/es/point/models/text.js +211 -344
- package/es/point/shaders/animate/wave_frag.glsl +1 -11
- package/es/point/shaders/earth/extrude_frag.glsl +5 -17
- package/es/point/shaders/earth/extrude_vert.glsl +14 -29
- package/es/point/shaders/earth/fill_frag.glsl +5 -14
- package/es/point/shaders/earth/fill_vert.glsl +1 -75
- package/es/point/shaders/extrude/extrude_frag.glsl +3 -29
- package/es/point/shaders/extrude/extrude_vert.glsl +27 -35
- package/es/point/shaders/fill_frag.glsl +9 -20
- package/es/point/shaders/fill_vert.glsl +16 -101
- package/es/point/shaders/image/fillImage_frag.glsl +2 -5
- package/es/point/shaders/image/fillImage_vert.glsl +4 -47
- package/es/point/shaders/image_frag.glsl +1 -5
- package/es/point/shaders/image_vert.glsl +1 -44
- package/es/point/shaders/normal_frag.glsl +0 -2
- package/es/point/shaders/normal_vert.glsl +2 -1
- package/es/point/shaders/radar/radar_vert.glsl +2 -2
- package/es/point/shaders/simplePoint_frag.glsl +0 -7
- package/es/point/shaders/simplePoint_vert.glsl +3 -45
- package/es/point/shaders/text_frag.glsl +6 -19
- package/es/point/shaders/text_vert.glsl +5 -66
- package/es/point/shape/extrude.js +4 -13
- package/es/polygon/index.d.ts +1 -0
- package/es/polygon/index.js +12 -40
- package/es/polygon/models/extrude.d.ts +0 -3
- package/es/polygon/models/extrude.js +122 -162
- package/es/polygon/models/fill.d.ts +0 -4
- package/es/polygon/models/fill.js +57 -130
- package/es/polygon/models/index.js +3 -2
- package/es/polygon/models/ocean.js +42 -76
- package/es/polygon/models/water.js +37 -71
- package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -23
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +7 -5
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +7 -32
- package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +33 -38
- package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +12 -9
- package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +16 -44
- package/es/polygon/shaders/polygon_frag.glsl +0 -5
- package/es/polygon/shaders/polygon_linear_frag.glsl +0 -8
- package/es/polygon/shaders/polygon_linear_vert.glsl +0 -32
- package/es/polygon/shaders/polygon_vert.glsl +1 -27
- package/es/raster/buffers/triangulation.js +2 -4
- package/es/raster/index.js +9 -32
- package/es/raster/models/raster.js +80 -116
- package/es/raster/models/rasterRgb.js +84 -127
- package/es/raster/models/rasterTerrainRgb.js +56 -84
- package/es/tile/interaction/getRasterData.js +14 -20
- package/es/tile/interaction/utils.js +7 -9
- package/es/tile/manager/base.js +63 -96
- package/es/tile/service/TileLayerService.js +33 -55
- package/es/tile/service/TilePickService.js +26 -40
- package/es/tile/service/TileSourceService.js +3 -7
- package/es/tile/tileFactory/DebugTile.js +29 -46
- package/es/tile/tileFactory/ImageTile.js +20 -38
- package/es/tile/tileFactory/MaskTile.js +22 -43
- package/es/tile/tileFactory/RasterRGBTile.js +22 -42
- package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
- package/es/tile/tileFactory/RasterTile.js +30 -53
- package/es/tile/tileFactory/Tile.js +63 -97
- package/es/tile/tileFactory/VectorTile.js +41 -68
- package/es/tile/tileFactory/index.js +0 -11
- package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
- package/es/tile/tileFactory/util.js +0 -3
- package/es/tile/tileLayer/BaseLayer.js +105 -146
- package/es/tile/utils.js +1 -1
- package/es/utils/blend.js +0 -2
- package/es/utils/collision-index.js +9 -16
- package/es/utils/extrude_polyline.js +101 -149
- package/es/utils/grid-index.js +2 -27
- package/es/utils/identityScale.js +0 -8
- package/es/utils/layerData.js +32 -46
- package/es/utils/multiPassRender.js +11 -13
- package/es/utils/polylineNormal.js +31 -37
- package/es/utils/simpleLine.js +2 -16
- package/es/utils/stencil.js +2 -3
- package/es/utils/symbol-layout.js +27 -53
- package/es/wind/index.js +9 -29
- package/es/wind/models/utils.js +26 -51
- package/es/wind/models/wind.js +101 -147
- package/es/wind/models/windRender.js +53 -66
- package/lib/Geometry/index.js +9 -38
- package/lib/Geometry/models/billboard.js +51 -97
- package/lib/Geometry/models/index.js +0 -5
- package/lib/Geometry/models/plane.js +79 -151
- package/lib/Geometry/models/sprite.js +60 -127
- package/lib/canvas/index.js +10 -40
- package/lib/canvas/models/canvas.js +41 -101
- package/lib/canvas/models/index.js +0 -3
- package/lib/citybuliding/building.js +8 -35
- package/lib/citybuliding/models/build.js +57 -92
- package/lib/core/BaseLayer.js +358 -520
- package/lib/core/BaseModel.js +117 -441
- package/lib/core/CommonStyleAttribute.js +72 -0
- package/lib/core/LayerPickService.js +21 -37
- package/lib/core/TextureService.js +0 -16
- package/lib/core/interface.js +21 -31
- package/lib/core/schema.js +0 -1
- package/lib/core/shape/Path.js +14 -31
- package/lib/core/shape/extrude.js +27 -59
- package/lib/core/triangulation.js +125 -153
- package/lib/earth/index.js +9 -43
- package/lib/earth/models/atmosphere.js +30 -63
- package/lib/earth/models/base.js +47 -90
- package/lib/earth/models/bloomsphere.js +30 -63
- package/lib/earth/utils.js +7 -31
- package/lib/heatmap/index.js +10 -48
- package/lib/heatmap/models/grid.js +29 -61
- package/lib/heatmap/models/grid3d.js +29 -61
- package/lib/heatmap/models/heatmap.js +99 -166
- package/lib/heatmap/models/hexagon.js +29 -61
- package/lib/heatmap/models/index.js +0 -6
- package/lib/heatmap/shaders/grid_vert.glsl +2 -2
- package/lib/heatmap/shaders/hexagon_3d_vert.glsl +2 -2
- package/lib/heatmap/shaders/hexagon_vert.glsl +2 -2
- package/lib/heatmap/triangulation.js +0 -5
- package/lib/image/index.js +9 -36
- package/lib/image/models/image.js +66 -109
- package/lib/image/models/index.js +0 -3
- package/lib/index.js +7 -61
- package/lib/line/index.js +12 -42
- package/lib/line/models/arc.js +70 -170
- package/lib/line/models/arc_3d.js +65 -159
- package/lib/line/models/earthArc_3d.js +64 -159
- package/lib/line/models/flow.js +174 -0
- package/lib/line/models/great_circle.js +57 -146
- package/lib/line/models/index.js +3 -14
- package/lib/line/models/line.js +96 -194
- package/lib/line/models/linearline.js +46 -127
- package/lib/line/models/simpleLine.js +42 -124
- package/lib/line/models/wall.js +52 -103
- package/lib/line/shaders/dash/arc_dash_frag.glsl +3 -6
- package/lib/line/shaders/dash/arc_dash_vert.glsl +6 -46
- package/lib/line/shaders/dash/line_dash_frag.glsl +4 -7
- package/lib/line/shaders/dash/line_dash_vert.glsl +3 -33
- package/lib/line/shaders/flow/flow_line_frag.glsl +13 -0
- package/lib/line/shaders/flow/flow_line_vert.glsl +83 -0
- package/lib/line/shaders/line_arc_3d_frag.glsl +6 -6
- package/lib/line/shaders/line_arc_3d_vert.glsl +4 -34
- package/lib/line/shaders/line_arc_frag.glsl +7 -11
- package/lib/line/shaders/line_arc_great_circle_frag.glsl +5 -6
- package/lib/line/shaders/line_arc_great_circle_vert.glsl +4 -32
- package/lib/line/shaders/line_arc_vert.glsl +9 -45
- package/lib/line/shaders/line_frag.glsl +15 -17
- package/lib/line/shaders/line_vert.glsl +3 -34
- package/lib/line/shaders/linear/arc3d_linear_frag.glsl +5 -19
- package/lib/line/shaders/linear/arc3d_linear_vert.glsl +9 -48
- package/lib/line/shaders/linear/arc_linear_frag.glsl +2 -30
- package/lib/line/shaders/linear/arc_linear_vert.glsl +9 -45
- package/lib/line/shaders/linear/line_linear_frag.glsl +5 -6
- package/lib/line/shaders/linearLine/line_linear_frag.glsl +2 -14
- package/lib/line/shaders/linearLine/line_linear_vert.glsl +14 -32
- package/lib/line/shaders/simple/simpleline_frag.glsl +1 -5
- package/lib/line/shaders/simple/simpleline_linear_frag.glsl +2 -6
- package/lib/line/shaders/simple/simpleline_vert.glsl +7 -33
- package/lib/mask/index.js +9 -36
- package/lib/mask/models/fill.js +29 -63
- package/lib/mask/models/index.js +0 -3
- package/lib/plugins/DataMappingPlugin.js +90 -152
- package/lib/plugins/DataSourcePlugin.js +45 -76
- package/lib/plugins/FeatureScalePlugin.js +67 -138
- package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
- package/lib/plugins/LayerMaskPlugin.js +4 -17
- package/lib/plugins/LayerModelPlugin.js +80 -113
- package/lib/plugins/LayerStylePlugin.js +4 -14
- package/lib/plugins/LightingPlugin.js +12 -25
- package/lib/plugins/MultiPassRendererPlugin.js +11 -22
- package/lib/plugins/PixelPickingPlugin.js +12 -27
- package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
- package/lib/plugins/ShaderUniformPlugin.js +15 -36
- package/lib/plugins/UpdateModelPlugin.js +1 -10
- package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
- package/lib/point/index.js +27 -83
- package/lib/point/models/earthExtrude.js +60 -150
- package/lib/point/models/earthFill.js +59 -170
- package/lib/point/models/extrude.js +60 -150
- package/lib/point/models/fill.js +65 -167
- package/lib/point/models/fillmage.js +64 -155
- package/lib/point/models/image.js +52 -136
- package/lib/point/models/index.js +1 -12
- package/lib/point/models/normal.js +32 -66
- package/lib/point/models/radar.js +42 -85
- package/lib/point/models/simplePoint.js +46 -125
- package/lib/point/models/text.js +209 -350
- package/lib/point/shaders/animate/wave_frag.glsl +1 -11
- package/lib/point/shaders/earth/extrude_frag.glsl +5 -17
- package/lib/point/shaders/earth/extrude_vert.glsl +14 -29
- package/lib/point/shaders/earth/fill_frag.glsl +5 -14
- package/lib/point/shaders/earth/fill_vert.glsl +1 -75
- package/lib/point/shaders/extrude/extrude_frag.glsl +3 -29
- package/lib/point/shaders/extrude/extrude_vert.glsl +27 -35
- package/lib/point/shaders/fill_frag.glsl +9 -20
- package/lib/point/shaders/fill_vert.glsl +16 -101
- package/lib/point/shaders/image/fillImage_frag.glsl +2 -5
- package/lib/point/shaders/image/fillImage_vert.glsl +4 -47
- package/lib/point/shaders/image_frag.glsl +1 -5
- package/lib/point/shaders/image_vert.glsl +1 -44
- package/lib/point/shaders/normal_frag.glsl +0 -2
- package/lib/point/shaders/normal_vert.glsl +2 -1
- package/lib/point/shaders/radar/radar_vert.glsl +2 -2
- package/lib/point/shaders/simplePoint_frag.glsl +0 -7
- package/lib/point/shaders/simplePoint_vert.glsl +3 -45
- package/lib/point/shaders/text_frag.glsl +6 -19
- package/lib/point/shaders/text_vert.glsl +5 -66
- package/lib/point/shape/extrude.js +4 -20
- package/lib/polygon/index.js +12 -48
- package/lib/polygon/models/extrude.js +122 -173
- package/lib/polygon/models/fill.js +57 -140
- package/lib/polygon/models/index.js +2 -14
- package/lib/polygon/models/ocean.js +42 -88
- package/lib/polygon/models/water.js +37 -82
- package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -23
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +7 -5
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +7 -32
- package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +33 -38
- package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +12 -9
- package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +16 -44
- package/lib/polygon/shaders/polygon_frag.glsl +0 -5
- package/lib/polygon/shaders/polygon_linear_frag.glsl +0 -8
- package/lib/polygon/shaders/polygon_linear_vert.glsl +0 -32
- package/lib/polygon/shaders/polygon_vert.glsl +1 -27
- package/lib/raster/buffers/triangulation.js +3 -7
- package/lib/raster/index.js +9 -40
- package/lib/raster/models/index.js +0 -5
- package/lib/raster/models/raster.js +80 -125
- package/lib/raster/models/rasterRgb.js +84 -139
- package/lib/raster/models/rasterTerrainRgb.js +56 -93
- package/lib/tile/interaction/getRasterData.js +14 -25
- package/lib/tile/interaction/utils.js +7 -19
- package/lib/tile/manager/base.js +63 -104
- package/lib/tile/service/TileLayerService.js +33 -60
- package/lib/tile/service/TilePickService.js +26 -48
- package/lib/tile/service/TileSourceService.js +2 -16
- package/lib/tile/style/utils.js +0 -3
- package/lib/tile/tileFactory/DebugTile.js +29 -54
- package/lib/tile/tileFactory/ImageTile.js +20 -46
- package/lib/tile/tileFactory/MaskTile.js +22 -51
- package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
- package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
- package/lib/tile/tileFactory/RasterTile.js +30 -63
- package/lib/tile/tileFactory/Tile.js +63 -102
- package/lib/tile/tileFactory/VectorTile.js +41 -76
- package/lib/tile/tileFactory/index.js +0 -25
- package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
- package/lib/tile/tileFactory/util.js +0 -9
- package/lib/tile/tileLayer/BaseLayer.js +105 -153
- package/lib/tile/utils.js +1 -5
- package/lib/utils/blend.js +0 -5
- package/lib/utils/collision-index.js +9 -25
- package/lib/utils/extrude_polyline.js +101 -181
- package/lib/utils/grid-index.js +2 -28
- package/lib/utils/identityScale.js +0 -9
- package/lib/utils/layerData.js +32 -51
- package/lib/utils/multiPassRender.js +11 -16
- package/lib/utils/polylineNormal.js +31 -66
- package/lib/utils/simpleLine.js +2 -21
- package/lib/utils/stencil.js +0 -4
- package/lib/utils/symbol-layout.js +27 -55
- package/lib/wind/index.js +9 -37
- package/lib/wind/models/index.js +0 -3
- package/lib/wind/models/utils.js +26 -62
- package/lib/wind/models/wind.js +101 -157
- package/lib/wind/models/windRender.js +53 -71
- package/lib/wind/models/windShader.js +0 -1
- package/package.json +7 -7
- package/es/line/models/half.js +0 -298
- package/es/line/shaders/half/line_half_frag.glsl +0 -53
- package/es/line/shaders/half/line_half_vert.glsl +0 -169
- package/es/utils/dataMappingStyle.d.ts +0 -31
- package/es/utils/dataMappingStyle.js +0 -147
- package/lib/line/models/half.js +0 -315
- package/lib/line/shaders/half/line_half_frag.glsl +0 -53
- package/lib/line/shaders/half/line_half_vert.glsl +0 -169
- package/lib/utils/dataMappingStyle.js +0 -151
|
@@ -7,17 +7,16 @@ uniform mat4 u_ModelMatrix;
|
|
|
7
7
|
uniform mat4 u_Mvp;
|
|
8
8
|
uniform float segmentNumber;
|
|
9
9
|
varying vec4 v_color;
|
|
10
|
+
varying float v_segmentIndex;
|
|
10
11
|
|
|
11
12
|
uniform float u_lineDir: 1.0;
|
|
12
13
|
|
|
13
14
|
uniform float u_thetaOffset: 0.314;
|
|
15
|
+
uniform vec4 u_sourceColor;
|
|
16
|
+
uniform vec4 u_targetColor;
|
|
17
|
+
|
|
14
18
|
|
|
15
|
-
uniform float u_opacity: 1.0;
|
|
16
|
-
varying mat4 styleMappingMat; // 用于将在顶点着色器中计算好的样式值传递给片元
|
|
17
19
|
|
|
18
|
-
#pragma include "styleMapping"
|
|
19
|
-
#pragma include "styleMappingCalOpacity"
|
|
20
|
-
#pragma include "styleMappingCalThetaOffset"
|
|
21
20
|
|
|
22
21
|
#pragma include "projection"
|
|
23
22
|
#pragma include "project"
|
|
@@ -73,37 +72,6 @@ vec2 getNormal(vec2 line_clipspace, float offset_direction) {
|
|
|
73
72
|
void main() {
|
|
74
73
|
v_color = a_Color;
|
|
75
74
|
|
|
76
|
-
// cal style mapping - 数据纹理映射部分的计算
|
|
77
|
-
styleMappingMat = mat4(
|
|
78
|
-
0.0, 0.0, 0.0, 0.0, // opacity - strokeOpacity - strokeWidth - empty
|
|
79
|
-
0.0, 0.0, 0.0, 0.0, // strokeR - strokeG - strokeB - strokeA
|
|
80
|
-
0.0, 0.0, 0.0, 0.0, // offsets[0] - offsets[1]
|
|
81
|
-
0.0, 0.0, 0.0, 0.0 // dataset 数据集
|
|
82
|
-
);
|
|
83
|
-
|
|
84
|
-
float rowCount = u_cellTypeLayout[0][0]; // 当前的数据纹理有几行
|
|
85
|
-
float columnCount = u_cellTypeLayout[0][1]; // 当看到数据纹理有几列
|
|
86
|
-
float columnWidth = 1.0/columnCount; // 列宽
|
|
87
|
-
float rowHeight = 1.0/rowCount; // 行高
|
|
88
|
-
float cellCount = calCellCount(); // opacity - strokeOpacity - strokeWidth - stroke - offsets
|
|
89
|
-
float id = a_vertexId; // 第n个顶点
|
|
90
|
-
float cellCurrentRow = floor(id * cellCount / columnCount) + 1.0; // 起始点在第几行
|
|
91
|
-
float cellCurrentColumn = mod(id * cellCount, columnCount) + 1.0; // 起始点在第几列
|
|
92
|
-
|
|
93
|
-
// cell 固定顺序 opacity -> strokeOpacity -> strokeWidth -> stroke -> thetaOffset...
|
|
94
|
-
// 按顺序从 cell 中取值、若没有则自动往下取值
|
|
95
|
-
float textureOffset = 0.0; // 在 cell 中取值的偏移量
|
|
96
|
-
|
|
97
|
-
vec2 opacityAndOffset = calOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);
|
|
98
|
-
styleMappingMat[0][0] = opacityAndOffset.r;
|
|
99
|
-
textureOffset = opacityAndOffset.g;
|
|
100
|
-
|
|
101
|
-
vec2 thetaOffsetAndOffset = calThetaOffsetAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);
|
|
102
|
-
styleMappingMat[0][1] = thetaOffsetAndOffset.r;
|
|
103
|
-
textureOffset = thetaOffsetAndOffset.g;
|
|
104
|
-
// cal style mapping - 数据纹理映射部分的计算
|
|
105
|
-
|
|
106
|
-
|
|
107
75
|
vec2 source = a_Instance.rg; // 起始点
|
|
108
76
|
vec2 target = a_Instance.ba; // 终点
|
|
109
77
|
float segmentIndex = a_Position.x;
|
|
@@ -112,12 +80,8 @@ void main() {
|
|
|
112
80
|
float indexDir = mix(-1.0, 1.0, step(segmentIndex, 0.0));
|
|
113
81
|
float nextSegmentRatio = getSegmentRatio(segmentIndex + indexDir);
|
|
114
82
|
float d_distance_ratio;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
// styleMappingMat[0][1] - arcThetaOffset
|
|
119
|
-
vec4 curr = project_position(vec4(interpolate(source, target, segmentRatio, styleMappingMat[0][1]), 0.0, 1.0));
|
|
120
|
-
vec4 next = project_position(vec4(interpolate(source, target, nextSegmentRatio, styleMappingMat[0][1]), 0.0, 1.0));
|
|
83
|
+
vec4 curr = project_position(vec4(interpolate(source, target, segmentRatio, u_thetaOffset, 0.0, 1.0));
|
|
84
|
+
vec4 next = project_position(vec4(interpolate(source, target, nextSegmentRatio, u_thetaOffset), 0.0, 1.0));
|
|
121
85
|
// v_normal = getNormal((next.xy - curr.xy) * indexDir, a_Position.y);
|
|
122
86
|
//unProjCustomCoord
|
|
123
87
|
|
|
@@ -125,11 +89,11 @@ void main() {
|
|
|
125
89
|
|
|
126
90
|
|
|
127
91
|
float d_segmentIndex = a_Position.x + 1.0; // 当前顶点在弧线中所处的分段位置
|
|
128
|
-
styleMappingMat[3].r = d_segmentIndex;
|
|
129
92
|
|
|
130
|
-
|
|
93
|
+
v_Color = mix(u_sourceColor, u_targetColor, d_segmentIndex/segmentNumber);
|
|
94
|
+
v_Color.a *= u_opacity;
|
|
95
|
+
|
|
131
96
|
if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x
|
|
132
|
-
// gl_Position = u_Mvp * (vec4(curr.xy + offset, 0, 1.0));
|
|
133
97
|
gl_Position = u_Mvp * (vec4(curr.xy + offset, 0, 1.0));
|
|
134
98
|
} else {
|
|
135
99
|
gl_Position = project_common_position_to_clipspace(vec4(curr.xy + offset, 0, 1.0));
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
varying vec4 v_color;
|
|
2
|
+
varying vec4 v_texture_data;
|
|
2
3
|
uniform float u_linearDir: 1.0;
|
|
3
4
|
uniform float u_linearColor: 0;
|
|
4
5
|
uniform vec4 u_sourceColor;
|
|
5
6
|
uniform vec4 u_targetColor;
|
|
7
|
+
uniform float u_opacity: 1.0;
|
|
6
8
|
|
|
7
9
|
#pragma include "picking"
|
|
8
10
|
|
|
9
11
|
|
|
10
|
-
varying mat4 styleMappingMat;
|
|
11
|
-
|
|
12
12
|
void main() {
|
|
13
|
-
float
|
|
14
|
-
float linearRadio = styleMappingMat[3][0]; // 当前点位距离占线总长的比例
|
|
13
|
+
float linearRadio = v_texture_data.r; // 当前点位距离占线总长的比例
|
|
15
14
|
if(u_linearDir < 1.0) {
|
|
16
|
-
linearRadio =
|
|
15
|
+
linearRadio = v_texture_data.a;
|
|
17
16
|
}
|
|
18
17
|
|
|
19
18
|
if(u_linearColor == 1.0) { // 使用渐变颜色
|
|
@@ -22,6 +21,6 @@ void main() {
|
|
|
22
21
|
gl_FragColor = v_color;
|
|
23
22
|
}
|
|
24
23
|
|
|
25
|
-
gl_FragColor.a *=
|
|
24
|
+
gl_FragColor.a *= u_opacity; // 全局透明度
|
|
26
25
|
gl_FragColor = filterColor(gl_FragColor);
|
|
27
26
|
}
|
|
@@ -1,20 +1,8 @@
|
|
|
1
|
-
uniform float u_opacity : 1.0;
|
|
2
|
-
uniform sampler2D u_texture;
|
|
3
|
-
uniform float u_linearDir: 1.0;
|
|
4
1
|
|
|
2
|
+
varying vec4 v_Color;
|
|
5
3
|
#pragma include "picking"
|
|
6
|
-
|
|
7
|
-
varying mat4 styleMappingMat;
|
|
8
|
-
|
|
9
4
|
void main() {
|
|
10
|
-
float opacity = styleMappingMat[0][0];
|
|
11
|
-
float linearRadio = styleMappingMat[3].r; // 当前点位距离占线总长的比例
|
|
12
|
-
if(u_linearDir < 1.0) {
|
|
13
|
-
linearRadio = styleMappingMat[3][3];
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
gl_FragColor = texture2D(u_texture, vec2(linearRadio, 0.5));
|
|
17
5
|
|
|
18
|
-
gl_FragColor
|
|
6
|
+
gl_FragColor = v_Color; // 全局透明度
|
|
19
7
|
gl_FragColor = filterColor(gl_FragColor);
|
|
20
8
|
}
|
|
@@ -14,43 +14,18 @@ uniform mat4 u_Mvp;
|
|
|
14
14
|
uniform float u_heightfixed: 0.0;
|
|
15
15
|
uniform float u_vertexScale: 1.0;
|
|
16
16
|
uniform float u_raisingHeight: 0.0;
|
|
17
|
+
uniform float u_opacity : 1.0;
|
|
18
|
+
uniform sampler2D u_texture;
|
|
19
|
+
uniform float u_linearDir: 1.0;
|
|
20
|
+
varying vec4 v_Color;
|
|
17
21
|
|
|
18
|
-
uniform float u_opacity: 1.0;
|
|
19
22
|
|
|
20
23
|
#pragma include "projection"
|
|
21
24
|
#pragma include "picking"
|
|
22
25
|
|
|
23
|
-
varying mat4 styleMappingMat; // 用于将在顶点着色器中计算好的样式值传递给片元
|
|
24
|
-
|
|
25
|
-
#pragma include "styleMapping"
|
|
26
|
-
#pragma include "styleMappingCalOpacity"
|
|
27
26
|
|
|
28
27
|
void main() {
|
|
29
|
-
// cal style mapping - 数据纹理映射部分的计算
|
|
30
|
-
styleMappingMat = mat4(
|
|
31
|
-
0.0, 0.0, 0.0, 0.0, // opacity - strokeOpacity - strokeWidth - empty
|
|
32
|
-
0.0, 0.0, 0.0, 0.0, // strokeR - strokeG - strokeB - strokeA
|
|
33
|
-
0.0, 0.0, 0.0, 0.0, // offsets[0] - offsets[1]
|
|
34
|
-
0.0, 0.0, 0.0, 0.0 // distance_ratio/distance/pixelLen/texV
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
float rowCount = u_cellTypeLayout[0][0]; // 当前的数据纹理有几行
|
|
38
|
-
float columnCount = u_cellTypeLayout[0][1]; // 当看到数据纹理有几列
|
|
39
|
-
float columnWidth = 1.0/columnCount; // 列宽
|
|
40
|
-
float rowHeight = 1.0/rowCount; // 行高
|
|
41
|
-
float cellCount = calCellCount(); // opacity - strokeOpacity - strokeWidth - stroke - offsets
|
|
42
|
-
float id = a_vertexId; // 第n个顶点
|
|
43
|
-
float cellCurrentRow = floor(id * cellCount / columnCount) + 1.0; // 起始点在第几行
|
|
44
|
-
float cellCurrentColumn = mod(id * cellCount, columnCount) + 1.0; // 起始点在第几列
|
|
45
|
-
|
|
46
|
-
// cell 固定顺序 opacity -> strokeOpacity -> strokeWidth -> stroke ...
|
|
47
|
-
// 按顺序从 cell 中取值、若没有则自动往下取值
|
|
48
|
-
float textureOffset = 0.0; // 在 cell 中取值的偏移量
|
|
49
28
|
|
|
50
|
-
vec2 opacityAndOffset = calOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);
|
|
51
|
-
styleMappingMat[0][0] = opacityAndOffset.r;
|
|
52
|
-
textureOffset = opacityAndOffset.g;
|
|
53
|
-
// cal style mapping - 数据纹理映射部分的计算
|
|
54
29
|
|
|
55
30
|
vec3 size = a_Miter * setPickingSize(a_Size.x) * reverse_offset_normal(a_Normal);
|
|
56
31
|
|
|
@@ -64,9 +39,16 @@ void main() {
|
|
|
64
39
|
float linePixelSize = project_pixel(a_Size.x) * 2.0; // 定点位置偏移,按地图等级缩放后的距离 单侧 * 2
|
|
65
40
|
float texV = lineOffsetWidth/linePixelSize; // 线图层贴图部分的 v 坐标值
|
|
66
41
|
|
|
67
|
-
//
|
|
68
|
-
|
|
69
|
-
|
|
42
|
+
float linearRadio =currentLinePointRatio; // 当前点位距离占线总长的比例
|
|
43
|
+
if(u_linearDir < 1.0) {
|
|
44
|
+
linearRadio = texV;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
v_Color = texture2D(u_texture, vec2(linearRadio, 0.5));
|
|
48
|
+
|
|
49
|
+
v_Color.a *= u_opacity; // 全局透明度
|
|
50
|
+
|
|
51
|
+
|
|
70
52
|
|
|
71
53
|
vec4 project_pos = project_position(vec4(a_Position.xy, 0, 1.0));
|
|
72
54
|
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
uniform vec4 u_sourceColor;
|
|
2
2
|
uniform vec4 u_targetColor;
|
|
3
|
-
|
|
4
|
-
varying mat4 styleMappingMat;
|
|
3
|
+
uniform float opacity;
|
|
5
4
|
void main() {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
// styleMappingMat[3][0] 当前点位距离占线总长的比例
|
|
9
|
-
gl_FragColor = mix(u_sourceColor, u_targetColor, styleMappingMat[3][0]);
|
|
5
|
+
gl_FragColor = mix(u_sourceColor, u_targetColor, v_distanceScale);
|
|
10
6
|
gl_FragColor.a *= opacity; // 全局透明度
|
|
11
7
|
}
|
|
@@ -10,47 +10,21 @@ uniform mat4 u_Mvp;
|
|
|
10
10
|
|
|
11
11
|
uniform float u_opacity: 1.0;
|
|
12
12
|
uniform float u_vertexScale: 1.0;
|
|
13
|
+
uniform vec4 u_sourceColor;
|
|
14
|
+
uniform vec4 u_targetColor;
|
|
13
15
|
|
|
14
|
-
#pragma include "projection"
|
|
15
16
|
|
|
16
|
-
varying vec4 v_color;
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
#pragma include "projection"
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
varying vec4 v_color;
|
|
21
|
+
varying float v_distanceScale;
|
|
22
22
|
|
|
23
23
|
void main() {
|
|
24
|
-
// cal style mapping - 数据纹理映射部分的计算
|
|
25
|
-
styleMappingMat = mat4(
|
|
26
|
-
0.0, 0.0, 0.0, 0.0, // opacity - strokeOpacity - strokeWidth - empty
|
|
27
|
-
0.0, 0.0, 0.0, 0.0, // strokeR - strokeG - strokeB - strokeA
|
|
28
|
-
0.0, 0.0, 0.0, 0.0, // offsets[0] - offsets[1]
|
|
29
|
-
0.0, 0.0, 0.0, 0.0 // distance_ratio/distance/pixelLen/texV
|
|
30
|
-
);
|
|
31
24
|
|
|
32
|
-
float rowCount = u_cellTypeLayout[0][0]; // 当前的数据纹理有几行
|
|
33
|
-
float columnCount = u_cellTypeLayout[0][1]; // 当看到数据纹理有几列
|
|
34
|
-
float columnWidth = 1.0/columnCount; // 列宽
|
|
35
|
-
float rowHeight = 1.0/rowCount; // 行高
|
|
36
|
-
float cellCount = calCellCount(); // opacity - strokeOpacity - strokeWidth - stroke - offsets
|
|
37
|
-
float id = a_vertexId; // 第n个顶点
|
|
38
|
-
float cellCurrentRow = floor(id * cellCount / columnCount) + 1.0; // 起始点在第几行
|
|
39
|
-
float cellCurrentColumn = mod(id * cellCount, columnCount) + 1.0; // 起始点在第几列
|
|
40
|
-
|
|
41
|
-
// cell 固定顺序 opacity -> strokeOpacity -> strokeWidth -> stroke ...
|
|
42
|
-
// 按顺序从 cell 中取值、若没有则自动往下取值
|
|
43
|
-
float textureOffset = 0.0; // 在 cell 中取值的偏移量
|
|
44
|
-
|
|
45
|
-
vec2 opacityAndOffset = calOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);
|
|
46
|
-
styleMappingMat[0][0] = opacityAndOffset.r;
|
|
47
|
-
textureOffset = opacityAndOffset.g;
|
|
48
|
-
// cal style mapping - 数据纹理映射部分的计算
|
|
49
|
-
|
|
50
|
-
|
|
51
25
|
v_color = a_Color;
|
|
52
|
-
|
|
53
|
-
|
|
26
|
+
v_distanceScale = a_Distance / a_Total_Distance;
|
|
27
|
+
v_color = vec4(a_Color.xyz, a_Color.w * u_opacity);
|
|
54
28
|
vec4 project_pos = project_position(vec4(a_Position.xy, 0, 1.0));
|
|
55
29
|
|
|
56
30
|
float h = float(a_Position.z) * u_vertexScale; // 线顶点的高度 - 兼容不存在第三个数值的情况
|
package/lib/mask/index.js
CHANGED
|
@@ -1,83 +1,57 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
-
|
|
14
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
12
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
19
|
-
|
|
20
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
21
|
-
|
|
22
14
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
23
|
-
|
|
24
15
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
25
|
-
|
|
26
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
|
-
|
|
28
17
|
var _BaseLayer2 = _interopRequireDefault(require("../core/BaseLayer"));
|
|
29
|
-
|
|
30
18
|
var _models = _interopRequireDefault(require("./models"));
|
|
31
|
-
|
|
32
19
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
33
|
-
|
|
34
20
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
|
-
|
|
36
21
|
var MaskLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
37
22
|
(0, _inherits2.default)(MaskLayer, _BaseLayer);
|
|
38
|
-
|
|
39
23
|
var _super = _createSuper(MaskLayer);
|
|
40
|
-
|
|
41
24
|
function MaskLayer() {
|
|
42
25
|
var _this;
|
|
43
|
-
|
|
44
26
|
(0, _classCallCheck2.default)(this, MaskLayer);
|
|
45
|
-
|
|
46
27
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
47
28
|
args[_key] = arguments[_key];
|
|
48
29
|
}
|
|
49
|
-
|
|
50
30
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
51
31
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'MaskLayer');
|
|
52
32
|
return _this;
|
|
53
33
|
}
|
|
54
|
-
|
|
55
34
|
(0, _createClass2.default)(MaskLayer, [{
|
|
56
35
|
key: "buildModels",
|
|
57
36
|
value: function () {
|
|
58
37
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
59
38
|
var shape;
|
|
60
39
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
61
|
-
while (1) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
case "end":
|
|
71
|
-
return _context.stop();
|
|
72
|
-
}
|
|
40
|
+
while (1) switch (_context.prev = _context.next) {
|
|
41
|
+
case 0:
|
|
42
|
+
shape = this.getModelType();
|
|
43
|
+
this.layerModel = new _models.default[shape](this);
|
|
44
|
+
_context.next = 4;
|
|
45
|
+
return this.initLayerModels();
|
|
46
|
+
case 4:
|
|
47
|
+
case "end":
|
|
48
|
+
return _context.stop();
|
|
73
49
|
}
|
|
74
50
|
}, _callee, this);
|
|
75
51
|
}));
|
|
76
|
-
|
|
77
52
|
function buildModels() {
|
|
78
53
|
return _buildModels.apply(this, arguments);
|
|
79
54
|
}
|
|
80
|
-
|
|
81
55
|
return buildModels;
|
|
82
56
|
}()
|
|
83
57
|
}, {
|
|
@@ -88,5 +62,4 @@ var MaskLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
88
62
|
}]);
|
|
89
63
|
return MaskLayer;
|
|
90
64
|
}(_BaseLayer2.default);
|
|
91
|
-
|
|
92
65
|
exports.default = MaskLayer;
|
package/lib/mask/models/fill.js
CHANGED
|
@@ -1,63 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
-
|
|
14
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
12
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
-
|
|
20
13
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
-
|
|
22
14
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
-
|
|
24
15
|
var _l7Utils = require("@antv/l7-utils");
|
|
25
|
-
|
|
26
16
|
var _lodash = require("lodash");
|
|
27
|
-
|
|
28
17
|
var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
|
|
29
|
-
|
|
30
18
|
var _triangulation = require("../../core/triangulation");
|
|
31
|
-
|
|
32
19
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
33
|
-
|
|
34
20
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
|
-
|
|
36
21
|
/* babel-plugin-inline-import '../../shader/minify_frag.glsl' */
|
|
37
22
|
var mask_frag = "uniform float u_opacity : 1.0;\nuniform vec4 u_color;\n\nvoid main() {\n gl_FragColor = u_color;\n gl_FragColor.a *= u_opacity;\n}\n";
|
|
38
|
-
|
|
39
23
|
/* babel-plugin-inline-import '../shaders/mask_vert.glsl' */
|
|
40
24
|
var mask_vert = "attribute vec3 a_Position;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\n\n#pragma include \"projection\"\n\nvoid main() {\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xyz, 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));\n }\n}\n\n";
|
|
41
|
-
|
|
42
25
|
var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
43
26
|
(0, _inherits2.default)(MaskModel, _BaseModel);
|
|
44
|
-
|
|
45
27
|
var _super = _createSuper(MaskModel);
|
|
46
|
-
|
|
47
28
|
function MaskModel() {
|
|
48
29
|
(0, _classCallCheck2.default)(this, MaskModel);
|
|
49
30
|
return _super.apply(this, arguments);
|
|
50
31
|
}
|
|
51
|
-
|
|
52
32
|
(0, _createClass2.default)(MaskModel, [{
|
|
53
33
|
key: "getUninforms",
|
|
54
34
|
value: function getUninforms() {
|
|
55
35
|
var _ref = this.layer.getLayerConfig(),
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
36
|
+
_ref$opacity = _ref.opacity,
|
|
37
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
38
|
+
_ref$color = _ref.color,
|
|
39
|
+
color = _ref$color === void 0 ? '#000' : _ref$color;
|
|
61
40
|
return {
|
|
62
41
|
u_opacity: (0, _lodash.isNumber)(opacity) ? opacity : 0.0,
|
|
63
42
|
u_color: (0, _l7Utils.rgb2arr)(color)
|
|
@@ -68,23 +47,18 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
68
47
|
value: function () {
|
|
69
48
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
70
49
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
71
|
-
while (1) {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
case "end":
|
|
78
|
-
return _context.stop();
|
|
79
|
-
}
|
|
50
|
+
while (1) switch (_context.prev = _context.next) {
|
|
51
|
+
case 0:
|
|
52
|
+
return _context.abrupt("return", this.buildModels());
|
|
53
|
+
case 1:
|
|
54
|
+
case "end":
|
|
55
|
+
return _context.stop();
|
|
80
56
|
}
|
|
81
57
|
}, _callee, this);
|
|
82
58
|
}));
|
|
83
|
-
|
|
84
59
|
function initModels() {
|
|
85
60
|
return _initModels.apply(this, arguments);
|
|
86
61
|
}
|
|
87
|
-
|
|
88
62
|
return initModels;
|
|
89
63
|
}()
|
|
90
64
|
}, {
|
|
@@ -93,44 +67,37 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
93
67
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
94
68
|
var model;
|
|
95
69
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
96
|
-
while (1) {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
case 4:
|
|
116
|
-
case "end":
|
|
117
|
-
return _context2.stop();
|
|
118
|
-
}
|
|
70
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
71
|
+
case 0:
|
|
72
|
+
_context2.next = 2;
|
|
73
|
+
return this.layer.buildLayerModel({
|
|
74
|
+
moduleName: 'mask',
|
|
75
|
+
vertexShader: mask_vert,
|
|
76
|
+
fragmentShader: mask_frag,
|
|
77
|
+
triangulation: _triangulation.polygonTriangulation,
|
|
78
|
+
depth: {
|
|
79
|
+
enable: false
|
|
80
|
+
},
|
|
81
|
+
pick: false
|
|
82
|
+
});
|
|
83
|
+
case 2:
|
|
84
|
+
model = _context2.sent;
|
|
85
|
+
return _context2.abrupt("return", [model]);
|
|
86
|
+
case 4:
|
|
87
|
+
case "end":
|
|
88
|
+
return _context2.stop();
|
|
119
89
|
}
|
|
120
90
|
}, _callee2, this);
|
|
121
91
|
}));
|
|
122
|
-
|
|
123
92
|
function buildModels() {
|
|
124
93
|
return _buildModels.apply(this, arguments);
|
|
125
94
|
}
|
|
126
|
-
|
|
127
95
|
return buildModels;
|
|
128
96
|
}()
|
|
129
97
|
}, {
|
|
130
98
|
key: "clearModels",
|
|
131
99
|
value: function clearModels() {
|
|
132
100
|
var refresh = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
133
|
-
|
|
134
101
|
if (refresh) {
|
|
135
102
|
this.layerService.clear();
|
|
136
103
|
}
|
|
@@ -143,5 +110,4 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
143
110
|
}]);
|
|
144
111
|
return MaskModel;
|
|
145
112
|
}(_BaseModel2.default);
|
|
146
|
-
|
|
147
113
|
exports.default = MaskModel;
|
package/lib/mask/models/index.js
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _fill = _interopRequireDefault(require("./fill"));
|
|
11
|
-
|
|
12
9
|
var MaskModels = {
|
|
13
10
|
fill: _fill.default
|
|
14
11
|
};
|