@webviz/subsurface-viewer 1.11.8 → 1.11.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/layers/axes/box.fs.glsl.d.ts +1 -1
  2. package/dist/layers/axes/box.fs.glsl.js +3 -3
  3. package/dist/layers/axes/box.vs.glsl.d.ts +1 -1
  4. package/dist/layers/axes/box.vs.glsl.js +4 -0
  5. package/dist/layers/axes/box.vs.glsl.js.map +1 -1
  6. package/dist/layers/axes/boxLayer.js +4 -8
  7. package/dist/layers/axes/boxLayer.js.map +1 -1
  8. package/dist/layers/axes2d/axes2DLayer.js +13 -24
  9. package/dist/layers/axes2d/axes2DLayer.js.map +1 -1
  10. package/dist/layers/colormap/colormap.fs.glsl.d.ts +1 -1
  11. package/dist/layers/colormap/colormap.fs.glsl.js +1 -1
  12. package/dist/layers/grid3d/cellProperty.fs.glsl.d.ts +1 -1
  13. package/dist/layers/grid3d/cellProperty.fs.glsl.js +5 -4
  14. package/dist/layers/grid3d/cellProperty.fs.glsl.js.map +1 -1
  15. package/dist/layers/grid3d/cellProperty.vs.glsl.d.ts +1 -1
  16. package/dist/layers/grid3d/cellProperty.vs.glsl.js +3 -2
  17. package/dist/layers/grid3d/cellProperty.vs.glsl.js.map +1 -1
  18. package/dist/layers/grid3d/line.fs.glsl.d.ts +1 -1
  19. package/dist/layers/grid3d/line.fs.glsl.js +3 -1
  20. package/dist/layers/grid3d/line.fs.glsl.js.map +1 -1
  21. package/dist/layers/grid3d/line.vs.glsl.d.ts +1 -1
  22. package/dist/layers/grid3d/line.vs.glsl.js +4 -0
  23. package/dist/layers/grid3d/line.vs.glsl.js.map +1 -1
  24. package/dist/layers/grid3d/nodeProperty.fs.glsl.d.ts +1 -1
  25. package/dist/layers/grid3d/nodeProperty.fs.glsl.js +3 -2
  26. package/dist/layers/grid3d/nodeProperty.fs.glsl.js.map +1 -1
  27. package/dist/layers/grid3d/nodeProperty.vs.glsl.d.ts +1 -1
  28. package/dist/layers/grid3d/nodeProperty.vs.glsl.js +3 -2
  29. package/dist/layers/grid3d/nodeProperty.vs.glsl.js.map +1 -1
  30. package/dist/layers/grid3d/privateGrid3dLayer.d.ts +1 -18
  31. package/dist/layers/grid3d/privateGrid3dLayer.js +18 -25
  32. package/dist/layers/grid3d/privateGrid3dLayer.js.map +1 -1
  33. package/dist/layers/map/line.fs.glsl.d.ts +1 -1
  34. package/dist/layers/map/line.fs.glsl.js +2 -1
  35. package/dist/layers/map/line.fs.glsl.js.map +1 -1
  36. package/dist/layers/map/line.vs.glsl.d.ts +1 -1
  37. package/dist/layers/map/line.vs.glsl.js +4 -0
  38. package/dist/layers/map/line.vs.glsl.js.map +1 -1
  39. package/dist/layers/map/map.fs.glsl.d.ts +1 -1
  40. package/dist/layers/map/map.fs.glsl.js +6 -8
  41. package/dist/layers/map/map.fs.glsl.js.map +1 -1
  42. package/dist/layers/map/map.vs.glsl.d.ts +1 -1
  43. package/dist/layers/map/map.vs.glsl.js +2 -4
  44. package/dist/layers/map/map.vs.glsl.js.map +1 -1
  45. package/dist/layers/map/privateMapLayer.js +4 -8
  46. package/dist/layers/map/privateMapLayer.js.map +1 -1
  47. package/dist/layers/northarrow/northArrow3DLayer.js +4 -8
  48. package/dist/layers/northarrow/northArrow3DLayer.js.map +1 -1
  49. package/dist/layers/northarrow/northarrow.fs.glsl.d.ts +1 -1
  50. package/dist/layers/northarrow/northarrow.fs.glsl.js +1 -1
  51. package/dist/layers/piechart/pieChartLayer.js +4 -7
  52. package/dist/layers/piechart/pieChartLayer.js.map +1 -1
  53. package/dist/layers/piechart/piechart.fs.glsl.d.ts +1 -1
  54. package/dist/layers/piechart/piechart.fs.glsl.js +1 -1
  55. package/dist/layers/points/point.vs.glsl.d.ts +1 -1
  56. package/dist/layers/points/point.vs.glsl.js +2 -2
  57. package/dist/layers/polylines/polyline.vs.glsl.d.ts +1 -1
  58. package/dist/layers/polylines/polyline.vs.glsl.js +1 -1
  59. package/dist/layers/triangle/line.fs.glsl.d.ts +1 -1
  60. package/dist/layers/triangle/line.fs.glsl.js +4 -1
  61. package/dist/layers/triangle/line.fs.glsl.js.map +1 -1
  62. package/dist/layers/triangle/line.vs.glsl.d.ts +1 -1
  63. package/dist/layers/triangle/line.vs.glsl.js +4 -1
  64. package/dist/layers/triangle/line.vs.glsl.js.map +1 -1
  65. package/dist/layers/triangle/privateTriangleLayer.js +4 -12
  66. package/dist/layers/triangle/privateTriangleLayer.js.map +1 -1
  67. package/dist/layers/triangle/triangle.fs.glsl.d.ts +1 -1
  68. package/dist/layers/triangle/triangle.fs.glsl.js +5 -5
  69. package/dist/layers/triangle/triangle.vs.glsl.d.ts +1 -1
  70. package/dist/layers/triangle/triangle.vs.glsl.js +3 -5
  71. package/dist/layers/triangle/triangle.vs.glsl.js.map +1 -1
  72. package/dist/layers/well_markers/marker.fs.glsl.d.ts +1 -1
  73. package/dist/layers/well_markers/marker.fs.glsl.js +2 -2
  74. package/dist/layers/well_markers/marker.vs.glsl.d.ts +1 -1
  75. package/dist/layers/well_markers/marker.vs.glsl.js +3 -5
  76. package/dist/layers/well_markers/marker.vs.glsl.js.map +1 -1
  77. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME axes-fragment-shader\n\nprecision highp float;\n\nout vec4 fragColor;\n\nuniform vec4 uColor;\n\nvoid main(void) {\n fragColor = uColor;\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME axes-fragment-shader\n\nprecision highp float;\n\nin vec4 vColor;\nout vec4 fragColor;\n\nvoid main(void) {\n fragColor = vColor;\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
2
2
  export default _default;
@@ -3,12 +3,12 @@ export default `#version 300 es
3
3
 
4
4
  precision highp float;
5
5
 
6
+ in vec4 vColor;
6
7
  out vec4 fragColor;
7
8
 
8
- uniform vec4 uColor;
9
-
10
9
  void main(void) {
11
- fragColor = uColor;
10
+ fragColor = vColor;
11
+ DECKGL_FILTER_COLOR(fragColor, geometry);
12
12
  }
13
13
  `;
14
14
  //# sourceMappingURL=box.fs.glsl.js.map
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME axes-grid-vertex-shader\n\nprecision highp float;\n\nin vec3 positions;\n\nvoid main(void) {\n vec3 position_commonspace = project_position(positions);\n gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 0.0));\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME axes-grid-vertex-shader\n\nprecision highp float;\n\nin vec3 positions;\nout vec4 vColor;\nuniform vec4 uColor;\n\nvoid main(void) {\n vec3 position_commonspace = project_position(positions);\n gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 0.0));\n vColor = vec4(uColor.rgb, uColor.a * layer.opacity);\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n";
2
2
  export default _default;
@@ -4,10 +4,14 @@ export default `#version 300 es
4
4
  precision highp float;
5
5
 
6
6
  in vec3 positions;
7
+ out vec4 vColor;
8
+ uniform vec4 uColor;
7
9
 
8
10
  void main(void) {
9
11
  vec3 position_commonspace = project_position(positions);
10
12
  gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 0.0));
13
+ vColor = vec4(uColor.rgb, uColor.a * layer.opacity);
14
+ DECKGL_FILTER_COLOR(vColor, geometry);
11
15
  }
12
16
  `;
13
17
  //# sourceMappingURL=box.vs.glsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"box.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/axes/box.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;CAWd,CAAC"}
1
+ {"version":3,"file":"box.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/axes/box.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;CAed,CAAC"}
@@ -21,21 +21,17 @@ export default class BoxLayer extends Layer {
21
21
  }
22
22
  _getModels(device) {
23
23
  const color = this.props.color.map((x) => (x !== null && x !== void 0 ? x : 0) / 255);
24
- const grids = new Model(device, {
25
- id: `${this.props.id}-grids`,
24
+ const grids = new Model(device, Object.assign(Object.assign({ id: `${this.props.id}-grids` }, super.getShaders({
26
25
  vs: vertexShader,
27
26
  fs: fragmentShader,
28
- uniforms: { uColor: Array.from(color) },
29
- geometry: new Geometry({
27
+ modules: [project32],
28
+ })), { uniforms: { uColor: Array.from(color) }, geometry: new Geometry({
30
29
  topology: "line-list",
31
30
  attributes: {
32
31
  positions: new Float32Array(this.props.lines),
33
32
  },
34
33
  vertexCount: this.props.lines.length / 3,
35
- }),
36
- modules: [project32],
37
- isInstanced: false, // This only works when set to false.
38
- });
34
+ }), isInstanced: false }));
39
35
  return {
40
36
  model: grids,
41
37
  models: [grids].filter(Boolean),
@@ -1 +1 @@
1
- {"version":3,"file":"boxLayer.js","sourceRoot":"","sources":["../../../src/layers/axes/boxLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAGpE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIlD,OAAO,cAAc,MAAM,eAAe,CAAC;AAC3C,OAAO,YAAY,MAAM,eAAe,CAAC;AAOzC,MAAM,YAAY,GAAG;IACjB,IAAI,EAAE,KAAK;IACX,EAAE,EAAE,WAAW;IACf,gBAAgB,EAAE,iBAAiB,CAAC,SAAS;IAC7C,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,KAAoB;IACtD,eAAe,CAAC,OAA2B;QACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,EAAE,OAAO,EAA0B;QAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,MAAc;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAD,CAAC,cAAD,CAAC,GAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE;YAC5B,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ;YAC5B,EAAE,EAAE,YAAY;YAChB,EAAE,EAAE,cAAc;YAClB,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACvC,QAAQ,EAAE,IAAI,QAAQ,CAAC;gBACnB,QAAQ,EAAE,WAAW;gBACrB,UAAU,EAAE;oBACR,SAAS,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;iBAChD;gBACD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;aAC3C,CAAC;YACF,OAAO,EAAE,CAAC,SAAS,CAAC;YACpB,WAAW,EAAE,KAAK,EAAE,qCAAqC;SAC5D,CAAC,CAAC;QAEH,OAAO;YACH,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,YAAY,EAAE,EAAE,KAAK,EAAE;SAC1B,CAAC;IACN,CAAC;CACJ;AAED,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;AAChC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC"}
1
+ {"version":3,"file":"boxLayer.js","sourceRoot":"","sources":["../../../src/layers/axes/boxLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAGpE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIlD,OAAO,cAAc,MAAM,eAAe,CAAC;AAC3C,OAAO,YAAY,MAAM,eAAe,CAAC;AAOzC,MAAM,YAAY,GAAG;IACjB,IAAI,EAAE,KAAK;IACX,EAAE,EAAE,WAAW;IACf,gBAAgB,EAAE,iBAAiB,CAAC,SAAS;IAC7C,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,KAAoB;IACtD,eAAe,CAAC,OAA2B;QACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,EAAE,OAAO,EAA0B;QAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,MAAc;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAD,CAAC,cAAD,CAAC,GAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,gCAC1B,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,IACzB,KAAK,CAAC,UAAU,CAAC;YAChB,EAAE,EAAE,YAAY;YAChB,EAAE,EAAE,cAAc;YAClB,OAAO,EAAE,CAAC,SAAS,CAAC;SACvB,CAAC,KACF,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EACvC,QAAQ,EAAE,IAAI,QAAQ,CAAC;gBACnB,QAAQ,EAAE,WAAW;gBACrB,UAAU,EAAE;oBACR,SAAS,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;iBAChD;gBACD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;aAC3C,CAAC,EACF,WAAW,EAAE,KAAK,IACpB,CAAC;QAEH,OAAO;YACH,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/B,YAAY,EAAE,EAAE,KAAK,EAAE;SAC1B,CAAC;IACN,CAAC;CACJ;AAED,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;AAChC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC"}
@@ -469,20 +469,17 @@ export default class Axes2DLayer extends Layer {
469
469
  }
470
470
  lineColor = lineColor.map((x) => (x !== null && x !== void 0 ? x : 0) / 255);
471
471
  }
472
- const lineModel = new Model(device, {
473
- id: `${this.props.id}-lines`,
472
+ const lineModel = new Model(device, Object.assign(Object.assign({ id: `${this.props.id}-lines` }, super.getShaders({
474
473
  vs: lineVertexShader,
475
474
  fs: lineFragmentShader,
476
- geometry: new Geometry({
475
+ modules: [project32, linesUniforms],
476
+ })), { geometry: new Geometry({
477
477
  topology: "line-list",
478
478
  attributes: {
479
479
  positions: new Float32Array(tick_and_axes_lines),
480
480
  },
481
481
  vertexCount: tick_and_axes_lines.length / 3,
482
- }),
483
- modules: [project32, linesUniforms],
484
- isInstanced: false,
485
- });
482
+ }), isInstanced: false }));
486
483
  lineModel.shaderInputs.setProps({
487
484
  lines: {
488
485
  uColor: lineColor,
@@ -499,20 +496,17 @@ export default class Axes2DLayer extends Layer {
499
496
  }
500
497
  bColor = bColor.map((x) => (x !== null && x !== void 0 ? x : 0) / 255);
501
498
  }
502
- const backgroundModel = new Model(device, {
503
- id: `${this.props.id}-background`,
499
+ const backgroundModel = new Model(device, Object.assign(Object.assign({ id: `${this.props.id}-background` }, super.getShaders({
504
500
  vs: lineVertexShader,
505
501
  fs: lineFragmentShader,
506
- geometry: new Geometry({
502
+ modules: [project32, linesUniforms],
503
+ })), { geometry: new Geometry({
507
504
  topology: "triangle-list",
508
505
  attributes: {
509
506
  positions: new Float32Array(background_lines),
510
507
  },
511
508
  vertexCount: background_lines.length / 3,
512
- }),
513
- modules: [project32, linesUniforms],
514
- isInstanced: false,
515
- });
509
+ }), isInstanced: false }));
516
510
  backgroundModel.shaderInputs.setProps({
517
511
  lines: {
518
512
  uColor: bColor,
@@ -630,15 +624,14 @@ export default class Axes2DLayer extends Layer {
630
624
  x1 += 1;
631
625
  }
632
626
  }
633
- const model = new Model(device, {
634
- id: `${this.props.id}-${label}`,
627
+ const model = new Model(device, Object.assign(Object.assign({ id: `${this.props.id}-${label}` }, super.getShaders({
635
628
  vs: labelVertexShader,
636
629
  fs: labelFragmentShader,
637
- bindings: {
630
+ modules: [project32, axesUniforms],
631
+ })), { bindings: {
638
632
  // @ts-ignore
639
633
  fontTexture,
640
- },
641
- geometry: new Geometry({
634
+ }, geometry: new Geometry({
642
635
  topology: "triangle-list",
643
636
  attributes: {
644
637
  positions,
@@ -648,11 +641,7 @@ export default class Axes2DLayer extends Layer {
648
641
  },
649
642
  },
650
643
  vertexCount: positions.length / 3,
651
- }),
652
- bufferLayout: this.getAttributeManager().getBufferLayouts(),
653
- modules: [project32, axesUniforms],
654
- isInstanced: false,
655
- });
644
+ }), bufferLayout: this.getAttributeManager().getBufferLayouts(), isInstanced: false }));
656
645
  model.shaderInputs.setProps({
657
646
  axes: {
658
647
  uAxisColor: lineColor,
@@ -1 +1 @@
1
- {"version":3,"file":"axes2DLayer.js","sourceRoot":"","sources":["../../../src/layers/axes2d/axes2DLayer.ts"],"names":[],"mappings":"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AE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAElD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACrC,CAAC,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAC9C,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACrD,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,E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"}
1
+ {"version":3,"file":"axes2DLayer.js","sourceRoot":"","sources":["../../../src/layers/axes2d/axes2DLayer.ts"],"names":[],"mappings":"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AE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QAElD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACrC,CAAC,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAC9C,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QAClD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACnD,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;QACrD,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,E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"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME colormap-fragment-shader\n\nprecision highp float;\n\nin vec2 vTexCoord;\n\nout vec4 fragColor;\n\nuniform sampler2D bitmapTexture; // Property map\nuniform sampler2D colormapTexture;\nuniform sampler2D heightMapTexture; // Height map texture, if defined.\n\n// Compute the normal value for every pixel, based on the current value and two values aroud it.\nvec3 normal(float val) {\n vec2 dr = 1.0 / map.bitmapResolution;\n\n if (map.isHeightMapTextureDefined) {\n float valueRangeSize = map.heightValueRangeMax - map.heightValueRangeMin;\n float p0 = valueRangeSize * val;\n float px = valueRangeSize * decode_rgb2float(texture(heightMapTexture, vTexCoord + vec2(1.0, 0.0) / map.bitmapResolution).rgb);\n float py = valueRangeSize * decode_rgb2float(texture(heightMapTexture, vTexCoord + vec2(0.0, 1.0) / map.bitmapResolution).rgb);\n vec3 dx = vec3(1.0, 0.0, px - p0);\n vec3 dy = vec3(0.0, 1.0, py - p0);\n return normalize(cross(dx, dy));\n }\n else {\n float valueRangeSize = map.valueRangeMax - map.valueRangeMin;\n float p0 = valueRangeSize * val;\n float px = valueRangeSize * decode_rgb2float(texture(bitmapTexture, vTexCoord + vec2(1.0, 0.0) / map.bitmapResolution).rgb);\n float py = valueRangeSize * decode_rgb2float(texture(bitmapTexture, vTexCoord + vec2(0.0, 1.0) / map.bitmapResolution).rgb);\n vec3 dx = vec3(1.0, 0.0, px - p0);\n vec3 dy = vec3(0.0, 1.0, py - p0);\n return normalize(cross(dx, dy));\n }\n}\n\n// Compute how much a pixel is in the shadow based on its normal and where the light comes from.\nfloat shadow(vec3 normal) {\n vec3 lightDirection = vec3(1.0, 1.0, 1.0);\n float ambientLightIntensity = 0.5;\n float diffuseLightIntensity = 0.5;\n float diffuse = diffuseLightIntensity * dot(normal, normalize(lightDirection));\n return clamp(ambientLightIntensity + diffuse, 0.0, 1.0);\n}\n\nvoid main(void) {\n vec4 bitmapColor = texture(bitmapTexture, vTexCoord);\n\n // If it's a picking pass, we just return the raw property map value.\n if (picking.isActive > 0.5) {\n fragColor = bitmapColor;\n return;\n }\n\n // Decode the RGB value into a float. See decoder.fs.glsl for more details.\n float val = decode_rgb2float(bitmapColor.rgb); // The resulting val will be in [0, 1] interval.\n float property = val * (map.valueRangeMax - map.valueRangeMin) + map.valueRangeMin;\n\n // Compute the color from the colormap.\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n float x = (property - map.colorMapRangeMin) / (map.colorMapRangeMax - map.colorMapRangeMin);\n if (x < 0.0 || x > 1.0) {\n // Out of range. Use clampcolor.\n if (map.isClampColor) {\n color = vec4(map.colorMapClampColor.rgb, 1.0);\n }\n else if (map.isColorMapClampColorTransparent) {\n discard;\n return;\n }\n else {\n // Use min/max color to clamp.\n x = max(0.0, x);\n x = min(1.0, x);\n\n color = texture(colormapTexture, vec2(x, 0.5));\n }\n }\n else {\n color = texture(colormapTexture, vec2(x, 0.5));\n }\n fragColor = vec4(color.rgb, color.a * bitmapColor.a * layer.opacity);\n\n // Hillshading.\n if (map.hillshading) {\n vec4 texture_val = map.isHeightMapTextureDefined ? texture(heightMapTexture, vTexCoord)\n : texture(bitmapTexture, vTexCoord);\n float val = decode_rgb2float(texture_val.rgb);\n\n // Compute the shadow value, how dark a pixel will be, 1 is in complete shadow, 0 is in complete light.\n float shadow = shadow(normal(val));\n fragColor = vec4(fragColor.rgb * shadow, fragColor.a);\n }\n\n // Contour lines.\n if (map.contours) {\n vec4 texture_val = map.isHeightMapTextureDefined ? texture(heightMapTexture, vTexCoord)\n : texture(bitmapTexture, vTexCoord);\n float val = decode_rgb2float(texture_val.rgb);\n float property = val * (map.heightValueRangeMax - map.heightValueRangeMin) + map.heightValueRangeMin;\n\n float x = (property - map.contourReferencePoint) / map.contourInterval; \n float f = fract(x);\n float df = fwidth(x);\n float c = smoothstep(df * 1.0, df * 2.0, f); // smootstep from/to no of pixels distance from contour line. // keep: \n fragColor = fragColor * vec4(c, c, c, 1.0);\n }\n\n geometry.uv = vTexCoord;\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME colormap-fragment-shader\n\nprecision highp float;\n\nin vec2 vTexCoord;\n\nout vec4 fragColor;\n\nuniform sampler2D bitmapTexture; // Property map\nuniform sampler2D colormapTexture;\nuniform sampler2D heightMapTexture; // Height map texture, if defined.\n\n// Compute the normal value for every pixel, based on the current value and two values aroud it.\nvec3 normal(float val) {\n vec2 dr = 1.0 / map.bitmapResolution;\n\n if (map.isHeightMapTextureDefined) {\n float valueRangeSize = map.heightValueRangeMax - map.heightValueRangeMin;\n float p0 = valueRangeSize * val;\n float px = valueRangeSize * decode_rgb2float(texture(heightMapTexture, vTexCoord + vec2(1.0, 0.0) / map.bitmapResolution).rgb);\n float py = valueRangeSize * decode_rgb2float(texture(heightMapTexture, vTexCoord + vec2(0.0, 1.0) / map.bitmapResolution).rgb);\n vec3 dx = vec3(1.0, 0.0, px - p0);\n vec3 dy = vec3(0.0, 1.0, py - p0);\n return normalize(cross(dx, dy));\n }\n else {\n float valueRangeSize = map.valueRangeMax - map.valueRangeMin;\n float p0 = valueRangeSize * val;\n float px = valueRangeSize * decode_rgb2float(texture(bitmapTexture, vTexCoord + vec2(1.0, 0.0) / map.bitmapResolution).rgb);\n float py = valueRangeSize * decode_rgb2float(texture(bitmapTexture, vTexCoord + vec2(0.0, 1.0) / map.bitmapResolution).rgb);\n vec3 dx = vec3(1.0, 0.0, px - p0);\n vec3 dy = vec3(0.0, 1.0, py - p0);\n return normalize(cross(dx, dy));\n }\n}\n\n// Compute how much a pixel is in the shadow based on its normal and where the light comes from.\nfloat shadow(vec3 normal) {\n vec3 lightDirection = vec3(1.0, 1.0, 1.0);\n float ambientLightIntensity = 0.5;\n float diffuseLightIntensity = 0.5;\n float diffuse = diffuseLightIntensity * dot(normal, normalize(lightDirection));\n return clamp(ambientLightIntensity + diffuse, 0.0, 1.0);\n}\n\nvoid main(void) {\n vec4 bitmapColor = texture(bitmapTexture, vTexCoord);\n\n // If it's a picking pass, we just return the raw property map value.\n if (picking.isActive > 0.5) {\n fragColor = bitmapColor;\n return;\n }\n\n // Decode the RGB value into a float. See decoder.fs.glsl for more details.\n float val = decode_rgb2float(bitmapColor.rgb); // The resulting val will be in [0, 1] interval.\n float property = val * (map.valueRangeMax - map.valueRangeMin) + map.valueRangeMin;\n\n // Compute the color from the colormap.\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n float x = (property - map.colorMapRangeMin) / (map.colorMapRangeMax - map.colorMapRangeMin);\n if (x < 0.0 || x > 1.0) {\n // Out of range. Use clampcolor.\n if (map.isClampColor) {\n color = vec4(map.colorMapClampColor.rgb, 1.0);\n }\n else if (map.isColorMapClampColorTransparent) {\n discard;\n return;\n }\n else {\n // Use min/max color to clamp.\n x = max(0.0, x);\n x = min(1.0, x);\n\n color = texture(colormapTexture, vec2(x, 0.5));\n }\n }\n else {\n color = texture(colormapTexture, vec2(x, 0.5));\n }\n fragColor = vec4(color.rgb, color.a * bitmapColor.a * layer.opacity);\n\n // Hillshading.\n if (map.hillshading) {\n vec4 texture_val = map.isHeightMapTextureDefined ? texture(heightMapTexture, vTexCoord)\n : texture(bitmapTexture, vTexCoord);\n float val = decode_rgb2float(texture_val.rgb);\n\n // Compute the shadow value, how dark a pixel will be, 1 is in complete shadow, 0 is in complete light.\n float shadow = shadow(normal(val));\n fragColor = vec4(fragColor.rgb * shadow, fragColor.a);\n }\n\n // Contour lines.\n if (map.contours) {\n vec4 texture_val = map.isHeightMapTextureDefined ? texture(heightMapTexture, vTexCoord)\n : texture(bitmapTexture, vTexCoord);\n float val = decode_rgb2float(texture_val.rgb);\n float property = val * (map.heightValueRangeMax - map.heightValueRangeMin) + map.heightValueRangeMin;\n\n float x = (property - map.contourReferencePoint) / map.contourInterval; \n float f = fract(x);\n float df = fwidth(x);\n float c = smoothstep(df * 1.0, df * 2.0, f); // smootstep from/to no of pixels distance from contour line. // keep: \n fragColor = fragColor * vec4(c, c, c, layer.opacity);\n }\n\n geometry.uv = vTexCoord;\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
2
2
  export default _default;
@@ -104,7 +104,7 @@ void main(void) {
104
104
  float f = fract(x);
105
105
  float df = fwidth(x);
106
106
  float c = smoothstep(df * 1.0, df * 2.0, f); // smootstep from/to no of pixels distance from contour line. // keep:
107
- fragColor = fragColor * vec4(c, c, c, 1.0);
107
+ fragColor = fragColor * vec4(c, c, c, layer.opacity);
108
108
  }
109
109
 
110
110
  geometry.uv = vTexCoord;
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-cell-fragment-shader\n\nin vec3 cameraPosition;\nin vec4 position_commonspace;\n\nflat in vec3 normal;\nflat in int vertexIndex;\nflat in float property;\n\nout vec4 fragColor;\n\nuniform sampler2D colormap;\n\n// Calculate color from propertyValue using discrete colormap.\nvec4 getDiscretePropertyColor (float propertyValue) {\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n // On some machines (like in docker container), float comparison and texture lookup may fail due to precision.\n // Use this tolerance for comparison and to shift the lookup position.\n float tolerance = (1.0 / grid.colorMapSize) * 0.5;\n\n if (propertyValue < grid.colorMapRangeMin - tolerance || propertyValue > grid.colorMapRangeMax + tolerance) {\n // Out of range. Use clampcolor.\n if (grid.isClampColor) {\n color = grid.colorMapClampColor;\n if( color[3] == 0.0 ) {\n discard;\n }\n }\n else {\n // Use min/max color to clamp.\n float p = clamp (propertyValue, grid.colorMapRangeMin, grid.colorMapRangeMax);\n float x = p / grid.colorMapSize;\n color = texture(colormap, vec2(x + tolerance, 0.5));\n }\n }\n else {\n float x = propertyValue / grid.colorMapSize;\n color = texture(colormap, vec2(x + tolerance, 0.5));\n }\n \n return color;\n}\n\nvec4 getContinuousPropertyColor (float propertyValue) {\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n float normalizedValue = (propertyValue - grid.colorMapRangeMin) / (grid.colorMapRangeMax - grid.colorMapRangeMin);\n if (normalizedValue < 0.0 || normalizedValue > 1.0) {\n // Out of range. Use clampcolor.\n if (grid.isClampColor) {\n color = grid.colorMapClampColor;\n if( color[3] == 0.0 ) {\n discard;\n }\n }\n else {\n // Use min/max color to clamp.\n normalizedValue = clamp (normalizedValue, 0.0, 1.0); \n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n }\n else {\n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n return color;\n}\n\nvoid main(void) {\n\n if (picking.isActive > 0.5 && !(picking.isAttribute > 0.5)) {\n fragColor = encodeVertexIndexToRGB(vertexIndex); \n return;\n }\n\n if (isnan(property)) {\n vec3 lightColor = lighting_getLightColor(grid.undefinedPropertyColor.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, 1.0);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n return;\n } \n\n // This may happen due to GPU interpolation precision causing color artifacts.\n float propertyValue = clamp(property, grid.valueRangeMin, grid.valueRangeMax);\n\n vec4 color = grid.isColoringDiscrete ? getDiscretePropertyColor(round(propertyValue)) : getContinuousPropertyColor(propertyValue);\n\n // Use two sided phong lighting. This has no effect if \"material\" property is not set.\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, 1.0);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-cell-fragment-shader\n\nin vec3 cameraPosition;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nflat in vec3 normal;\nflat in int vertexIndex;\nflat in float property;\n\nout vec4 fragColor;\n\nuniform sampler2D colormap;\n\n// Calculate color from propertyValue using discrete colormap.\nvec4 getDiscretePropertyColor (float propertyValue) {\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n // On some machines (like in docker container), float comparison and texture lookup may fail due to precision.\n // Use this tolerance for comparison and to shift the lookup position.\n float tolerance = (1.0 / grid.colorMapSize) * 0.5;\n\n if (propertyValue < grid.colorMapRangeMin - tolerance || propertyValue > grid.colorMapRangeMax + tolerance) {\n // Out of range. Use clampcolor.\n if (grid.isClampColor) {\n color = grid.colorMapClampColor;\n if( color[3] == 0.0 ) {\n discard;\n }\n }\n else {\n // Use min/max color to clamp.\n float p = clamp (propertyValue, grid.colorMapRangeMin, grid.colorMapRangeMax);\n float x = p / grid.colorMapSize;\n color = texture(colormap, vec2(x + tolerance, 0.5));\n }\n }\n else {\n float x = propertyValue / grid.colorMapSize;\n color = texture(colormap, vec2(x + tolerance, 0.5));\n }\n \n return color;\n}\n\nvec4 getContinuousPropertyColor (float propertyValue) {\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n float normalizedValue = (propertyValue - grid.colorMapRangeMin) / (grid.colorMapRangeMax - grid.colorMapRangeMin);\n if (normalizedValue < 0.0 || normalizedValue > 1.0) {\n // Out of range. Use clampcolor.\n if (grid.isClampColor) {\n color = grid.colorMapClampColor;\n if( color[3] == 0.0 ) {\n discard;\n }\n }\n else {\n // Use min/max color to clamp.\n normalizedValue = clamp (normalizedValue, 0.0, 1.0); \n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n }\n else {\n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n return color;\n}\n\nvoid main(void) {\n\n if (picking.isActive > 0.5 && !(picking.isAttribute > 0.5)) {\n fragColor = encodeVertexIndexToRGB(vertexIndex); \n return;\n }\n\n if (isnan(property)) {\n vec3 lightColor = lighting_getLightColor(grid.undefinedPropertyColor.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, vColor.a);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n return;\n }\n\n // This may happen due to GPU interpolation precision causing color artifacts.\n float propertyValue = clamp(property, grid.valueRangeMin, grid.valueRangeMax);\n \n vec4 color = grid.isColoringDiscrete ? getDiscretePropertyColor(round(propertyValue)) : getContinuousPropertyColor(propertyValue);\n\n // Use two sided phong lighting. This has no effect if \"material\" property is not set.\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, vColor.a);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
2
2
  export default _default;
@@ -4,6 +4,7 @@ export default `\
4
4
 
5
5
  in vec3 cameraPosition;
6
6
  in vec4 position_commonspace;
7
+ in vec4 vColor;
7
8
 
8
9
  flat in vec3 normal;
9
10
  flat in int vertexIndex;
@@ -75,19 +76,19 @@ void main(void) {
75
76
 
76
77
  if (isnan(property)) {
77
78
  vec3 lightColor = lighting_getLightColor(grid.undefinedPropertyColor.rgb, cameraPosition, position_commonspace.xyz, normal);
78
- fragColor = vec4(lightColor, 1.0);
79
+ fragColor = vec4(lightColor, vColor.a);
79
80
  DECKGL_FILTER_COLOR(fragColor, geometry);
80
81
  return;
81
- }
82
+ }
82
83
 
83
84
  // This may happen due to GPU interpolation precision causing color artifacts.
84
85
  float propertyValue = clamp(property, grid.valueRangeMin, grid.valueRangeMax);
85
-
86
+
86
87
  vec4 color = grid.isColoringDiscrete ? getDiscretePropertyColor(round(propertyValue)) : getContinuousPropertyColor(propertyValue);
87
88
 
88
89
  // Use two sided phong lighting. This has no effect if "material" property is not set.
89
90
  vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);
90
- fragColor = vec4(lightColor, 1.0);
91
+ fragColor = vec4(lightColor, vColor.a);
91
92
  DECKGL_FILTER_COLOR(fragColor, geometry);
92
93
  }
93
94
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"cellProperty.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/cellProperty.fs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Fd,CAAC"}
1
+ {"version":3,"file":"cellProperty.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/cellProperty.fs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Fd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-cell-vertex-shader\n\nin vec3 positions;\nin vec3 normals;\nin float properties;\n\n// Outputs to fragment shader\nout vec3 cameraPosition;\nout vec4 position_commonspace;\n\nflat out vec3 normal;\nflat out int vertexIndex;\nflat out float property;\n\nconst vec3 pickingColor = vec3(1.0, 1.0, 0.0);\n\nvoid main(void) { \n \n vertexIndex = gl_VertexID;\n cameraPosition = project.cameraPosition; \n geometry.pickingColor = pickingColor;\n\n normal = normals;\n vec3 position = positions;\n\n float zSign = grid.ZIncreasingDownwards ? -1.0 : 1.0;\n\n position.z *= zSign;\n normal.z *= zSign;\n\n property = properties;\n\n position_commonspace = vec4(project_position(position), 0.0);\n gl_Position = project_common_position_to_clipspace(position_commonspace);\n\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-cell-vertex-shader\n\nin vec3 positions;\nin vec3 normals;\nin float properties;\n\n// Outputs to fragment shader\nout vec3 cameraPosition;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nflat out vec3 normal;\nflat out int vertexIndex;\nflat out float property;\n\nconst vec3 pickingColor = vec3(1.0, 1.0, 0.0);\n\nvoid main(void) { \n \n vertexIndex = gl_VertexID;\n cameraPosition = project.cameraPosition; \n geometry.pickingColor = pickingColor;\n\n normal = normals;\n vec3 position = positions;\n\n float zSign = grid.ZIncreasingDownwards ? -1.0 : 1.0;\n\n position.z *= zSign;\n normal.z *= zSign;\n\n property = properties;\n\n position_commonspace = vec4(project_position(position), 0.0);\n gl_Position = project_common_position_to_clipspace(position_commonspace);\n\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vColor = vec4(0.0, 0.0, 0.0, layer.opacity);\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n";
2
2
  export default _default;
@@ -9,6 +9,7 @@ in float properties;
9
9
  // Outputs to fragment shader
10
10
  out vec3 cameraPosition;
11
11
  out vec4 position_commonspace;
12
+ out vec4 vColor;
12
13
 
13
14
  flat out vec3 normal;
14
15
  flat out int vertexIndex;
@@ -37,8 +38,8 @@ void main(void) {
37
38
 
38
39
  DECKGL_FILTER_GL_POSITION(gl_Position, geometry);
39
40
 
40
- vec4 color = vec4(0.0);
41
- DECKGL_FILTER_COLOR(color, geometry);
41
+ vColor = vec4(0.0, 0.0, 0.0, layer.opacity);
42
+ DECKGL_FILTER_COLOR(vColor, geometry);
42
43
  }
43
44
  `;
44
45
  //# sourceMappingURL=cellProperty.vs.glsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cellProperty.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/cellProperty.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Cd,CAAC"}
1
+ {"version":3,"file":"cellProperty.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/cellProperty.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Cd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-cell-lines-fragment-shader\n\nprecision highp float;\n\nout vec4 fragColor;\n\nvoid main(void) {\n fragColor = vec4(0.0, 0.0, 0.0, 1.0);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-cell-lines-fragment-shader\n\nprecision highp float;\n\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n fragColor = vColor;\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
2
2
  export default _default;
@@ -4,10 +4,12 @@ export default `\
4
4
 
5
5
  precision highp float;
6
6
 
7
+ in vec4 vColor;
8
+
7
9
  out vec4 fragColor;
8
10
 
9
11
  void main(void) {
10
- fragColor = vec4(0.0, 0.0, 0.0, 1.0);
12
+ fragColor = vColor;
11
13
  DECKGL_FILTER_COLOR(fragColor, geometry);
12
14
  }
13
15
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"line.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/line.fs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;CAYd,CAAC"}
1
+ {"version":3,"file":"line.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/line.fs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;CAcd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-lines-vertex-shader\n\nprecision highp float;\n\nin vec3 positions;\n\nout vec4 position_commonspace;\n\nvoid main(void) {\n vec3 position = positions;\n position[2] *= grid.ZIncreasingDownwards ? -1.0 : 1.0;\n\n vec3 position_commonspace = project_position(position);\n gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 0.0));\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-lines-vertex-shader\n\nprecision highp float;\n\nin vec3 positions;\n\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n vec3 position = positions;\n position[2] *= grid.ZIncreasingDownwards ? -1.0 : 1.0;\n\n vec3 position_commonspace = project_position(position);\n gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 0.0));\n\n vColor = vec4(0.0, 0.0, 0.0, layer.opacity);\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n";
2
2
  export default _default;
@@ -7,6 +7,7 @@ precision highp float;
7
7
  in vec3 positions;
8
8
 
9
9
  out vec4 position_commonspace;
10
+ out vec4 vColor;
10
11
 
11
12
  void main(void) {
12
13
  vec3 position = positions;
@@ -14,6 +15,9 @@ void main(void) {
14
15
 
15
16
  vec3 position_commonspace = project_position(position);
16
17
  gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 0.0));
18
+
19
+ vColor = vec4(0.0, 0.0, 0.0, layer.opacity);
20
+ DECKGL_FILTER_COLOR(vColor, geometry);
17
21
  }
18
22
  `;
19
23
  //# sourceMappingURL=line.vs.glsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"line.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/line.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;CAiBd,CAAC"}
1
+ {"version":3,"file":"line.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/line.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;CAqBd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-node-fragment-shader\n\nin vec3 cameraPosition;\nin vec4 position_commonspace;\nin float property;\n\nflat in vec3 normal;\nflat in int vertexIndex;\n\nout vec4 fragColor;\n\nuniform sampler2D colormap;\n\nvec4 getPropertyColor (float propertyValue) {\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n float normalizedValue = (propertyValue - grid.colorMapRangeMin) / (grid.colorMapRangeMax - grid.colorMapRangeMin);\n if (normalizedValue < 0.0 || normalizedValue > 1.0) {\n // Out of range. Use clampcolor.\n if (grid.isClampColor) {\n color = grid.colorMapClampColor;\n if( color[3] == 0.0 ) {\n discard;\n }\n }\n else {\n // Use min/max color to clamp.\n normalizedValue = clamp (normalizedValue, 0.0, 1.0); \n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n }\n else {\n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n return color;\n}\n\n\nvoid main(void) {\n if (picking.isActive > 0.5 && !(picking.isAttribute > 0.5)) {\n fragColor = encodeVertexIndexToRGB(vertexIndex); \n return;\n }\n \n // This may happen due to GPU interpolation precision causing color artifacts.\n float propertyValue = clamp(property, grid.valueRangeMin, grid.valueRangeMax);\n\n vec4 color = getPropertyColor(propertyValue);\n\n // Use two sided phong lighting. This has no effect if \"material\" property is not set.\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, 1.0);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-node-fragment-shader\n\nin vec3 cameraPosition;\nin vec4 position_commonspace;\nin float property;\nin vec4 vColor;\n\nflat in vec3 normal;\nflat in int vertexIndex;\n\nout vec4 fragColor;\n\nuniform sampler2D colormap;\n\nvec4 getPropertyColor (float propertyValue) {\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);\n float normalizedValue = (propertyValue - grid.colorMapRangeMin) / (grid.colorMapRangeMax - grid.colorMapRangeMin);\n if (normalizedValue < 0.0 || normalizedValue > 1.0) {\n // Out of range. Use clampcolor.\n if (grid.isClampColor) {\n color = grid.colorMapClampColor;\n if( color[3] == 0.0 ) {\n discard;\n }\n }\n else {\n // Use min/max color to clamp.\n normalizedValue = clamp (normalizedValue, 0.0, 1.0); \n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n }\n else {\n color = texture(colormap, vec2(normalizedValue, 0.5));\n }\n return color;\n}\n\n\nvoid main(void) {\n if (picking.isActive > 0.5 && !(picking.isAttribute > 0.5)) {\n fragColor = encodeVertexIndexToRGB(vertexIndex); \n return;\n }\n\n // This may happen due to GPU interpolation precision causing color artifacts.\n float propertyValue = clamp(property, grid.valueRangeMin, grid.valueRangeMax);\n\n vec4 color = getPropertyColor(propertyValue);\n\n // Use two sided phong lighting. This has no effect if \"material\" property is not set.\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, vColor.a);\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
2
2
  export default _default;
@@ -5,6 +5,7 @@ export default `\
5
5
  in vec3 cameraPosition;
6
6
  in vec4 position_commonspace;
7
7
  in float property;
8
+ in vec4 vColor;
8
9
 
9
10
  flat in vec3 normal;
10
11
  flat in int vertexIndex;
@@ -42,7 +43,7 @@ void main(void) {
42
43
  fragColor = encodeVertexIndexToRGB(vertexIndex);
43
44
  return;
44
45
  }
45
-
46
+
46
47
  // This may happen due to GPU interpolation precision causing color artifacts.
47
48
  float propertyValue = clamp(property, grid.valueRangeMin, grid.valueRangeMax);
48
49
 
@@ -50,7 +51,7 @@ void main(void) {
50
51
 
51
52
  // Use two sided phong lighting. This has no effect if "material" property is not set.
52
53
  vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);
53
- fragColor = vec4(lightColor, 1.0);
54
+ fragColor = vec4(lightColor, vColor.a);
54
55
  DECKGL_FILTER_COLOR(fragColor, geometry);
55
56
  }
56
57
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"nodeProperty.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/nodeProperty.fs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDd,CAAC"}
1
+ {"version":3,"file":"nodeProperty.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/nodeProperty.fs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-node-vertex-shader\n\nin vec3 positions;\nin vec3 normals;\n\n// Outputs to fragment shader\nout vec3 cameraPosition;\nout vec4 position_commonspace;\nout float property;\n\nflat out vec3 normal;\nflat out int vertexIndex;\n\nconst vec3 pickingColor = vec3(1.0, 1.0, 0.0);\n\nvoid main(void) { \n vertexIndex = gl_VertexID;\n cameraPosition = project.cameraPosition; \n geometry.pickingColor = pickingColor;\n\n normal = normals;\n vec3 position = positions;\n\n float zSign = grid.ZIncreasingDownwards ? -1.0 : 1.0;\n\n position.z *= zSign;\n normal.z *= zSign;\n\n switch(int(grid.coloringMode)) {\n case 2:\n property = position.x;\n break;\n case 3:\n property = position.y;\n break;\n case 4:\n property = position.z;\n break;\n // case 0 or default should never be used\n default:\n property = position.z;\n break;\n }\n\n position_commonspace = vec4(project_position(position), 0.0);\n gl_Position = project_common_position_to_clipspace(position_commonspace);\n\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vec4 color = vec4(0.0);\n DECKGL_FILTER_COLOR(color, geometry);\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME grid3d-node-vertex-shader\n\nin vec3 positions;\nin vec3 normals;\n\n// Outputs to fragment shader\nout vec3 cameraPosition;\nout vec4 position_commonspace;\nout float property;\nout vec4 vColor;\n\nflat out vec3 normal;\nflat out int vertexIndex;\n\nconst vec3 pickingColor = vec3(1.0, 1.0, 0.0);\n\nvoid main(void) { \n vertexIndex = gl_VertexID;\n cameraPosition = project.cameraPosition; \n geometry.pickingColor = pickingColor;\n\n normal = normals;\n vec3 position = positions;\n\n float zSign = grid.ZIncreasingDownwards ? -1.0 : 1.0;\n\n position.z *= zSign;\n normal.z *= zSign;\n\n switch(int(grid.coloringMode)) {\n case 2:\n property = position.x;\n break;\n case 3:\n property = position.y;\n break;\n case 4:\n property = position.z;\n break;\n // case 0 or default should never be used\n default:\n property = position.z;\n break;\n }\n\n position_commonspace = vec4(project_position(position), 0.0);\n gl_Position = project_common_position_to_clipspace(position_commonspace);\n\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n vColor = vec4(0.0, 0.0, 0.0, layer.opacity);\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n";
2
2
  export default _default;
@@ -9,6 +9,7 @@ in vec3 normals;
9
9
  out vec3 cameraPosition;
10
10
  out vec4 position_commonspace;
11
11
  out float property;
12
+ out vec4 vColor;
12
13
 
13
14
  flat out vec3 normal;
14
15
  flat out int vertexIndex;
@@ -49,8 +50,8 @@ void main(void) {
49
50
 
50
51
  DECKGL_FILTER_GL_POSITION(gl_Position, geometry);
51
52
 
52
- vec4 color = vec4(0.0);
53
- DECKGL_FILTER_COLOR(color, geometry);
53
+ vColor = vec4(0.0, 0.0, 0.0, layer.opacity);
54
+ DECKGL_FILTER_COLOR(vColor, geometry);
54
55
  }
55
56
  `;
56
57
  //# sourceMappingURL=nodeProperty.vs.glsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nodeProperty.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/nodeProperty.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDd,CAAC"}
1
+ {"version":3,"file":"nodeProperty.vs.glsl.js","sourceRoot":"","sources":["../../../src/layers/grid3d/nodeProperty.vs.glsl.ts"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDd,CAAC"}
@@ -31,24 +31,7 @@ export default class PrivateLayer extends Layer<PrivateLayerProps> {
31
31
  initializeState(context: DeckGLLayerContext): void;
32
32
  shouldUpdateState({ props, oldProps, context, changeFlags, }: UpdateParameters<Layer<PrivateLayerProps>>): boolean;
33
33
  updateState({ context }: UpdateParameters<Layer<PrivateLayerProps>>): void;
34
- _getModels(context: DeckGLLayerContext): (Model | {
35
- readonly name: "grid";
36
- readonly vs: "uniform gridUniforms {\n bool ZIncreasingDownwards;\n float valueRangeMin;\n float valueRangeMax;\n float colorMapRangeMin;\n float colorMapRangeMax;\n vec4 colorMapClampColor;\n bool isClampColor;\n float coloringMode;\n vec3 undefinedPropertyColor;\n bool isColoringDiscrete;\n float colorMapSize;\n} grid;\n";
37
- readonly fs: "uniform gridUniforms {\n bool ZIncreasingDownwards;\n float valueRangeMin;\n float valueRangeMax;\n float colorMapRangeMin;\n float colorMapRangeMax;\n vec4 colorMapClampColor;\n bool isClampColor;\n float coloringMode;\n vec3 undefinedPropertyColor;\n bool isColoringDiscrete;\n float colorMapSize;\n} grid;\n";
38
- readonly uniformTypes: {
39
- readonly ZIncreasingDownwards: "u32";
40
- readonly valueRangeMin: "f32";
41
- readonly valueRangeMax: "f32";
42
- readonly colorMapRangeMin: "f32";
43
- readonly colorMapRangeMax: "f32";
44
- readonly colorMapClampColor: "vec4<f32>";
45
- readonly isClampColor: "u32";
46
- readonly coloringMode: "f32";
47
- readonly undefinedPropertyColor: "vec3<f32>";
48
- readonly isColoringDiscrete: "u32";
49
- readonly colorMapSize: "f32";
50
- };
51
- })[];
34
+ _getModels(context: DeckGLLayerContext): Model[];
52
35
  draw(args: {
53
36
  moduleParameters?: unknown;
54
37
  uniforms: UniformValue;