@deck.gl/aggregation-layers 9.4.0-alpha.1 → 9.4.0-beta.1
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/aggregator/gpu-aggregator/webgl-aggregation-transform.d.ts.map +1 -1
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregation-transform.js +1 -3
- package/dist/common/aggregator/gpu-aggregator/webgl-aggregation-transform.js.map +1 -1
- package/dist/common/aggregator/gpu-aggregator/webgl-bin-sorter.js +0 -1
- package/dist/common/aggregator/gpu-aggregator/webgl-bin-sorter.js.map +1 -1
- package/dist/dist.dev.js +642 -38
- package/dist/grid-layer/grid-cell-layer.d.ts.map +1 -1
- package/dist/grid-layer/grid-cell-layer.js +3 -2
- package/dist/grid-layer/grid-cell-layer.js.map +1 -1
- package/dist/grid-layer/grid-cell-layer.wgsl.d.ts +3 -0
- package/dist/grid-layer/grid-cell-layer.wgsl.d.ts.map +1 -0
- package/dist/grid-layer/grid-cell-layer.wgsl.js +114 -0
- package/dist/grid-layer/grid-cell-layer.wgsl.js.map +1 -0
- package/dist/grid-layer/grid-layer-uniforms.d.ts +1 -0
- package/dist/grid-layer/grid-layer-uniforms.d.ts.map +1 -1
- package/dist/grid-layer/grid-layer-uniforms.js +14 -0
- package/dist/grid-layer/grid-layer-uniforms.js.map +1 -1
- package/dist/heatmap-layer/heatmap-layer-uniforms.d.ts +2 -0
- package/dist/heatmap-layer/heatmap-layer-uniforms.d.ts.map +1 -1
- package/dist/heatmap-layer/heatmap-layer-uniforms.js +19 -0
- package/dist/heatmap-layer/heatmap-layer-uniforms.js.map +1 -1
- package/dist/heatmap-layer/heatmap-layer.d.ts.map +1 -1
- package/dist/heatmap-layer/heatmap-layer.js +59 -12
- package/dist/heatmap-layer/heatmap-layer.js.map +1 -1
- package/dist/heatmap-layer/max.wgsl.d.ts +3 -0
- package/dist/heatmap-layer/max.wgsl.d.ts.map +1 -0
- package/dist/heatmap-layer/max.wgsl.js +48 -0
- package/dist/heatmap-layer/max.wgsl.js.map +1 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.d.ts +1 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.d.ts.map +1 -1
- package/dist/heatmap-layer/triangle-layer-uniforms.js +16 -0
- package/dist/heatmap-layer/triangle-layer-uniforms.js.map +1 -1
- package/dist/heatmap-layer/triangle-layer.d.ts.map +1 -1
- package/dist/heatmap-layer/triangle-layer.js +3 -2
- package/dist/heatmap-layer/triangle-layer.js.map +1 -1
- package/dist/heatmap-layer/triangle-layer.wgsl.d.ts +3 -0
- package/dist/heatmap-layer/triangle-layer.wgsl.d.ts.map +1 -0
- package/dist/heatmap-layer/triangle-layer.wgsl.js +65 -0
- package/dist/heatmap-layer/triangle-layer.wgsl.js.map +1 -0
- package/dist/heatmap-layer/weights.wgsl.d.ts +3 -0
- package/dist/heatmap-layer/weights.wgsl.d.ts.map +1 -0
- package/dist/heatmap-layer/weights.wgsl.js +64 -0
- package/dist/heatmap-layer/weights.wgsl.js.map +1 -0
- package/dist/hexagon-layer/hexagon-cell-layer.d.ts.map +1 -1
- package/dist/hexagon-layer/hexagon-cell-layer.js +2 -2
- package/dist/hexagon-layer/hexagon-cell-layer.js.map +1 -1
- package/dist/hexagon-layer/hexagon-cell-layer.wgsl.d.ts +3 -0
- package/dist/hexagon-layer/hexagon-cell-layer.wgsl.d.ts.map +1 -0
- package/dist/hexagon-layer/hexagon-cell-layer.wgsl.js +120 -0
- package/dist/hexagon-layer/hexagon-cell-layer.wgsl.js.map +1 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.d.ts +1 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.d.ts.map +1 -1
- package/dist/hexagon-layer/hexagon-layer-uniforms.js +13 -0
- package/dist/hexagon-layer/hexagon-layer-uniforms.js.map +1 -1
- package/dist/index.cjs +13268 -1488
- package/dist/index.cjs.map +3 -4
- package/dist/screen-grid-layer/screen-grid-cell-layer.d.ts +1 -6
- package/dist/screen-grid-layer/screen-grid-cell-layer.d.ts.map +1 -1
- package/dist/screen-grid-layer/screen-grid-cell-layer.js +3 -2
- package/dist/screen-grid-layer/screen-grid-cell-layer.js.map +1 -1
- package/dist/screen-grid-layer/screen-grid-cell-layer.wgsl.d.ts +3 -0
- package/dist/screen-grid-layer/screen-grid-cell-layer.wgsl.d.ts.map +1 -0
- package/dist/screen-grid-layer/screen-grid-cell-layer.wgsl.js +76 -0
- package/dist/screen-grid-layer/screen-grid-cell-layer.wgsl.js.map +1 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.d.ts +1 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.d.ts.map +1 -1
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.js +12 -0
- package/dist/screen-grid-layer/screen-grid-layer-uniforms.js.map +1 -1
- package/dist.min.js +545 -35
- package/dist.webgl-only/common/aggregation-layer.js +68 -0
- package/dist.webgl-only/common/aggregation-layer.js.map +1 -0
- package/dist.webgl-only/common/aggregator/aggregator.js +5 -0
- package/dist.webgl-only/common/aggregator/aggregator.js.map +1 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/aggregate.js +69 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/aggregate.js.map +1 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/cpu-aggregator.js +141 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/cpu-aggregator.js.map +1 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/sort-bins.js +44 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/sort-bins.js.map +1 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/vertex-accessor.js +56 -0
- package/dist.webgl-only/common/aggregator/cpu-aggregator/vertex-accessor.js.map +1 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.js +22 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/aggregation-transform-uniforms.js.map +1 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/bin-sorter-uniforms.js +18 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/bin-sorter-uniforms.js.map +1 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/utils.js +24 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/utils.js.map +1 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/webgl-aggregation-transform.js +222 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/webgl-aggregation-transform.js.map +1 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/webgl-aggregator.js +203 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/webgl-aggregator.js.map +1 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/webgl-bin-sorter.js +225 -0
- package/dist.webgl-only/common/aggregator/gpu-aggregator/webgl-bin-sorter.js.map +1 -0
- package/dist.webgl-only/common/aggregator/index.js +6 -0
- package/dist.webgl-only/common/aggregator/index.js.map +1 -0
- package/dist.webgl-only/common/types.js +5 -0
- package/dist.webgl-only/common/types.js.map +1 -0
- package/dist.webgl-only/common/utils/bounds-utils.js +21 -0
- package/dist.webgl-only/common/utils/bounds-utils.js.map +1 -0
- package/dist.webgl-only/common/utils/color-utils.js +65 -0
- package/dist.webgl-only/common/utils/color-utils.js.map +1 -0
- package/dist.webgl-only/common/utils/prop-utils.js +13 -0
- package/dist.webgl-only/common/utils/prop-utils.js.map +1 -0
- package/dist.webgl-only/common/utils/scale-utils.js +181 -0
- package/dist.webgl-only/common/utils/scale-utils.js.map +1 -0
- package/dist.webgl-only/contour-layer/bin-options-uniforms.js +18 -0
- package/dist.webgl-only/contour-layer/bin-options-uniforms.js.map +1 -0
- package/dist.webgl-only/contour-layer/contour-layer.js +282 -0
- package/dist.webgl-only/contour-layer/contour-layer.js.map +1 -0
- package/dist.webgl-only/contour-layer/contour-utils.js +60 -0
- package/dist.webgl-only/contour-layer/contour-utils.js.map +1 -0
- package/dist.webgl-only/contour-layer/marching-squares-codes.js +341 -0
- package/dist.webgl-only/contour-layer/marching-squares-codes.js.map +1 -0
- package/dist.webgl-only/contour-layer/marching-squares.js +151 -0
- package/dist.webgl-only/contour-layer/marching-squares.js.map +1 -0
- package/dist.webgl-only/contour-layer/value-reader.js +47 -0
- package/dist.webgl-only/contour-layer/value-reader.js.map +1 -0
- package/dist.webgl-only/grid-layer/bin-options-uniforms.js +18 -0
- package/dist.webgl-only/grid-layer/bin-options-uniforms.js.map +1 -0
- package/dist.webgl-only/grid-layer/grid-cell-layer-vertex.glsl.js +51 -0
- package/dist.webgl-only/grid-layer/grid-cell-layer-vertex.glsl.js.map +1 -0
- package/dist.webgl-only/grid-layer/grid-cell-layer.js +95 -0
- package/dist.webgl-only/grid-layer/grid-cell-layer.js.map +1 -0
- package/dist.webgl-only/grid-layer/grid-cell-layer.wgsl.js +5 -0
- package/dist.webgl-only/grid-layer/grid-cell-layer.wgsl.js.map +1 -0
- package/dist.webgl-only/grid-layer/grid-layer-uniforms.js +26 -0
- package/dist.webgl-only/grid-layer/grid-layer-uniforms.js.map +1 -0
- package/dist.webgl-only/grid-layer/grid-layer.js +362 -0
- package/dist.webgl-only/grid-layer/grid-layer.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/aggregation-layer.js +140 -0
- package/dist.webgl-only/heatmap-layer/aggregation-layer.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/heatmap-layer-uniforms.js +36 -0
- package/dist.webgl-only/heatmap-layer/heatmap-layer-uniforms.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/heatmap-layer-utils.js +67 -0
- package/dist.webgl-only/heatmap-layer/heatmap-layer-utils.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/heatmap-layer.js +513 -0
- package/dist.webgl-only/heatmap-layer/heatmap-layer.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/max-fs.glsl.js +13 -0
- package/dist.webgl-only/heatmap-layer/max-fs.glsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/max-vs.glsl.js +18 -0
- package/dist.webgl-only/heatmap-layer/max-vs.glsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/max.wgsl.js +5 -0
- package/dist.webgl-only/heatmap-layer/max.wgsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer-fragment.glsl.js +34 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer-fragment.glsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer-uniforms.js +25 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer-uniforms.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer-vertex.glsl.js +28 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer-vertex.glsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer.js +49 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer.wgsl.js +5 -0
- package/dist.webgl-only/heatmap-layer/triangle-layer.wgsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/weights-fs.glsl.js +21 -0
- package/dist.webgl-only/heatmap-layer/weights-fs.glsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/weights-vs.glsl.js +21 -0
- package/dist.webgl-only/heatmap-layer/weights-vs.glsl.js.map +1 -0
- package/dist.webgl-only/heatmap-layer/weights.wgsl.js +5 -0
- package/dist.webgl-only/heatmap-layer/weights.wgsl.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/bin-options-uniforms.js +18 -0
- package/dist.webgl-only/hexagon-layer/bin-options-uniforms.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/hexagon-cell-layer-vertex.glsl.js +55 -0
- package/dist.webgl-only/hexagon-layer/hexagon-cell-layer-vertex.glsl.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/hexagon-cell-layer.js +90 -0
- package/dist.webgl-only/hexagon-layer/hexagon-cell-layer.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/hexagon-cell-layer.wgsl.js +5 -0
- package/dist.webgl-only/hexagon-layer/hexagon-cell-layer.wgsl.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/hexagon-layer-uniforms.js +24 -0
- package/dist.webgl-only/hexagon-layer/hexagon-layer-uniforms.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/hexagon-layer.js +360 -0
- package/dist.webgl-only/hexagon-layer/hexagon-layer.js.map +1 -0
- package/dist.webgl-only/hexagon-layer/hexbin.js +70 -0
- package/dist.webgl-only/hexagon-layer/hexbin.js.map +1 -0
- package/dist.webgl-only/index.cjs +15625 -0
- package/dist.webgl-only/index.cjs.map +6 -0
- package/dist.webgl-only/index.js +11 -0
- package/dist.webgl-only/index.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/bin-options-uniforms.js +16 -0
- package/dist.webgl-only/screen-grid-layer/bin-options-uniforms.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-cell-layer.js +88 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-cell-layer.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-cell-layer.wgsl.js +5 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-cell-layer.wgsl.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer-fragment.glsl.js +16 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer-uniforms.js +22 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer-uniforms.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer-vertex.glsl.js +31 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +1 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer.js +194 -0
- package/dist.webgl-only/screen-grid-layer/screen-grid-layer.js.map +1 -0
- package/package.json +14 -5
- package/src/common/aggregator/gpu-aggregator/webgl-aggregation-transform.ts +1 -3
- package/src/common/aggregator/gpu-aggregator/webgl-bin-sorter.ts +0 -1
- package/src/grid-layer/grid-cell-layer.ts +3 -2
- package/src/grid-layer/grid-cell-layer.wgsl.ts +114 -0
- package/src/grid-layer/grid-layer-uniforms.ts +15 -0
- package/src/heatmap-layer/heatmap-layer-uniforms.ts +20 -0
- package/src/heatmap-layer/heatmap-layer.ts +67 -13
- package/src/heatmap-layer/max.wgsl.ts +48 -0
- package/src/heatmap-layer/triangle-layer-uniforms.ts +17 -0
- package/src/heatmap-layer/triangle-layer.ts +3 -2
- package/src/heatmap-layer/triangle-layer.wgsl.ts +65 -0
- package/src/heatmap-layer/weights.wgsl.ts +64 -0
- package/src/hexagon-layer/hexagon-cell-layer.ts +2 -3
- package/src/hexagon-layer/hexagon-cell-layer.wgsl.ts +120 -0
- package/src/hexagon-layer/hexagon-layer-uniforms.ts +14 -0
- package/src/screen-grid-layer/screen-grid-cell-layer.ts +4 -4
- package/src/screen-grid-layer/screen-grid-cell-layer.wgsl.ts +76 -0
- package/src/screen-grid-layer/screen-grid-layer-uniforms.ts +13 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
// Inspired by screen-grid-layer vertex shader in deck.gl
|
|
5
|
+
export default `\
|
|
6
|
+
#version 300 es
|
|
7
|
+
#define SHADER_NAME heatp-map-layer-vertex-shader
|
|
8
|
+
uniform sampler2D maxTexture;
|
|
9
|
+
in vec3 positions;
|
|
10
|
+
in vec2 texCoords;
|
|
11
|
+
out vec2 vTexCoords;
|
|
12
|
+
out float vIntensityMin;
|
|
13
|
+
out float vIntensityMax;
|
|
14
|
+
void main(void) {
|
|
15
|
+
gl_Position = project_position_to_clipspace(positions, vec3(0.0), vec3(0.0));
|
|
16
|
+
vTexCoords = texCoords;
|
|
17
|
+
vec4 maxTexture = texture(maxTexture, vec2(0.5));
|
|
18
|
+
float maxValue = triangle.aggregationMode < 0.5 ? maxTexture.r : maxTexture.g;
|
|
19
|
+
float minValue = maxValue * triangle.threshold;
|
|
20
|
+
if (triangle.colorDomain[1] > 0.) {
|
|
21
|
+
maxValue = triangle.colorDomain[1];
|
|
22
|
+
minValue = triangle.colorDomain[0];
|
|
23
|
+
}
|
|
24
|
+
vIntensityMax = triangle.intensity / maxValue;
|
|
25
|
+
vIntensityMin = triangle.intensity / minValue;
|
|
26
|
+
}
|
|
27
|
+
`;
|
|
28
|
+
//# sourceMappingURL=triangle-layer-vertex.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"triangle-layer-vertex.glsl.js","sourceRoot":"","sources":["../../src/heatmap-layer/triangle-layer-vertex.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,yDAAyD;AAEzD;;;;;;;;;;;;;;;;;;;;;;EA2BE"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
import { Model } from '@luma.gl/engine';
|
|
5
|
+
import { Layer, color, project32 } from '@deck.gl/core';
|
|
6
|
+
import source from "./triangle-layer.wgsl.js";
|
|
7
|
+
import vs from "./triangle-layer-vertex.glsl.js";
|
|
8
|
+
import fs from "./triangle-layer-fragment.glsl.js";
|
|
9
|
+
import { triangleUniforms } from "./triangle-layer-uniforms.js";
|
|
10
|
+
class TriangleLayer extends Layer {
|
|
11
|
+
getShaders() {
|
|
12
|
+
return super.getShaders({ source, vs, fs, modules: [project32, color, triangleUniforms] });
|
|
13
|
+
}
|
|
14
|
+
initializeState({ device }) {
|
|
15
|
+
this.setState({ model: this._getModel(device) });
|
|
16
|
+
}
|
|
17
|
+
_getModel(device) {
|
|
18
|
+
const { vertexCount, data } = this.props;
|
|
19
|
+
return new Model(device, {
|
|
20
|
+
...this.getShaders(),
|
|
21
|
+
id: this.props.id,
|
|
22
|
+
attributes: data.attributes,
|
|
23
|
+
bufferLayout: [
|
|
24
|
+
{ name: 'positions', format: 'float32x3' },
|
|
25
|
+
{ name: 'texCoords', format: 'float32x2' }
|
|
26
|
+
],
|
|
27
|
+
topology: 'triangle-strip',
|
|
28
|
+
vertexCount
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
draw() {
|
|
32
|
+
const { model } = this.state;
|
|
33
|
+
const { aggregationMode, colorDomain, intensity, threshold, colorTexture, maxTexture, weightsTexture } = this.props;
|
|
34
|
+
const triangleProps = {
|
|
35
|
+
aggregationMode,
|
|
36
|
+
colorDomain,
|
|
37
|
+
intensity,
|
|
38
|
+
threshold,
|
|
39
|
+
colorTexture,
|
|
40
|
+
maxTexture,
|
|
41
|
+
weightsTexture
|
|
42
|
+
};
|
|
43
|
+
model.shaderInputs.setProps({ triangle: triangleProps });
|
|
44
|
+
model.draw(this.context.renderPass);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
TriangleLayer.layerName = 'TriangleLayer';
|
|
48
|
+
export default TriangleLayer;
|
|
49
|
+
//# sourceMappingURL=triangle-layer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"triangle-layer.js","sourceRoot":"","sources":["../../src/heatmap-layer/triangle-layer.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,KAAK,EAAgB,KAAK,EAAE,SAAS,EAAC,MAAM,eAAe,CAAC;AACpE,OAAO,MAAM,iCAA8B;AAC3C,OAAO,EAAE,wCAAqC;AAC9C,OAAO,EAAE,0CAAuC;AAChD,OAAO,EAAgB,gBAAgB,EAAC,qCAAkC;AAc1E,MAAqB,aAAc,SAAQ,KAA0B;IASnE,UAAU;QACR,OAAO,KAAK,CAAC,UAAU,CAAC,EAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAAC,CAAC,CAAC;IAC3F,CAAC;IAED,eAAe,CAAC,EAAC,MAAM,EAAe;QACpC,IAAI,CAAC,QAAQ,CAAC,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAC,CAAC,CAAC;IACjD,CAAC;IAED,SAAS,CAAC,MAAc;QACtB,MAAM,EAAC,WAAW,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAEvC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;YACvB,GAAG,IAAI,CAAC,UAAU,EAAE;YACpB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE;gBACZ,EAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAC;gBACxC,EAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAC;aACzC;YACD,QAAQ,EAAE,gBAAgB;YAC1B,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,IAAI;QACF,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,EACJ,eAAe,EACf,WAAW,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,UAAU,EACV,cAAc,EACf,GAAG,IAAI,CAAC,KAAK,CAAC;QACf,MAAM,aAAa,GAAkB;YACnC,eAAe;YACf,WAAW;YACX,SAAS;YACT,SAAS;YACT,YAAY;YACZ,UAAU;YACV,cAAc;SACf,CAAC;QACF,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAC,QAAQ,EAAE,aAAa,EAAC,CAAC,CAAC;QACvD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;;AAtDM,uBAAS,GAAG,eAAe,CAAC;eADhB,aAAa"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"triangle-layer.wgsl.js","sourceRoot":"","sources":["../../src/heatmap-layer/triangle-layer.wgsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,eAAe,UAAU,MA4DvB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
export default `\
|
|
5
|
+
#version 300 es
|
|
6
|
+
in vec4 weightsTexture;
|
|
7
|
+
out vec4 fragColor;
|
|
8
|
+
float gaussianKDE(float u){
|
|
9
|
+
return pow(2.71828, -u*u/0.05555)/(1.77245385*0.166666);
|
|
10
|
+
}
|
|
11
|
+
void main()
|
|
12
|
+
{
|
|
13
|
+
float dist = length(gl_PointCoord - vec2(0.5, 0.5));
|
|
14
|
+
if (dist > 0.5) {
|
|
15
|
+
discard;
|
|
16
|
+
}
|
|
17
|
+
fragColor = weightsTexture * gaussianKDE(2. * dist);
|
|
18
|
+
DECKGL_FILTER_COLOR(fragColor, geometry);
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
//# sourceMappingURL=weights-fs.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"weights-fs.glsl.js","sourceRoot":"","sources":["../../src/heatmap-layer/weights-fs.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC;;;;;;;;;;;;;;;;EAoBE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
export default `\
|
|
5
|
+
#version 300 es
|
|
6
|
+
in vec3 positions;
|
|
7
|
+
in vec3 positions64Low;
|
|
8
|
+
in float weights;
|
|
9
|
+
out vec4 weightsTexture;
|
|
10
|
+
void main()
|
|
11
|
+
{
|
|
12
|
+
weightsTexture = vec4(weights * weight.weightsScale, 0., 0., 1.);
|
|
13
|
+
float radiusTexels = project_pixel_size(weight.radiusPixels) * weight.textureWidth / (weight.commonBounds.z - weight.commonBounds.x);
|
|
14
|
+
gl_PointSize = radiusTexels * 2.;
|
|
15
|
+
vec3 commonPosition = project_position(positions, positions64Low);
|
|
16
|
+
gl_Position.xy = (commonPosition.xy - weight.commonBounds.xy) / (weight.commonBounds.zw - weight.commonBounds.xy) ;
|
|
17
|
+
gl_Position.xy = (gl_Position.xy * 2.) - (1.);
|
|
18
|
+
gl_Position.w = 1.0;
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
//# sourceMappingURL=weights-vs.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"weights-vs.glsl.js","sourceRoot":"","sources":["../../src/heatmap-layer/weights-vs.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC;;;;;;;;;;;;;;;;EAqBE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"weights.wgsl.js","sourceRoot":"","sources":["../../src/heatmap-layer/weights.wgsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,eAAe,UAAU,MA2DvB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
const uniformBlock = /* glsl */ `\
|
|
5
|
+
layout(std140) uniform binOptionsUniforms {
|
|
6
|
+
vec2 hexOriginCommon;
|
|
7
|
+
float radiusCommon;
|
|
8
|
+
} binOptions;
|
|
9
|
+
`;
|
|
10
|
+
export const binOptionsUniforms = {
|
|
11
|
+
name: 'binOptions',
|
|
12
|
+
vs: uniformBlock,
|
|
13
|
+
uniformTypes: {
|
|
14
|
+
hexOriginCommon: 'vec2<f32>',
|
|
15
|
+
radiusCommon: 'f32'
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=bin-options-uniforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin-options-uniforms.js","sourceRoot":"","sources":["../../src/hexagon-layer/bin-options-uniforms.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAKpC,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,eAAe,EAAE,WAAW;QAC5B,YAAY,EAAE,KAAK;KACpB;CAC0C,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
import { getHexbinCentroidGLSL } from "./hexbin.js";
|
|
5
|
+
export default /* glsl */ `\
|
|
6
|
+
#version 300 es
|
|
7
|
+
#define SHADER_NAME hexagon-cell-layer-vertex-shader
|
|
8
|
+
in vec3 positions;
|
|
9
|
+
in vec3 normals;
|
|
10
|
+
in vec2 instancePositions;
|
|
11
|
+
in float instanceElevationValues;
|
|
12
|
+
in float instanceColorValues;
|
|
13
|
+
uniform sampler2D colorRange;
|
|
14
|
+
out vec4 vColor;
|
|
15
|
+
${getHexbinCentroidGLSL}
|
|
16
|
+
float interp(float value, vec2 domain, vec2 range) {
|
|
17
|
+
float r = min(max((value - domain.x) / (domain.y - domain.x), 0.), 1.);
|
|
18
|
+
return mix(range.x, range.y, r);
|
|
19
|
+
}
|
|
20
|
+
vec4 interp(float value, vec2 domain, sampler2D range) {
|
|
21
|
+
float r = (value - domain.x) / (domain.y - domain.x);
|
|
22
|
+
return texture(range, vec2(r, 0.5));
|
|
23
|
+
}
|
|
24
|
+
void main(void) {
|
|
25
|
+
geometry.pickingColor = picking_getPickingColorFromInstanceID();
|
|
26
|
+
if (isnan(instanceColorValues) ||
|
|
27
|
+
instanceColorValues < hexagon.colorDomain.z ||
|
|
28
|
+
instanceColorValues > hexagon.colorDomain.w ||
|
|
29
|
+
instanceElevationValues < hexagon.elevationDomain.z ||
|
|
30
|
+
instanceElevationValues > hexagon.elevationDomain.w
|
|
31
|
+
) {
|
|
32
|
+
gl_Position = vec4(0.);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
vec2 commonPosition = hexbinCentroid(instancePositions, column.radius) + (hexagon.originCommon - project.commonOrigin.xy);
|
|
36
|
+
commonPosition += positions.xy * column.radius * column.coverage;
|
|
37
|
+
geometry.position = vec4(commonPosition, 0.0, 1.0);
|
|
38
|
+
geometry.normal = project_normal(normals);
|
|
39
|
+
float elevation = 0.0;
|
|
40
|
+
if (column.extruded) {
|
|
41
|
+
elevation = interp(instanceElevationValues, hexagon.elevationDomain.xy, hexagon.elevationRange);
|
|
42
|
+
elevation = project_size(elevation);
|
|
43
|
+
geometry.position.z = (positions.z + 1.0) / 2.0 * elevation;
|
|
44
|
+
}
|
|
45
|
+
gl_Position = project_common_position_to_clipspace(geometry.position);
|
|
46
|
+
DECKGL_FILTER_GL_POSITION(gl_Position, geometry);
|
|
47
|
+
vColor = interp(instanceColorValues, hexagon.colorDomain.xy, colorRange);
|
|
48
|
+
vColor.a *= layer.opacity;
|
|
49
|
+
if (column.extruded) {
|
|
50
|
+
vColor.rgb = lighting_getLightColor(vColor.rgb, project.cameraPosition, geometry.position.xyz, geometry.normal);
|
|
51
|
+
}
|
|
52
|
+
DECKGL_FILTER_COLOR(vColor, geometry);
|
|
53
|
+
}
|
|
54
|
+
`;
|
|
55
|
+
//# sourceMappingURL=hexagon-cell-layer-vertex.glsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hexagon-cell-layer-vertex.glsl.js","sourceRoot":"","sources":["../../src/hexagon-layer/hexagon-cell-layer-vertex.glsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,qBAAqB,EAAC,oBAAiB;AAE/C,eAAe,UAAU,CAAC;;;;;;;;;;EAgBxB,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDtB,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
import { ColumnLayer } from '@deck.gl/layers';
|
|
5
|
+
import { createColorRangeTexture, updateColorRangeTexture } from "../common/utils/color-utils.js";
|
|
6
|
+
import source from "./hexagon-cell-layer.wgsl.js";
|
|
7
|
+
import vs from "./hexagon-cell-layer-vertex.glsl.js";
|
|
8
|
+
import { hexagonUniforms } from "./hexagon-layer-uniforms.js";
|
|
9
|
+
class HexagonCellLayer extends ColumnLayer {
|
|
10
|
+
getShaders() {
|
|
11
|
+
const shaders = super.getShaders();
|
|
12
|
+
shaders.modules.push(hexagonUniforms);
|
|
13
|
+
return { ...shaders, source, 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 hexagonProps = { colorRange: this.state.colorTexture };
|
|
50
|
+
model.shaderInputs.setProps({ hexagon: hexagonProps });
|
|
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
|
+
draw({ uniforms }) {
|
|
61
|
+
const { radius, hexOriginCommon, elevationRange, elevationScale, extruded, coverage, colorDomain, elevationDomain } = this.props;
|
|
62
|
+
const colorCutoff = this.props.colorCutoff || [-Infinity, Infinity];
|
|
63
|
+
const elevationCutoff = this.props.elevationCutoff || [-Infinity, Infinity];
|
|
64
|
+
const fillModel = this.state.fillModel;
|
|
65
|
+
const hexagonProps = {
|
|
66
|
+
colorDomain: [
|
|
67
|
+
Math.max(colorDomain[0], colorCutoff[0]), // instanceColorValue that maps to colorRange[0]
|
|
68
|
+
Math.min(colorDomain[1], colorCutoff[1]), // instanceColorValue that maps to colorRange[colorRange.length - 1]
|
|
69
|
+
Math.max(colorDomain[0] - 1, colorCutoff[0]), // hide cell if instanceColorValue is less than this
|
|
70
|
+
Math.min(colorDomain[1] + 1, colorCutoff[1]) // hide cell if instanceColorValue is greater than this
|
|
71
|
+
],
|
|
72
|
+
elevationDomain: [
|
|
73
|
+
Math.max(elevationDomain[0], elevationCutoff[0]), // instanceElevationValue that maps to elevationRange[0]
|
|
74
|
+
Math.min(elevationDomain[1], elevationCutoff[1]), // instanceElevationValue that maps to elevationRange[elevationRange.length - 1]
|
|
75
|
+
Math.max(elevationDomain[0] - 1, elevationCutoff[0]), // hide cell if instanceElevationValue is less than this
|
|
76
|
+
Math.min(elevationDomain[1] + 1, elevationCutoff[1]) // hide cell if instanceElevationValue is greater than this
|
|
77
|
+
],
|
|
78
|
+
elevationRange: [elevationRange[0] * elevationScale, elevationRange[1] * elevationScale],
|
|
79
|
+
originCommon: hexOriginCommon
|
|
80
|
+
};
|
|
81
|
+
fillModel.shaderInputs.setProps({
|
|
82
|
+
column: { extruded, coverage, radius },
|
|
83
|
+
hexagon: hexagonProps
|
|
84
|
+
});
|
|
85
|
+
fillModel.draw(this.context.renderPass);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
HexagonCellLayer.layerName = 'HexagonCellLayer';
|
|
89
|
+
export default HexagonCellLayer;
|
|
90
|
+
//# sourceMappingURL=hexagon-cell-layer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hexagon-cell-layer.js","sourceRoot":"","sources":["../../src/hexagon-layer/hexagon-cell-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hexagon-cell-layer.wgsl.js","sourceRoot":"","sources":["../../src/hexagon-layer/hexagon-cell-layer.wgsl.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAEpC,eAAe,UAAU,MAmHvB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// deck.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
const uniformBlockWGSL = null;
|
|
5
|
+
const uniformBlock = /* glsl */ `\
|
|
6
|
+
layout(std140) uniform hexagonUniforms {
|
|
7
|
+
vec4 colorDomain;
|
|
8
|
+
vec4 elevationDomain;
|
|
9
|
+
vec2 elevationRange;
|
|
10
|
+
vec2 originCommon;
|
|
11
|
+
} hexagon;
|
|
12
|
+
`;
|
|
13
|
+
export const hexagonUniforms = {
|
|
14
|
+
name: 'hexagon',
|
|
15
|
+
source: uniformBlockWGSL,
|
|
16
|
+
vs: uniformBlock,
|
|
17
|
+
uniformTypes: {
|
|
18
|
+
colorDomain: 'vec4<f32>',
|
|
19
|
+
elevationDomain: 'vec4<f32>',
|
|
20
|
+
elevationRange: 'vec2<f32>',
|
|
21
|
+
originCommon: 'vec2<f32>'
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=hexagon-layer-uniforms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hexagon-layer-uniforms.js","sourceRoot":"","sources":["../../src/hexagon-layer/hexagon-layer-uniforms.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AAKpC,MAAM,gBAAgB,QAWpB;AAEF,MAAM,YAAY,GAAG,UAAU,CAAC;;;;;;;CAO/B,CAAC;AAUF,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,gBAAgB;IACxB,EAAE,EAAE,YAAY;IAChB,YAAY,EAAE;QACZ,WAAW,EAAE,WAAW;QACxB,eAAe,EAAE,WAAW;QAC5B,cAAc,EAAE,WAAW;QAC3B,YAAY,EAAE,WAAW;KAC1B;CAC4C,CAAC"}
|