@deck.gl/aggregation-layers 9.0.40 → 9.1.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/aggregation-layer.d.ts +30 -0
- package/dist/common/aggregation-layer.d.ts.map +1 -0
- package/dist/common/aggregation-layer.js +70 -0
- package/dist/common/aggregation-layer.js.map +1 -0
- package/dist/common/aggregator/aggregator.d.ts +76 -0
- package/dist/common/aggregator/aggregator.d.ts.map +1 -0
- package/dist/common/aggregator/aggregator.js +5 -0
- package/dist/common/aggregator/aggregator.js.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/aggregate.d.ts +27 -0
- package/dist/common/aggregator/cpu-aggregator/aggregate.d.ts.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/aggregate.js +67 -0
- package/dist/common/aggregator/cpu-aggregator/aggregate.js.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/cpu-aggregator.d.ts +70 -0
- package/dist/common/aggregator/cpu-aggregator/cpu-aggregator.d.ts.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/cpu-aggregator.js +140 -0
- package/dist/common/aggregator/cpu-aggregator/cpu-aggregator.js.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/sort-bins.d.ts +15 -0
- package/dist/common/aggregator/cpu-aggregator/sort-bins.d.ts.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/sort-bins.js +44 -0
- package/dist/common/aggregator/cpu-aggregator/sort-bins.js.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/vertex-accessor.d.ts +21 -0
- package/dist/common/aggregator/cpu-aggregator/vertex-accessor.d.ts.map +1 -0
- package/dist/common/aggregator/cpu-aggregator/vertex-accessor.js +56 -0
- package/dist/common/aggregator/cpu-aggregator/vertex-accessor.js.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.d.ts +18 -0
- package/dist/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.d.ts.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.js +21 -0
- package/dist/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.js.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/bin-sorter-uniforms.d.ts +14 -0
- package/dist/common/aggregator/gpu-aggregator/bin-sorter-uniforms.d.ts.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/bin-sorter-uniforms.js +18 -0
- package/dist/common/aggregator/gpu-aggregator/bin-sorter-uniforms.js.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/utils.d.ts +6 -0
- package/dist/common/aggregator/gpu-aggregator/utils.d.ts.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/utils.js +25 -0
- package/dist/common/aggregator/gpu-aggregator/utils.js.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregation-transform.d.ts +24 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregation-transform.d.ts.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregation-transform.js +216 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregation-transform.js.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregator.d.ts +81 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregator.d.ts.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregator.js +202 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregator.js.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-bin-sorter.d.ts +38 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-bin-sorter.d.ts.map +1 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-bin-sorter.js +224 -0
- package/dist/common/aggregator/gpu-aggregator/webgl-bin-sorter.js.map +1 -0
- package/dist/common/aggregator/index.d.ts +6 -0
- package/dist/common/aggregator/index.d.ts.map +1 -0
- package/dist/common/aggregator/index.js +6 -0
- package/dist/common/aggregator/index.js.map +1 -0
- package/dist/common/types.d.ts +11 -0
- package/dist/common/types.d.ts.map +1 -0
- package/dist/common/types.js +5 -0
- package/dist/common/types.js.map +1 -0
- package/dist/common/utils/bounds-utils.d.ts +10 -0
- package/dist/common/utils/bounds-utils.d.ts.map +1 -0
- package/dist/common/utils/bounds-utils.js +21 -0
- package/dist/common/utils/bounds-utils.js.map +1 -0
- package/dist/common/utils/color-utils.d.ts +10 -0
- package/dist/common/utils/color-utils.d.ts.map +1 -0
- package/dist/common/utils/color-utils.js +66 -0
- package/dist/common/utils/color-utils.js.map +1 -0
- package/dist/common/utils/prop-utils.d.ts.map +1 -0
- package/dist/common/utils/prop-utils.js +13 -0
- package/dist/common/utils/prop-utils.js.map +1 -0
- package/dist/common/utils/scale-utils.d.ts +46 -0
- package/dist/common/utils/scale-utils.d.ts.map +1 -0
- package/dist/common/utils/scale-utils.js +181 -0
- package/dist/common/utils/scale-utils.js.map +1 -0
- package/dist/contour-layer/bin-options-uniforms.d.ts +13 -0
- package/dist/contour-layer/bin-options-uniforms.d.ts.map +1 -0
- package/dist/contour-layer/bin-options-uniforms.js +18 -0
- package/dist/contour-layer/bin-options-uniforms.js.map +1 -0
- package/dist/contour-layer/contour-layer.d.ts +42 -50
- package/dist/contour-layer/contour-layer.d.ts.map +1 -1
- package/dist/contour-layer/contour-layer.js +233 -192
- package/dist/contour-layer/contour-layer.js.map +1 -0
- package/dist/contour-layer/contour-utils.d.ts +36 -15
- package/dist/contour-layer/contour-utils.d.ts.map +1 -1
- package/dist/contour-layer/contour-utils.js +25 -29
- package/dist/contour-layer/contour-utils.js.map +1 -0
- package/dist/contour-layer/marching-squares-codes.d.ts.map +1 -1
- package/dist/contour-layer/marching-squares-codes.js +4 -0
- package/dist/contour-layer/marching-squares-codes.js.map +1 -0
- package/dist/contour-layer/marching-squares.d.ts +22 -6
- package/dist/contour-layer/marching-squares.d.ts.map +1 -1
- package/dist/contour-layer/marching-squares.js +72 -68
- package/dist/contour-layer/marching-squares.js.map +1 -0
- package/dist/contour-layer/value-reader.d.ts +10 -0
- package/dist/contour-layer/value-reader.d.ts.map +1 -0
- package/dist/contour-layer/value-reader.js +47 -0
- package/dist/contour-layer/value-reader.js.map +1 -0
- package/dist/dist.dev.js +4844 -4083
- package/dist/grid-layer/bin-options-uniforms.d.ts +13 -0
- package/dist/grid-layer/bin-options-uniforms.d.ts.map +1 -0
- package/dist/grid-layer/bin-options-uniforms.js +18 -0
- package/dist/grid-layer/bin-options-uniforms.js.map +1 -0
- package/dist/grid-layer/grid-cell-layer-vertex.glsl.d.ts +3 -0
- package/dist/grid-layer/grid-cell-layer-vertex.glsl.d.ts.map +1 -0
- package/dist/grid-layer/grid-cell-layer-vertex.glsl.js +52 -0
- package/dist/grid-layer/grid-cell-layer-vertex.glsl.js.map +1 -0
- package/dist/grid-layer/grid-cell-layer.d.ts +32 -0
- package/dist/grid-layer/grid-cell-layer.d.ts.map +1 -0
- package/dist/grid-layer/grid-cell-layer.js +94 -0
- package/dist/grid-layer/grid-cell-layer.js.map +1 -0
- package/dist/grid-layer/grid-layer-uniforms.d.ts +21 -0
- package/dist/grid-layer/grid-layer-uniforms.d.ts.map +1 -0
- package/dist/grid-layer/grid-layer-uniforms.js +24 -0
- package/dist/grid-layer/grid-layer-uniforms.js.map +1 -0
- package/dist/grid-layer/grid-layer.d.ts +176 -14
- package/dist/grid-layer/grid-layer.d.ts.map +1 -1
- package/dist/grid-layer/grid-layer.js +343 -46
- package/dist/grid-layer/grid-layer.js.map +1 -0
- package/dist/{aggregation-layer.d.ts → heatmap-layer/aggregation-layer.d.ts} +1 -0
- package/dist/heatmap-layer/aggregation-layer.d.ts.map +1 -0
- package/dist/{aggregation-layer.js → heatmap-layer/aggregation-layer.js} +7 -21
- package/dist/heatmap-layer/aggregation-layer.js.map +1 -0
- package/dist/heatmap-layer/heatmap-layer-uniforms.d.ts +30 -0
- package/dist/heatmap-layer/heatmap-layer-uniforms.d.ts.map +1 -0
- package/dist/heatmap-layer/heatmap-layer-uniforms.js +33 -0
- package/dist/heatmap-layer/heatmap-layer-uniforms.js.map +1 -0
- package/dist/heatmap-layer/heatmap-layer-utils.d.ts +1 -1
- package/dist/heatmap-layer/heatmap-layer-utils.d.ts.map +1 -1
- package/dist/heatmap-layer/heatmap-layer-utils.js +4 -0
- package/dist/heatmap-layer/heatmap-layer-utils.js.map +1 -0
- package/dist/heatmap-layer/heatmap-layer.d.ts +6 -4
- package/dist/heatmap-layer/heatmap-layer.d.ts.map +1 -1
- package/dist/heatmap-layer/heatmap-layer.js +44 -33
- package/dist/heatmap-layer/heatmap-layer.js.map +1 -0
- package/dist/heatmap-layer/max-fs.glsl.d.ts.map +1 -1
- package/dist/heatmap-layer/max-fs.glsl.js +4 -0
- package/dist/heatmap-layer/max-fs.glsl.js.map +1 -0
- package/dist/heatmap-layer/max-vs.glsl.d.ts +1 -1
- package/dist/heatmap-layer/max-vs.glsl.d.ts.map +1 -1
- package/dist/heatmap-layer/max-vs.glsl.js +7 -4
- package/dist/heatmap-layer/max-vs.glsl.js.map +1 -0
- package/dist/heatmap-layer/triangle-layer-fragment.glsl.d.ts +1 -1
- package/dist/heatmap-layer/triangle-layer-fragment.glsl.d.ts.map +1 -1
- package/dist/heatmap-layer/triangle-layer-fragment.glsl.js +6 -23
- package/dist/heatmap-layer/triangle-layer-fragment.glsl.js.map +1 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.d.ts +22 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.d.ts.map +1 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.js +23 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.js.map +1 -0
- package/dist/heatmap-layer/triangle-layer-vertex.glsl.d.ts +1 -1
- package/dist/heatmap-layer/triangle-layer-vertex.glsl.d.ts.map +1 -1
- package/dist/heatmap-layer/triangle-layer-vertex.glsl.js +11 -30
- package/dist/heatmap-layer/triangle-layer-vertex.glsl.js.map +1 -0
- package/dist/heatmap-layer/triangle-layer.d.ts +4 -10
- package/dist/heatmap-layer/triangle-layer.d.ts.map +1 -1
- package/dist/heatmap-layer/triangle-layer.js +18 -30
- package/dist/heatmap-layer/triangle-layer.js.map +1 -0
- package/dist/heatmap-layer/weights-fs.glsl.d.ts.map +1 -1
- package/dist/heatmap-layer/weights-fs.glsl.js +4 -0
- package/dist/heatmap-layer/weights-fs.glsl.js.map +1 -0
- package/dist/heatmap-layer/weights-vs.glsl.d.ts +1 -1
- package/dist/heatmap-layer/weights-vs.glsl.d.ts.map +1 -1
- package/dist/heatmap-layer/weights-vs.glsl.js +7 -7
- package/dist/heatmap-layer/weights-vs.glsl.js.map +1 -0
- package/dist/hexagon-layer/bin-options-uniforms.d.ts +14 -0
- package/dist/hexagon-layer/bin-options-uniforms.d.ts.map +1 -0
- package/dist/hexagon-layer/bin-options-uniforms.js +18 -0
- package/dist/hexagon-layer/bin-options-uniforms.js.map +1 -0
- package/dist/hexagon-layer/hexagon-cell-layer-vertex.glsl.d.ts +3 -0
- package/dist/hexagon-layer/hexagon-cell-layer-vertex.glsl.d.ts.map +1 -0
- package/dist/hexagon-layer/hexagon-cell-layer-vertex.glsl.js +56 -0
- package/dist/hexagon-layer/hexagon-cell-layer-vertex.glsl.js.map +1 -0
- package/dist/hexagon-layer/hexagon-cell-layer.d.ts +29 -0
- package/dist/hexagon-layer/hexagon-cell-layer.d.ts.map +1 -0
- package/dist/hexagon-layer/hexagon-cell-layer.js +95 -0
- package/dist/hexagon-layer/hexagon-cell-layer.js.map +1 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.d.ts +19 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.d.ts.map +1 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.js +22 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.js.map +1 -0
- package/dist/hexagon-layer/hexagon-layer.d.ts +84 -54
- package/dist/hexagon-layer/hexagon-layer.d.ts.map +1 -1
- package/dist/hexagon-layer/hexagon-layer.js +308 -123
- package/dist/hexagon-layer/hexagon-layer.js.map +1 -0
- package/dist/hexagon-layer/hexbin.d.ts +17 -0
- package/dist/hexagon-layer/hexbin.d.ts.map +1 -0
- package/dist/hexagon-layer/hexbin.js +70 -0
- package/dist/hexagon-layer/hexbin.js.map +1 -0
- package/dist/index.cjs +3026 -2947
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +7 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -27
- package/dist/index.js.map +1 -0
- package/dist/screen-grid-layer/bin-options-uniforms.d.ts +11 -0
- package/dist/screen-grid-layer/bin-options-uniforms.d.ts.map +1 -0
- package/dist/screen-grid-layer/bin-options-uniforms.js +16 -0
- package/dist/screen-grid-layer/bin-options-uniforms.js.map +1 -0
- package/dist/screen-grid-layer/screen-grid-cell-layer.d.ts +11 -16
- package/dist/screen-grid-layer/screen-grid-cell-layer.d.ts.map +1 -1
- package/dist/screen-grid-layer/screen-grid-cell-layer.js +53 -134
- package/dist/screen-grid-layer/screen-grid-cell-layer.js.map +1 -0
- package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts +1 -1
- package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts.map +1 -1
- package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.js +5 -24
- package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +1 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.d.ts +17 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.d.ts.map +1 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.js +20 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.js.map +1 -0
- package/dist/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts +1 -1
- package/dist/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts.map +1 -1
- package/dist/screen-grid-layer/screen-grid-layer-vertex.glsl.js +22 -62
- package/dist/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +1 -0
- package/dist/screen-grid-layer/screen-grid-layer.d.ts +33 -40
- package/dist/screen-grid-layer/screen-grid-layer.d.ts.map +1 -1
- package/dist/screen-grid-layer/screen-grid-layer.js +158 -174
- package/dist/screen-grid-layer/screen-grid-layer.js.map +1 -0
- package/dist.min.js +401 -382
- package/package.json +10 -9
- package/src/common/aggregation-layer.ts +107 -0
- package/src/common/aggregator/aggregator.ts +88 -0
- package/src/common/aggregator/cpu-aggregator/aggregate.ts +101 -0
- package/src/common/aggregator/cpu-aggregator/cpu-aggregator.ts +203 -0
- package/src/common/aggregator/cpu-aggregator/sort-bins.ts +63 -0
- package/src/common/aggregator/cpu-aggregator/vertex-accessor.ts +86 -0
- package/src/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.ts +33 -0
- package/src/common/aggregator/gpu-aggregator/bin-sorter-uniforms.ts +27 -0
- package/src/common/aggregator/gpu-aggregator/utils.ts +27 -0
- package/src/common/aggregator/gpu-aggregator/webgl-aggregation-transform.ts +247 -0
- package/src/common/aggregator/gpu-aggregator/webgl-aggregator.ts +274 -0
- package/src/common/aggregator/gpu-aggregator/webgl-bin-sorter.ts +258 -0
- package/src/common/aggregator/index.ts +10 -0
- package/src/{types.ts → common/types.ts} +10 -4
- package/src/common/utils/bounds-utils.ts +34 -0
- package/src/common/utils/color-utils.ts +86 -0
- package/src/common/utils/prop-utils.ts +13 -0
- package/src/common/utils/scale-utils.ts +236 -0
- package/src/contour-layer/bin-options-uniforms.ts +26 -0
- package/src/contour-layer/contour-layer.ts +300 -265
- package/src/contour-layer/contour-utils.ts +68 -39
- package/src/contour-layer/marching-squares-codes.ts +4 -0
- package/src/contour-layer/marching-squares.ts +93 -82
- package/src/contour-layer/value-reader.ts +65 -0
- package/src/grid-layer/bin-options-uniforms.ts +26 -0
- package/src/grid-layer/grid-cell-layer-vertex.glsl.ts +68 -0
- package/src/grid-layer/grid-cell-layer.ts +141 -0
- package/src/grid-layer/grid-layer-uniforms.ts +37 -0
- package/src/grid-layer/grid-layer.ts +614 -73
- package/src/{aggregation-layer.ts → heatmap-layer/aggregation-layer.ts} +6 -21
- package/src/heatmap-layer/heatmap-layer-uniforms.ts +50 -0
- package/src/heatmap-layer/heatmap-layer-utils.ts +9 -1
- package/src/heatmap-layer/heatmap-layer.ts +59 -36
- package/src/heatmap-layer/max-fs.glsl.ts +4 -0
- package/src/heatmap-layer/max-vs.glsl.ts +7 -4
- package/src/heatmap-layer/triangle-layer-fragment.glsl.ts +5 -23
- package/src/heatmap-layer/triangle-layer-uniforms.ts +37 -0
- package/src/heatmap-layer/triangle-layer-vertex.glsl.ts +10 -30
- package/src/heatmap-layer/triangle-layer.ts +26 -31
- package/src/heatmap-layer/weights-fs.glsl.ts +4 -0
- package/src/heatmap-layer/weights-vs.glsl.ts +7 -7
- package/src/hexagon-layer/bin-options-uniforms.ts +27 -0
- package/src/hexagon-layer/hexagon-cell-layer-vertex.glsl.ts +73 -0
- package/src/hexagon-layer/hexagon-cell-layer.ts +141 -0
- package/src/hexagon-layer/hexagon-layer-uniforms.ts +34 -0
- package/src/hexagon-layer/hexagon-layer.ts +454 -186
- package/src/hexagon-layer/hexbin.ts +79 -0
- package/src/index.ts +21 -34
- package/src/screen-grid-layer/bin-options-uniforms.ts +23 -0
- package/src/screen-grid-layer/screen-grid-cell-layer.ts +71 -156
- package/src/screen-grid-layer/screen-grid-layer-fragment.glsl.ts +4 -24
- package/src/screen-grid-layer/screen-grid-layer-uniforms.ts +31 -0
- package/src/screen-grid-layer/screen-grid-layer-vertex.glsl.ts +21 -64
- package/src/screen-grid-layer/screen-grid-layer.ts +194 -222
- package/dist/aggregation-layer.d.ts.map +0 -1
- package/dist/cpu-grid-layer/cpu-grid-layer.d.ts +0 -158
- package/dist/cpu-grid-layer/cpu-grid-layer.d.ts.map +0 -1
- package/dist/cpu-grid-layer/cpu-grid-layer.js +0 -130
- package/dist/cpu-grid-layer/grid-aggregator.d.ts +0 -35
- package/dist/cpu-grid-layer/grid-aggregator.d.ts.map +0 -1
- package/dist/cpu-grid-layer/grid-aggregator.js +0 -141
- package/dist/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts +0 -3
- package/dist/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts.map +0 -1
- package/dist/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -30
- package/dist/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts +0 -3
- package/dist/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts.map +0 -1
- package/dist/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +0 -112
- package/dist/gpu-grid-layer/gpu-grid-cell-layer.d.ts +0 -48
- package/dist/gpu-grid-layer/gpu-grid-cell-layer.d.ts.map +0 -1
- package/dist/gpu-grid-layer/gpu-grid-cell-layer.js +0 -146
- package/dist/gpu-grid-layer/gpu-grid-layer.d.ts +0 -99
- package/dist/gpu-grid-layer/gpu-grid-layer.d.ts.map +0 -1
- package/dist/gpu-grid-layer/gpu-grid-layer.js +0 -289
- package/dist/grid-aggregation-layer.d.ts +0 -67
- package/dist/grid-aggregation-layer.d.ts.map +0 -1
- package/dist/grid-aggregation-layer.js +0 -173
- package/dist/hexagon-layer/hexagon-aggregator.d.ts +0 -27
- package/dist/hexagon-layer/hexagon-aggregator.d.ts.map +0 -1
- package/dist/hexagon-layer/hexagon-aggregator.js +0 -112
- package/dist/types.d.ts +0 -12
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -1
- package/dist/utils/aggregation-operation-utils.d.ts +0 -19
- package/dist/utils/aggregation-operation-utils.d.ts.map +0 -1
- package/dist/utils/aggregation-operation-utils.js +0 -94
- package/dist/utils/bin-sorter.d.ts +0 -52
- package/dist/utils/bin-sorter.d.ts.map +0 -1
- package/dist/utils/bin-sorter.js +0 -167
- package/dist/utils/color-utils.d.ts +0 -3
- package/dist/utils/color-utils.d.ts.map +0 -1
- package/dist/utils/color-utils.js +0 -53
- package/dist/utils/cpu-aggregator.d.ts +0 -169
- package/dist/utils/cpu-aggregator.d.ts.map +0 -1
- package/dist/utils/cpu-aggregator.js +0 -421
- package/dist/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts +0 -3
- package/dist/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -36
- package/dist/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts +0 -3
- package/dist/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -42
- package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts +0 -3
- package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -30
- package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts +0 -3
- package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +0 -61
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts +0 -38
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -41
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts +0 -1
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -1
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts +0 -76
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -555
- package/dist/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts +0 -3
- package/dist/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts.map +0 -1
- package/dist/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -32
- package/dist/utils/grid-aggregation-utils.d.ts +0 -30
- package/dist/utils/grid-aggregation-utils.d.ts.map +0 -1
- package/dist/utils/grid-aggregation-utils.js +0 -114
- package/dist/utils/prop-utils.d.ts.map +0 -1
- package/dist/utils/prop-utils.js +0 -28
- package/dist/utils/resource-utils.d.ts +0 -14
- package/dist/utils/resource-utils.d.ts.map +0 -1
- package/dist/utils/resource-utils.js +0 -38
- package/dist/utils/scale-utils.d.ts +0 -15
- package/dist/utils/scale-utils.d.ts.map +0 -1
- package/dist/utils/scale-utils.js +0 -184
- package/src/cpu-grid-layer/cpu-grid-layer.ts +0 -329
- package/src/cpu-grid-layer/grid-aggregator.ts +0 -184
- package/src/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.ts +0 -35
- package/src/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.ts +0 -143
- package/src/gpu-grid-layer/gpu-grid-cell-layer.ts +0 -201
- package/src/gpu-grid-layer/gpu-grid-layer.ts +0 -455
- package/src/grid-aggregation-layer.ts +0 -243
- package/src/hexagon-layer/hexagon-aggregator.ts +0 -127
- package/src/utils/aggregation-operation-utils.ts +0 -118
- package/src/utils/bin-sorter.ts +0 -218
- package/src/utils/color-utils.ts +0 -57
- package/src/utils/cpu-aggregator.ts +0 -503
- package/src/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.ts +0 -40
- package/src/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.ts +0 -54
- package/src/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.ts +0 -35
- package/src/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.ts +0 -79
- package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.ts +0 -46
- package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.ts +0 -0
- package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
- package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator.ts +0 -690
- package/src/utils/gpu-grid-aggregation/transform-mean-vs.glsl.ts +0 -38
- package/src/utils/grid-aggregation-utils.ts +0 -147
- package/src/utils/prop-utils.ts +0 -29
- package/src/utils/resource-utils.ts +0 -53
- package/src/utils/scale-utils.js +0 -219
- /package/dist/{utils → common/utils}/prop-utils.d.ts +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type BinOptions = {
|
|
2
|
+
cellOriginCommon: [number, number];
|
|
3
|
+
cellSizeCommon: [number, number];
|
|
4
|
+
};
|
|
5
|
+
export declare const binOptionsUniforms: {
|
|
6
|
+
readonly name: "binOptions";
|
|
7
|
+
readonly vs: "uniform binOptionsUniforms {\n vec2 cellOriginCommon;\n vec2 cellSizeCommon;\n} binOptions;\n";
|
|
8
|
+
readonly uniformTypes: {
|
|
9
|
+
readonly cellOriginCommon: "vec2<f32>";
|
|
10
|
+
readonly cellSizeCommon: "vec2<f32>";
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=bin-options-uniforms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin-options-uniforms.d.ts","sourceRoot":"","sources":["../../src/grid-layer/bin-options-uniforms.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,UAAU,GAAG;IACvB,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;CAOc,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
const uniformBlock = /* glsl */ `\
|
|
5
|
+
uniform binOptionsUniforms {
|
|
6
|
+
vec2 cellOriginCommon;
|
|
7
|
+
vec2 cellSizeCommon;
|
|
8
|
+
} binOptions;
|
|
9
|
+
`;
|
|
10
|
+
export const binOptionsUniforms = {
|
|
11
|
+
name: 'binOptions',
|
|
12
|
+
vs: uniformBlock,
|
|
13
|
+
uniformTypes: {
|
|
14
|
+
cellOriginCommon: 'vec2<f32>',
|
|
15
|
+
cellSizeCommon: 'vec2<f32>'
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=bin-options-uniforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin-options-uniforms.js","sourceRoot":"","sources":["../../src/grid-layer/bin-options-uniforms.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAIpC,MAAM,YAAY,GAAG,UAAU,CAAC;;;;;CAK/B,CAAC;AAOF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,YAAY;IAClB,EAAE,EAAE,YAAY;IAChB,YAAY,EAAE;QACZ,gBAAgB,EAAE,WAAW;QAC7B,cAAc,EAAE,WAAW;KAC5B;CAC0C,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const _default: "#version 300 es\n\n#define SHADER_NAME grid-cell-layer-vertex-shader\n\nin vec3 positions;\nin vec3 normals;\n\nin vec2 instancePositions;\nin float instanceElevationValues;\nin float instanceColorValues;\nin vec3 instancePickingColors;\n\nuniform sampler2D colorRange;\n\n// Result\nout vec4 vColor;\n\nfloat interp(float value, vec2 domain, vec2 range) {\n float r = min(max((value - domain.x) / (domain.y - domain.x), 0.), 1.);\n return mix(range.x, range.y, r);\n}\n\nvec4 interp(float value, vec2 domain, sampler2D range) {\n float r = (value - domain.x) / (domain.y - domain.x);\n return texture(range, vec2(r, 0.5));\n}\n\nvoid main(void) {\n geometry.pickingColor = instancePickingColors;\n\n if (isnan(instanceColorValues) ||\n instanceColorValues < grid.colorDomain.z ||\n instanceColorValues > grid.colorDomain.w ||\n instanceElevationValues < grid.elevationDomain.z ||\n instanceElevationValues > grid.elevationDomain.w\n ) {\n gl_Position = vec4(0.);\n return;\n }\n \n vec2 commonPosition = (instancePositions + (positions.xy + 1.0) / 2.0 * column.coverage) * grid.sizeCommon + grid.originCommon - project.commonOrigin.xy;\n geometry.position = vec4(commonPosition, 0.0, 1.0);\n geometry.normal = project_normal(normals);\n\n // calculate z, if 3d not enabled set to 0\n float elevation = 0.0;\n if (column.extruded) {\n elevation = interp(instanceElevationValues, grid.elevationDomain.xy, grid.elevationRange);\n elevation = project_size(elevation);\n // cylindar gemoetry height are between -1.0 to 1.0, transform it to between 0, 1\n geometry.position.z = (positions.z + 1.0) / 2.0 * elevation;\n }\n\n gl_Position = project_common_position_to_clipspace(geometry.position);\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vColor = interp(instanceColorValues, grid.colorDomain.xy, colorRange);\n vColor.a *= layer.opacity;\n if (column.extruded) {\n vColor.rgb = lighting_getLightColor(vColor.rgb, project.cameraPosition, geometry.position.xyz, geometry.normal);\n }\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n";
|
|
2
|
+
export default _default;
|
|
3
|
+
//# sourceMappingURL=grid-cell-layer-vertex.glsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-cell-layer-vertex.glsl.d.ts","sourceRoot":"","sources":["../../src/grid-layer/grid-cell-layer-vertex.glsl.ts"],"names":[],"mappings":";AAIA,wBA+DE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
export default /* glsl */ `#version 300 es
|
|
5
|
+
#define SHADER_NAME grid-cell-layer-vertex-shader
|
|
6
|
+
in vec3 positions;
|
|
7
|
+
in vec3 normals;
|
|
8
|
+
in vec2 instancePositions;
|
|
9
|
+
in float instanceElevationValues;
|
|
10
|
+
in float instanceColorValues;
|
|
11
|
+
in vec3 instancePickingColors;
|
|
12
|
+
uniform sampler2D colorRange;
|
|
13
|
+
out vec4 vColor;
|
|
14
|
+
float interp(float value, vec2 domain, vec2 range) {
|
|
15
|
+
float r = min(max((value - domain.x) / (domain.y - domain.x), 0.), 1.);
|
|
16
|
+
return mix(range.x, range.y, r);
|
|
17
|
+
}
|
|
18
|
+
vec4 interp(float value, vec2 domain, sampler2D range) {
|
|
19
|
+
float r = (value - domain.x) / (domain.y - domain.x);
|
|
20
|
+
return texture(range, vec2(r, 0.5));
|
|
21
|
+
}
|
|
22
|
+
void main(void) {
|
|
23
|
+
geometry.pickingColor = instancePickingColors;
|
|
24
|
+
if (isnan(instanceColorValues) ||
|
|
25
|
+
instanceColorValues < grid.colorDomain.z ||
|
|
26
|
+
instanceColorValues > grid.colorDomain.w ||
|
|
27
|
+
instanceElevationValues < grid.elevationDomain.z ||
|
|
28
|
+
instanceElevationValues > grid.elevationDomain.w
|
|
29
|
+
) {
|
|
30
|
+
gl_Position = vec4(0.);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
vec2 commonPosition = (instancePositions + (positions.xy + 1.0) / 2.0 * column.coverage) * grid.sizeCommon + grid.originCommon - project.commonOrigin.xy;
|
|
34
|
+
geometry.position = vec4(commonPosition, 0.0, 1.0);
|
|
35
|
+
geometry.normal = project_normal(normals);
|
|
36
|
+
float elevation = 0.0;
|
|
37
|
+
if (column.extruded) {
|
|
38
|
+
elevation = interp(instanceElevationValues, grid.elevationDomain.xy, grid.elevationRange);
|
|
39
|
+
elevation = project_size(elevation);
|
|
40
|
+
geometry.position.z = (positions.z + 1.0) / 2.0 * elevation;
|
|
41
|
+
}
|
|
42
|
+
gl_Position = project_common_position_to_clipspace(geometry.position);
|
|
43
|
+
DECKGL_FILTER_GL_POSITION(gl_Position, geometry);
|
|
44
|
+
vColor = interp(instanceColorValues, grid.colorDomain.xy, colorRange);
|
|
45
|
+
vColor.a *= layer.opacity;
|
|
46
|
+
if (column.extruded) {
|
|
47
|
+
vColor.rgb = lighting_getLightColor(vColor.rgb, project.cameraPosition, geometry.position.xyz, geometry.normal);
|
|
48
|
+
}
|
|
49
|
+
DECKGL_FILTER_COLOR(vColor, geometry);
|
|
50
|
+
}
|
|
51
|
+
`;
|
|
52
|
+
//# sourceMappingURL=grid-cell-layer-vertex.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-cell-layer-vertex.glsl.js","sourceRoot":"","sources":["../../src/grid-layer/grid-cell-layer-vertex.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,eAAe,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+DvB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Texture } from '@luma.gl/core';
|
|
2
|
+
import { UpdateParameters, Color } from '@deck.gl/core';
|
|
3
|
+
import { ColumnLayer } from '@deck.gl/layers';
|
|
4
|
+
import type { ScaleType } from "../common/types.js";
|
|
5
|
+
/** Proprties added by GridCellLayer. */
|
|
6
|
+
type GridCellLayerProps = {
|
|
7
|
+
cellSizeCommon: [number, number];
|
|
8
|
+
cellOriginCommon: [number, number];
|
|
9
|
+
colorDomain: [number, number];
|
|
10
|
+
colorCutoff: [number, number] | null;
|
|
11
|
+
colorRange: Color[];
|
|
12
|
+
colorScaleType: ScaleType;
|
|
13
|
+
elevationDomain: [number, number];
|
|
14
|
+
elevationCutoff: [number, number] | null;
|
|
15
|
+
elevationRange: [number, number];
|
|
16
|
+
};
|
|
17
|
+
export declare class GridCellLayer<ExtraPropsT extends {} = {}> extends ColumnLayer<null, ExtraPropsT & Required<GridCellLayerProps>> {
|
|
18
|
+
static layerName: string;
|
|
19
|
+
state: ColumnLayer['state'] & {
|
|
20
|
+
colorTexture: Texture;
|
|
21
|
+
};
|
|
22
|
+
getShaders(): any;
|
|
23
|
+
initializeState(): void;
|
|
24
|
+
updateState(params: UpdateParameters<this>): void;
|
|
25
|
+
finalizeState(context: any): void;
|
|
26
|
+
protected _updateGeometry(): void;
|
|
27
|
+
draw({ uniforms }: {
|
|
28
|
+
uniforms: any;
|
|
29
|
+
}): void;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=grid-cell-layer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-cell-layer.d.ts","sourceRoot":"","sources":["../../src/grid-layer/grid-cell-layer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AACtC,OAAO,EAAC,gBAAgB,EAAE,KAAK,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAK5C,OAAO,KAAK,EAAC,SAAS,EAAC,2BAAwB;AAE/C,wCAAwC;AACxC,KAAK,kBAAkB,GAAG;IACxB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACrC,UAAU,EAAE,KAAK,EAAE,CAAC;IACpB,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACzC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,aAAa,CAAC,WAAW,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,WAAW,CACzE,IAAI,EACJ,WAAW,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAC3C;IACC,MAAM,CAAC,SAAS,SAAmB;IAEnC,KAAK,EAAG,WAAW,CAAC,OAAO,CAAC,GAAG;QAC7B,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IAEF,UAAU;IAMV,eAAe;IA6Bf,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAoB1C,aAAa,CAAC,OAAO,KAAA;IAMrB,SAAS,CAAC,eAAe;IAKzB,IAAI,CAAC,EAAC,QAAQ,EAAC;;KAAA;CAsChB"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
import { ColumnLayer } from '@deck.gl/layers';
|
|
5
|
+
import { CubeGeometry } from '@luma.gl/engine';
|
|
6
|
+
import { createColorRangeTexture, updateColorRangeTexture } from "../common/utils/color-utils.js";
|
|
7
|
+
import vs from "./grid-cell-layer-vertex.glsl.js";
|
|
8
|
+
import { gridUniforms } from "./grid-layer-uniforms.js";
|
|
9
|
+
export class GridCellLayer extends ColumnLayer {
|
|
10
|
+
getShaders() {
|
|
11
|
+
const shaders = super.getShaders();
|
|
12
|
+
shaders.modules.push(gridUniforms);
|
|
13
|
+
return { ...shaders, vs };
|
|
14
|
+
}
|
|
15
|
+
initializeState() {
|
|
16
|
+
super.initializeState();
|
|
17
|
+
const attributeManager = this.getAttributeManager();
|
|
18
|
+
attributeManager.remove([
|
|
19
|
+
'instanceElevations',
|
|
20
|
+
'instanceFillColors',
|
|
21
|
+
'instanceLineColors',
|
|
22
|
+
'instanceStrokeWidths'
|
|
23
|
+
]);
|
|
24
|
+
attributeManager.addInstanced({
|
|
25
|
+
instancePositions: {
|
|
26
|
+
size: 2,
|
|
27
|
+
type: 'float32',
|
|
28
|
+
accessor: 'getBin'
|
|
29
|
+
},
|
|
30
|
+
instanceColorValues: {
|
|
31
|
+
size: 1,
|
|
32
|
+
type: 'float32',
|
|
33
|
+
accessor: 'getColorValue'
|
|
34
|
+
},
|
|
35
|
+
instanceElevationValues: {
|
|
36
|
+
size: 1,
|
|
37
|
+
type: 'float32',
|
|
38
|
+
accessor: 'getElevationValue'
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
updateState(params) {
|
|
43
|
+
super.updateState(params);
|
|
44
|
+
const { props, oldProps } = params;
|
|
45
|
+
const model = this.state.fillModel;
|
|
46
|
+
if (oldProps.colorRange !== props.colorRange) {
|
|
47
|
+
this.state.colorTexture?.destroy();
|
|
48
|
+
this.state.colorTexture = createColorRangeTexture(this.context.device, props.colorRange, props.colorScaleType);
|
|
49
|
+
const gridProps = { colorRange: this.state.colorTexture };
|
|
50
|
+
model.shaderInputs.setProps({ grid: gridProps });
|
|
51
|
+
}
|
|
52
|
+
else if (oldProps.colorScaleType !== props.colorScaleType) {
|
|
53
|
+
updateColorRangeTexture(this.state.colorTexture, props.colorScaleType);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
finalizeState(context) {
|
|
57
|
+
super.finalizeState(context);
|
|
58
|
+
this.state.colorTexture?.destroy();
|
|
59
|
+
}
|
|
60
|
+
_updateGeometry() {
|
|
61
|
+
const geometry = new CubeGeometry();
|
|
62
|
+
this.state.fillModel.setGeometry(geometry);
|
|
63
|
+
}
|
|
64
|
+
draw({ uniforms }) {
|
|
65
|
+
const { cellOriginCommon, cellSizeCommon, elevationRange, elevationScale, extruded, coverage, colorDomain, elevationDomain } = this.props;
|
|
66
|
+
const colorCutoff = this.props.colorCutoff || [-Infinity, Infinity];
|
|
67
|
+
const elevationCutoff = this.props.elevationCutoff || [-Infinity, Infinity];
|
|
68
|
+
const fillModel = this.state.fillModel;
|
|
69
|
+
const gridProps = {
|
|
70
|
+
colorDomain: [
|
|
71
|
+
Math.max(colorDomain[0], colorCutoff[0]), // instanceColorValue that maps to colorRange[0]
|
|
72
|
+
Math.min(colorDomain[1], colorCutoff[1]), // instanceColorValue that maps to colorRange[colorRange.length - 1]
|
|
73
|
+
Math.max(colorDomain[0] - 1, colorCutoff[0]), // hide cell if instanceColorValue is less than this
|
|
74
|
+
Math.min(colorDomain[1] + 1, colorCutoff[1]) // hide cell if instanceColorValue is greater than this
|
|
75
|
+
],
|
|
76
|
+
elevationDomain: [
|
|
77
|
+
Math.max(elevationDomain[0], elevationCutoff[0]), // instanceElevationValue that maps to elevationRange[0]
|
|
78
|
+
Math.min(elevationDomain[1], elevationCutoff[1]), // instanceElevationValue that maps to elevationRange[elevationRange.length - 1]
|
|
79
|
+
Math.max(elevationDomain[0] - 1, elevationCutoff[0]), // hide cell if instanceElevationValue is less than this
|
|
80
|
+
Math.min(elevationDomain[1] + 1, elevationCutoff[1]) // hide cell if instanceElevationValue is greater than this
|
|
81
|
+
],
|
|
82
|
+
elevationRange: [elevationRange[0] * elevationScale, elevationRange[1] * elevationScale],
|
|
83
|
+
originCommon: cellOriginCommon,
|
|
84
|
+
sizeCommon: cellSizeCommon
|
|
85
|
+
};
|
|
86
|
+
fillModel.shaderInputs.setProps({
|
|
87
|
+
column: { extruded, coverage },
|
|
88
|
+
grid: gridProps
|
|
89
|
+
});
|
|
90
|
+
fillModel.draw(this.context.renderPass);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
GridCellLayer.layerName = 'GridCellLayer';
|
|
94
|
+
//# sourceMappingURL=grid-cell-layer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-cell-layer.js","sourceRoot":"","sources":["../../src/grid-layer/grid-cell-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Texture } from '@luma.gl/core';
|
|
2
|
+
export type GridProps = {
|
|
3
|
+
colorDomain: [number, number, number, number];
|
|
4
|
+
colorRange: Texture;
|
|
5
|
+
elevationDomain: [number, number, number, number];
|
|
6
|
+
elevationRange: [number, number];
|
|
7
|
+
originCommon: [number, number];
|
|
8
|
+
sizeCommon: [number, number];
|
|
9
|
+
};
|
|
10
|
+
export declare const gridUniforms: {
|
|
11
|
+
readonly name: "grid";
|
|
12
|
+
readonly vs: "uniform gridUniforms {\n vec4 colorDomain;\n vec4 elevationDomain;\n vec2 elevationRange;\n vec2 originCommon;\n vec2 sizeCommon;\n} grid;\n";
|
|
13
|
+
readonly uniformTypes: {
|
|
14
|
+
readonly colorDomain: "vec4<f32>";
|
|
15
|
+
readonly elevationDomain: "vec4<f32>";
|
|
16
|
+
readonly elevationRange: "vec2<f32>";
|
|
17
|
+
readonly originCommon: "vec2<f32>";
|
|
18
|
+
readonly sizeCommon: "vec2<f32>";
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=grid-layer-uniforms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-layer-uniforms.d.ts","sourceRoot":"","sources":["../../src/grid-layer/grid-layer-uniforms.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAatC,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;CAUmB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
const uniformBlock = /* glsl */ `\
|
|
5
|
+
uniform gridUniforms {
|
|
6
|
+
vec4 colorDomain;
|
|
7
|
+
vec4 elevationDomain;
|
|
8
|
+
vec2 elevationRange;
|
|
9
|
+
vec2 originCommon;
|
|
10
|
+
vec2 sizeCommon;
|
|
11
|
+
} grid;
|
|
12
|
+
`;
|
|
13
|
+
export const gridUniforms = {
|
|
14
|
+
name: 'grid',
|
|
15
|
+
vs: uniformBlock,
|
|
16
|
+
uniformTypes: {
|
|
17
|
+
colorDomain: 'vec4<f32>',
|
|
18
|
+
elevationDomain: 'vec4<f32>',
|
|
19
|
+
elevationRange: 'vec2<f32>',
|
|
20
|
+
originCommon: 'vec2<f32>',
|
|
21
|
+
sizeCommon: 'vec2<f32>'
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=grid-layer-uniforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-layer-uniforms.js","sourceRoot":"","sources":["../../src/grid-layer/grid-layer-uniforms.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAKpC,MAAM,YAAY,GAAG,UAAU,CAAC;;;;;;;;CAQ/B,CAAC;AAWF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,YAAY;IAChB,YAAY,EAAE;QACZ,WAAW,EAAE,WAAW;QACxB,eAAe,EAAE,WAAW;QAC5B,cAAc,EAAE,WAAW;QAC3B,YAAY,EAAE,WAAW;QACzB,UAAU,EAAE,WAAW;KACxB;CACyC,CAAC"}
|
|
@@ -1,32 +1,194 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import { Accessor, Color, GetPickingInfoParams, CompositeLayerProps, Layer, Material, LayersList, PickingInfo, Position, Viewport, UpdateParameters, DefaultProps } from '@deck.gl/core';
|
|
2
|
+
import { WebGLAggregator, CPUAggregator, AggregationOperation } from "../common/aggregator/index.js";
|
|
3
|
+
import AggregationLayer from "../common/aggregation-layer.js";
|
|
4
|
+
import { AggregateAccessor } from "../common/types.js";
|
|
5
|
+
import { AttributeWithScale } from "../common/utils/scale-utils.js";
|
|
6
|
+
import { BinOptions } from "./bin-options-uniforms.js";
|
|
4
7
|
/** All properties supported by GridLayer. */
|
|
5
8
|
export type GridLayerProps<DataT = unknown> = _GridLayerProps<DataT> & CompositeLayerProps;
|
|
6
9
|
/** Properties added by GridLayer. */
|
|
7
|
-
type _GridLayerProps<DataT> =
|
|
10
|
+
type _GridLayerProps<DataT> = {
|
|
8
11
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
12
|
+
* Custom accessor to retrieve a grid bin index from each data object.
|
|
13
|
+
* Not supported by GPU aggregation.
|
|
11
14
|
*/
|
|
12
|
-
|
|
15
|
+
gridAggregator?: ((position: number[], cellSize: number) => [number, number]) | null;
|
|
16
|
+
/**
|
|
17
|
+
* Size of each cell in meters.
|
|
18
|
+
* @default 1000
|
|
19
|
+
*/
|
|
20
|
+
cellSize?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Color scale domain, default is set to the extent of aggregated weights in each cell.
|
|
23
|
+
* @default [min(colorWeight), max(colorWeight)]
|
|
24
|
+
*/
|
|
25
|
+
colorDomain?: [number, number] | null;
|
|
26
|
+
/**
|
|
27
|
+
* Default: [colorbrewer](http://colorbrewer2.org/#type=sequential&scheme=YlOrRd&n=6) `6-class YlOrRd`
|
|
28
|
+
*/
|
|
29
|
+
colorRange?: Color[];
|
|
30
|
+
/**
|
|
31
|
+
* Cell size multiplier, clamped between 0 - 1.
|
|
32
|
+
* @default 1
|
|
33
|
+
*/
|
|
34
|
+
coverage?: number;
|
|
35
|
+
/**
|
|
36
|
+
* Elevation scale input domain, default is set to between 0 and the max of aggregated weights in each cell.
|
|
37
|
+
* @default [0, max(elevationWeight)]
|
|
38
|
+
*/
|
|
39
|
+
elevationDomain?: [number, number] | null;
|
|
40
|
+
/**
|
|
41
|
+
* Elevation scale output range.
|
|
42
|
+
* @default [0, 1000]
|
|
43
|
+
*/
|
|
44
|
+
elevationRange?: [number, number];
|
|
45
|
+
/**
|
|
46
|
+
* Cell elevation multiplier.
|
|
47
|
+
* @default 1
|
|
48
|
+
*/
|
|
49
|
+
elevationScale?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Whether to enable cell elevation. If set to false, all cell will be flat.
|
|
52
|
+
* @default true
|
|
53
|
+
*/
|
|
54
|
+
extruded?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Filter cells and re-calculate color by `upperPercentile`.
|
|
57
|
+
* Cells with value larger than the upperPercentile will be hidden.
|
|
58
|
+
* @default 100
|
|
59
|
+
*/
|
|
60
|
+
upperPercentile?: number;
|
|
61
|
+
/**
|
|
62
|
+
* Filter cells and re-calculate color by `lowerPercentile`.
|
|
63
|
+
* Cells with value smaller than the lowerPercentile will be hidden.
|
|
64
|
+
* @default 0
|
|
65
|
+
*/
|
|
66
|
+
lowerPercentile?: number;
|
|
67
|
+
/**
|
|
68
|
+
* Filter cells and re-calculate elevation by `elevationUpperPercentile`.
|
|
69
|
+
* Cells with elevation value larger than the `elevationUpperPercentile` will be hidden.
|
|
70
|
+
* @default 100
|
|
71
|
+
*/
|
|
72
|
+
elevationUpperPercentile?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Filter cells and re-calculate elevation by `elevationLowerPercentile`.
|
|
75
|
+
* Cells with elevation value larger than the `elevationLowerPercentile` will be hidden.
|
|
76
|
+
* @default 0
|
|
77
|
+
*/
|
|
78
|
+
elevationLowerPercentile?: number;
|
|
79
|
+
/**
|
|
80
|
+
* Scaling function used to determine the color of the grid cell.
|
|
81
|
+
* Supported Values are 'quantize', 'linear', 'quantile' and 'ordinal'.
|
|
82
|
+
* @default 'quantize'
|
|
83
|
+
*/
|
|
84
|
+
colorScaleType?: 'quantize' | 'linear' | 'quantile' | 'ordinal';
|
|
85
|
+
/**
|
|
86
|
+
* Scaling function used to determine the elevation of the grid cell.
|
|
87
|
+
* Supported Values are 'linear' and 'quantile'.
|
|
88
|
+
* @default 'linear'
|
|
89
|
+
*/
|
|
90
|
+
elevationScaleType?: 'linear' | 'quantile';
|
|
91
|
+
/**
|
|
92
|
+
* Material settings for lighting effect. Applies if `extruded: true`.
|
|
93
|
+
*
|
|
94
|
+
* @default true
|
|
95
|
+
* @see https://deck.gl/docs/developer-guide/using-lighting
|
|
96
|
+
*/
|
|
97
|
+
material?: Material;
|
|
98
|
+
/**
|
|
99
|
+
* Defines the operation used to aggregate all data object weights to calculate a cell's color value.
|
|
100
|
+
* Valid values are 'SUM', 'MEAN', 'MIN', 'MAX', 'COUNT'.
|
|
101
|
+
*
|
|
102
|
+
* @default 'SUM'
|
|
103
|
+
*/
|
|
104
|
+
colorAggregation?: AggregationOperation;
|
|
105
|
+
/**
|
|
106
|
+
* Defines the operation used to aggregate all data object weights to calculate a cell's elevation value.
|
|
107
|
+
* Valid values are 'SUM', 'MEAN', 'MIN', 'MAX', 'COUNT'.
|
|
108
|
+
*
|
|
109
|
+
* @default 'SUM'
|
|
110
|
+
*/
|
|
111
|
+
elevationAggregation?: AggregationOperation;
|
|
112
|
+
/**
|
|
113
|
+
* Method called to retrieve the position of each object.
|
|
114
|
+
* @default object => object.position
|
|
115
|
+
*/
|
|
116
|
+
getPosition?: Accessor<DataT, Position>;
|
|
117
|
+
/**
|
|
118
|
+
* The weight of a data object used to calculate the color value for a cell.
|
|
119
|
+
* @default 1
|
|
120
|
+
*/
|
|
121
|
+
getColorWeight?: Accessor<DataT, number>;
|
|
122
|
+
/**
|
|
123
|
+
* After data objects are aggregated into cells, this accessor is called on each cell to get the value that its color is based on.
|
|
124
|
+
* Not supported by GPU aggregation.
|
|
125
|
+
* @default null
|
|
126
|
+
*/
|
|
127
|
+
getColorValue?: AggregateAccessor<DataT> | null;
|
|
128
|
+
/**
|
|
129
|
+
* The weight of a data object used to calculate the elevation value for a cell.
|
|
130
|
+
* @default 1
|
|
131
|
+
*/
|
|
132
|
+
getElevationWeight?: Accessor<DataT, number>;
|
|
133
|
+
/**
|
|
134
|
+
* After data objects are aggregated into cells, this accessor is called on each cell to get the value that its elevation is based on.
|
|
135
|
+
* Not supported by GPU aggregation.
|
|
136
|
+
* @default null
|
|
137
|
+
*/
|
|
138
|
+
getElevationValue?: AggregateAccessor<DataT> | null;
|
|
139
|
+
/**
|
|
140
|
+
* This callback will be called when bin color domain has been calculated.
|
|
141
|
+
* @default () => {}
|
|
142
|
+
*/
|
|
143
|
+
onSetColorDomain?: (minMax: [number, number]) => void;
|
|
144
|
+
/**
|
|
145
|
+
* This callback will be called when bin elevation domain has been calculated.
|
|
146
|
+
* @default () => {}
|
|
147
|
+
*/
|
|
148
|
+
onSetElevationDomain?: (minMax: [number, number]) => void;
|
|
13
149
|
/**
|
|
14
150
|
* When set to true, aggregation is performed on GPU, provided other conditions are met.
|
|
15
|
-
* @default
|
|
151
|
+
* @default true
|
|
16
152
|
*/
|
|
17
153
|
gpuAggregation?: boolean;
|
|
18
154
|
};
|
|
155
|
+
export type GridLayerPickingInfo<DataT> = PickingInfo<{
|
|
156
|
+
/** Column index of the picked cell */
|
|
157
|
+
col: number;
|
|
158
|
+
/** Row index of the picked cell */
|
|
159
|
+
row: number;
|
|
160
|
+
/** Aggregated color value, as determined by `getColorWeight` and `colorAggregation` */
|
|
161
|
+
colorValue: number;
|
|
162
|
+
/** Aggregated elevation value, as determined by `getElevationWeight` and `elevationAggregation` */
|
|
163
|
+
elevationValue: number;
|
|
164
|
+
/** Number of data points in the picked cell */
|
|
165
|
+
count: number;
|
|
166
|
+
/** Indices of the data objects in the picked cell. Only available if using CPU aggregation. */
|
|
167
|
+
pointIndices?: number[];
|
|
168
|
+
/** The data objects in the picked cell. Only available if using CPU aggregation and layer data is an array. */
|
|
169
|
+
points?: DataT[];
|
|
170
|
+
}>;
|
|
19
171
|
/** Aggregate data into a grid-based heatmap. The color and height of a cell are determined based on the objects it contains. */
|
|
20
|
-
export default class GridLayer<DataT = any, ExtraPropsT extends {} = {}> extends
|
|
172
|
+
export default class GridLayer<DataT = any, ExtraPropsT extends {} = {}> extends AggregationLayer<DataT, ExtraPropsT & Required<_GridLayerProps<DataT>>> {
|
|
21
173
|
static layerName: string;
|
|
22
174
|
static defaultProps: DefaultProps<GridLayerProps<unknown>>;
|
|
23
|
-
state:
|
|
24
|
-
|
|
175
|
+
state: AggregationLayer<DataT>['state'] & BinOptions & {
|
|
176
|
+
dataAsArray?: DataT[];
|
|
177
|
+
colors?: AttributeWithScale;
|
|
178
|
+
elevations?: AttributeWithScale;
|
|
179
|
+
binIdRange: [number, number][];
|
|
180
|
+
aggregatorViewport: Viewport;
|
|
25
181
|
};
|
|
182
|
+
getAggregatorType(): string;
|
|
183
|
+
createAggregator(type: string): WebGLAggregator | CPUAggregator;
|
|
26
184
|
initializeState(): void;
|
|
27
|
-
updateState(
|
|
28
|
-
|
|
29
|
-
|
|
185
|
+
updateState(params: UpdateParameters<this>): boolean;
|
|
186
|
+
private _updateBinOptions;
|
|
187
|
+
draw(opts: any): void;
|
|
188
|
+
private _onAggregationUpdate;
|
|
189
|
+
onAttributeChange(id: string): void;
|
|
190
|
+
renderLayers(): LayersList | Layer | null;
|
|
191
|
+
getPickingInfo(params: GetPickingInfoParams): GridLayerPickingInfo<DataT>;
|
|
30
192
|
}
|
|
31
193
|
export {};
|
|
32
194
|
//# sourceMappingURL=grid-layer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-layer.d.ts","sourceRoot":"","sources":["../../src/grid-layer/grid-layer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"grid-layer.d.ts","sourceRoot":"","sources":["../../src/grid-layer/grid-layer.ts"],"names":[],"mappings":"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"}
|