@webviz/subsurface-viewer 0.20.7 → 0.20.8

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 (25) hide show
  1. package/dist/layers/axes2d/axes2DLayer.d.ts +7 -4
  2. package/dist/layers/axes2d/axes2DLayer.js +98 -79
  3. package/dist/layers/axes2d/axes2DLayer.js.map +1 -1
  4. package/dist/layers/axes2d/label-fragment.glsl.d.ts +1 -1
  5. package/dist/layers/axes2d/label-fragment.glsl.js +1 -2
  6. package/dist/layers/axes2d/label-fragment.glsl.js.map +1 -1
  7. package/dist/layers/axes2d/label-vertex.glsl.d.ts +1 -1
  8. package/dist/layers/axes2d/label-vertex.glsl.js +4 -6
  9. package/dist/layers/axes2d/label-vertex.glsl.js.map +1 -1
  10. package/dist/layers/axes2d/line-fragment.glsl.d.ts +1 -1
  11. package/dist/layers/axes2d/line-fragment.glsl.js +1 -1
  12. package/dist/layers/axes2d/line-vertex.glsl.d.ts +1 -1
  13. package/dist/layers/axes2d/line-vertex.glsl.js +1 -1
  14. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples--selectable-feature-example.png +0 -0
  15. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples--user-defined-layer-1.png +0 -0
  16. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples--user-defined-layer-2.png +0 -0
  17. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples-camera--scale-y.png +0 -0
  18. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples-mutiview--synced-multi-view.png +0 -0
  19. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples-mutiview--view-matrix-margin.png +0 -0
  20. package/dist/storybook/examples/__image_snapshots__/subsurfaceviewer-examples-mutiview--view-tabs.png +0 -0
  21. package/dist/storybook/layers/__image_snapshots__/subsurfaceviewer-axes2dlayer--base.png +0 -0
  22. package/dist/storybook/layers/__image_snapshots__/subsurfaceviewer-axes2dlayer--colored-text-and-back-ground.png +0 -0
  23. package/dist/storybook/layers/__image_snapshots__/subsurfaceviewer-axes2dlayer--matrix.png +0 -0
  24. package/dist/storybook/layers/__image_snapshots__/subsurfaceviewer-map-layer--map-layer-2-d.png +0 -0
  25. package/package.json +1 -1
@@ -1,7 +1,8 @@
1
- import type { LayerContext } from "@deck.gl/core/typed";
1
+ import type { LayerContext, UpdateParameters } from "@deck.gl/core/typed";
2
2
  import { Layer } from "@deck.gl/core/typed";
3
3
  import { Model } from "@luma.gl/engine";
4
4
  import type { ExtendedLayerProps, Position3D } from "../utils/layerTools";
5
+ import { Texture2D } from "@luma.gl/webgl";
5
6
  import type { Color } from "@deck.gl/core/typed";
6
7
  declare enum TEXT_ANCHOR {
7
8
  start = 0,
@@ -39,8 +40,10 @@ export interface Axes2DLayerProps extends ExtendedLayerProps {
39
40
  isTopRuler: boolean;
40
41
  }
41
42
  export default class Axes2DLayer extends Layer<Axes2DLayerProps> {
42
- initializeState(context: LayerContext): void;
43
- GetTickLinesAndLabels(min: number, max: number, viewSide: ViewSide, pixel2world: number): [number[], LabelData[]];
43
+ shouldUpdateState({ changeFlags }: UpdateParameters<this>): boolean;
44
+ updateState(): void;
45
+ initializeState(): void;
46
+ GetTickLinesAndLabels(min: number, max: number, viewSide: ViewSide, pixel2worldHor: number, pixel2worldVer: number): [number[], LabelData[]];
44
47
  GetBacgroundTriangleLinesHorizontal(x_min_w: number, x_max_w: number, isTop: boolean, pixel2world: number): number[];
45
48
  GetBacgroundTriangleLinesVertical(y_min_w: number, y_max_w: number, isLeft: boolean, // left or right ruler.
46
49
  pixel2world: number): number[];
@@ -50,7 +53,7 @@ export default class Axes2DLayer extends Layer<Axes2DLayerProps> {
50
53
  uniforms: unknown;
51
54
  context: LayerContext;
52
55
  }): void;
53
- _getModels(gl: WebGLRenderingContext): {
56
+ _getModels(fontTexture: Texture2D): {
54
57
  label_models: Model[];
55
58
  line_model: Model;
56
59
  background_model: Model;
@@ -8,7 +8,7 @@ import lineFragmentShader from "./line-fragment.glsl";
8
8
  import { load } from "@loaders.gl/core";
9
9
  import { Texture2D } from "@luma.gl/webgl";
10
10
  import { ImageLoader } from "@loaders.gl/images";
11
- import { vec4, mat4 } from "gl-matrix";
11
+ import { vec4 } from "gl-matrix";
12
12
  import fontAtlasPng from "./font-atlas.png";
13
13
  const DEFAULT_TEXTURE_PARAMETERS = {
14
14
  [GL.TEXTURE_MIN_FILTER]: GL.LINEAR_MIPMAP_LINEAR,
@@ -104,8 +104,16 @@ const fontInfo = {
104
104
  },
105
105
  };
106
106
  export default class Axes2DLayer extends Layer {
107
- initializeState(context) {
108
- const { gl } = context;
107
+ shouldUpdateState({ changeFlags }) {
108
+ return changeFlags.viewportChanged;
109
+ }
110
+ updateState() {
111
+ const fontTexture = this.state["fontTexture"];
112
+ const { label_models, line_model, background_model } = this._getModels(fontTexture);
113
+ this.setState(Object.assign(Object.assign({}, this.state), { models: [...label_models, line_model, background_model] }));
114
+ }
115
+ initializeState() {
116
+ const { gl } = this.context;
109
117
  const promise = load(fontAtlasPng, ImageLoader, {
110
118
  image: { type: "data" }, // Will load as ImageData.
111
119
  });
@@ -117,24 +125,20 @@ export default class Axes2DLayer extends Layer {
117
125
  data,
118
126
  parameters: DEFAULT_TEXTURE_PARAMETERS,
119
127
  });
128
+ const { label_models, line_model, background_model } = this._getModels(fontTexture);
120
129
  this.setState({
121
130
  fontTexture,
122
- // Insert a dummy model initially.
123
- model: new Model(gl, {
124
- id: "dummy",
125
- vs: lineVertexShader,
126
- fs: lineFragmentShader,
127
- }),
131
+ models: [...label_models, line_model, background_model],
128
132
  });
129
133
  });
130
134
  }
131
- GetTickLinesAndLabels(min, max, viewSide, pixel2world) {
135
+ GetTickLinesAndLabels(min, max, viewSide, pixel2worldHor, pixel2worldVer) {
132
136
  const ndecimals = 0;
133
137
  const n_minor_ticks = 3;
134
138
  const lines = [];
135
139
  const tick_labels = [];
136
- const mv = this.props.marginV * pixel2world;
137
- const mh = this.props.marginH * pixel2world;
140
+ const mv = this.props.marginV * pixel2worldVer;
141
+ const mh = this.props.marginH * pixel2worldHor;
138
142
  const vpBounds = this.context.viewport.getBounds();
139
143
  let start;
140
144
  let y_tick = 0;
@@ -155,10 +159,14 @@ export default class Axes2DLayer extends Layer {
155
159
  start = vpBounds[2] - mh;
156
160
  x_tick = start;
157
161
  }
162
+ const isTopOrBottomRuler = viewSide === ViewSide.Top || viewSide === ViewSide.Bottom;
158
163
  const m = 10; // Length in pixels
159
- const delta = m * pixel2world;
160
- const L = LineLengthInPixels([min, 0, 0], [max, 0, 0], this.context.viewport);
161
- const isHorizontal = viewSide === ViewSide.Top || viewSide === ViewSide.Bottom;
164
+ const delta = isTopOrBottomRuler
165
+ ? m * pixel2worldVer
166
+ : m * pixel2worldHor;
167
+ const L = isTopOrBottomRuler
168
+ ? LineLengthInPixels([min, 0, 0], [max, 0, 0], this.context.viewport)
169
+ : LineLengthInPixels([0, min, 0], [0, max, 0], this.context.viewport);
162
170
  const ticks = GetTicks(min, max, L); // Note: this may be replaced by NiceTicks npm package.
163
171
  // z value of all lines and labels. In camera/view coordinates. This
164
172
  // ensures lines will be closer to camera than rest of model.
@@ -171,7 +179,7 @@ export default class Axes2DLayer extends Layer {
171
179
  const label = tick.toFixed(ndecimals);
172
180
  tick_labels.push(label);
173
181
  // tick line start
174
- if (isHorizontal) {
182
+ if (isTopOrBottomRuler) {
175
183
  lines.push(tick, y_tick, z_depth); // tick line start
176
184
  lines.push(tick, y_tick + tick_length, z_depth); // tick line end.
177
185
  }
@@ -192,7 +200,7 @@ export default class Axes2DLayer extends Layer {
192
200
  const tick = tick_start + (i + 1) * d;
193
201
  tick_labels.push("");
194
202
  i++;
195
- if (isHorizontal) {
203
+ if (isTopOrBottomRuler) {
196
204
  lines.push(tick, y_tick, z_depth); // tick line start
197
205
  lines.push(tick, y_tick + 0.5 * tick_length, z_depth); // tick line end.
198
206
  }
@@ -207,7 +215,7 @@ export default class Axes2DLayer extends Layer {
207
215
  const tick = tick_start - (i + 1) * d;
208
216
  tick_labels.push("");
209
217
  i++;
210
- if (isHorizontal) {
218
+ if (isTopOrBottomRuler) {
211
219
  lines.push(tick, y_tick, z_depth);
212
220
  lines.push(tick, y_tick + 0.5 * tick_length, z_depth);
213
221
  }
@@ -306,40 +314,35 @@ export default class Axes2DLayer extends Layer {
306
314
  !is_orthographic) {
307
315
  return;
308
316
  }
309
- const { gl } = context;
310
- super.draw({ moduleParameters, uniforms, context }); // For some reason this is neccessary.
311
- const { projectionMatrix } = this.context.viewport;
312
317
  //gl.disable(gl.DEPTH_TEST); KEEP for now.
313
- const { label_models, line_model, background_model } = this._getModels(gl);
314
- const fontTexture = this.state["fontTexture"];
315
- for (const model of label_models) {
316
- model.setUniforms({ projectionMatrix, fontTexture }).draw();
317
- }
318
- line_model.draw();
319
- // When both parameters are negative, (decreased depth), the mesh is pulled towards the camera (hence, gets in front).
320
- // When both parameters are positive, (increased depth), the mesh is pushed away from the camera (hence, gets behind).
321
- gl.enable(GL.POLYGON_OFFSET_FILL);
322
- gl.polygonOffset(1, 1);
323
- background_model.draw();
324
- gl.disable(GL.POLYGON_OFFSET_FILL);
318
+ super.draw({ moduleParameters, uniforms, context }); // For some reason this is neccessary.
325
319
  //gl.enable(gl.DEPTH_TEST);
320
+ return;
326
321
  }
327
- _getModels(gl) {
328
- // Make models for background, lines (tick marcs and axis) and labels.
322
+ _getModels(fontTexture) {
329
323
  var _a, _b;
324
+ const { gl } = this.context;
325
+ // Make models for background, lines (tick marcs and axis) and labels.
330
326
  // Margins.
331
327
  const m = 100; // Length in pixels
332
- const world_from = this.context.viewport.unproject([0, 0, 0]);
333
- const world_to = this.context.viewport.unproject([0, m, 0]);
334
- const v = [
328
+ let world_from = this.context.viewport.unproject([0, 0, 0]);
329
+ let world_to = this.context.viewport.unproject([m, 0, 0]);
330
+ let v = [
335
331
  world_from[0] - world_to[0],
336
332
  world_from[1] - world_to[1],
337
333
  world_from[2] - world_to[2],
338
334
  ];
339
- const pixel2world = Math.sqrt(v[0] * v[0] + v[1] * v[1]) / 100;
340
- const { viewMatrix } = this.context.viewport;
341
- const mh = this.props.marginH * pixel2world;
342
- const mv = this.props.marginV * pixel2world;
335
+ const pixel2worldHor = Math.sqrt(v[0] * v[0] + v[1] * v[1]) / 100;
336
+ world_from = this.context.viewport.unproject([0, 0, 0]);
337
+ world_to = this.context.viewport.unproject([0, m, 0]);
338
+ v = [
339
+ world_from[0] - world_to[0],
340
+ world_from[1] - world_to[1],
341
+ world_from[2] - world_to[2],
342
+ ];
343
+ const pixel2worldVer = Math.sqrt(v[0] * v[0] + v[1] * v[1]) / 100;
344
+ const mh = this.props.marginH * pixel2worldHor;
345
+ const mv = this.props.marginV * pixel2worldVer;
343
346
  const viewport_bounds_w = this.context.viewport.getBounds(); //bounds in world coordinates.
344
347
  const xBoundsMin = viewport_bounds_w[0];
345
348
  const xBoundsMax = viewport_bounds_w[2];
@@ -367,8 +370,8 @@ export default class Axes2DLayer extends Layer {
367
370
  yBoundsMin + mv,
368
371
  zDepth,
369
372
  ];
370
- const [ticks, labels] = this.GetTickLinesAndLabels(xmin, xmax, ViewSide.Bottom, pixel2world);
371
- const back_lines = this.GetBacgroundTriangleLinesHorizontal(xBoundsMin, xBoundsMax, false, pixel2world);
373
+ const [ticks, labels] = this.GetTickLinesAndLabels(xmin, xmax, ViewSide.Bottom, pixel2worldHor, pixel2worldVer);
374
+ const back_lines = this.GetBacgroundTriangleLinesHorizontal(xBoundsMin, xBoundsMax, false, pixel2worldVer);
372
375
  tick_and_axes_lines = [...tick_and_axes_lines, ...axes, ...ticks];
373
376
  background_lines = [...background_lines, ...back_lines];
374
377
  labelData = [...labelData, ...labels];
@@ -383,9 +386,9 @@ export default class Axes2DLayer extends Layer {
383
386
  yBoundsMax - mv,
384
387
  zDepth,
385
388
  ];
386
- const [ticks, labels] = this.GetTickLinesAndLabels(xmin, xmax, ViewSide.Top, pixel2world);
389
+ const [ticks, labels] = this.GetTickLinesAndLabels(xmin, xmax, ViewSide.Top, pixel2worldHor, pixel2worldVer);
387
390
  const back_lines = this.GetBacgroundTriangleLinesHorizontal(xBoundsMin, xBoundsMax, true, // isTop
388
- pixel2world);
391
+ pixel2worldVer);
389
392
  tick_and_axes_lines = [...tick_and_axes_lines, ...axes, ...ticks];
390
393
  background_lines = [...background_lines, ...back_lines];
391
394
  labelData = [...labelData, ...labels];
@@ -400,8 +403,8 @@ export default class Axes2DLayer extends Layer {
400
403
  ymax,
401
404
  zDepth,
402
405
  ];
403
- const [ticks, labels] = this.GetTickLinesAndLabels(ymin, yBoundsMax - mv, ViewSide.Left, pixel2world);
404
- const back_lines = this.GetBacgroundTriangleLinesVertical(ymin, ymax, true, pixel2world);
406
+ const [ticks, labels] = this.GetTickLinesAndLabels(ymin, yBoundsMax - mv, ViewSide.Left, pixel2worldHor, pixel2worldVer);
407
+ const back_lines = this.GetBacgroundTriangleLinesVertical(ymin, ymax, true, pixel2worldHor);
405
408
  tick_and_axes_lines = [...tick_and_axes_lines, ...axes, ...ticks];
406
409
  background_lines = [...background_lines, ...back_lines];
407
410
  labelData = [...labelData, ...labels];
@@ -416,8 +419,8 @@ export default class Axes2DLayer extends Layer {
416
419
  ymax,
417
420
  zDepth,
418
421
  ];
419
- const [ticks, labels] = this.GetTickLinesAndLabels(ymin, ymax, ViewSide.Right, pixel2world);
420
- const back_lines = this.GetBacgroundTriangleLinesVertical(ymin, ymax, false, pixel2world);
422
+ const [ticks, labels] = this.GetTickLinesAndLabels(ymin, ymax, ViewSide.Right, pixel2worldHor, pixel2worldVer);
423
+ const back_lines = this.GetBacgroundTriangleLinesVertical(ymin, ymax, false, pixel2worldHor);
421
424
  tick_and_axes_lines = [...tick_and_axes_lines, ...axes, ...ticks];
422
425
  background_lines = [...background_lines, ...back_lines];
423
426
  labelData = [...labelData, ...labels];
@@ -485,7 +488,6 @@ export default class Axes2DLayer extends Layer {
485
488
  continue;
486
489
  }
487
490
  const pos_w = vec4.fromValues(x, y, z, 1); // pos world
488
- const pos_view = word2view(viewMatrix, pos_w); // pos view
489
491
  const pixelScale = 8;
490
492
  const len = label.length;
491
493
  const numVertices = len * 6;
@@ -522,42 +524,41 @@ export default class Axes2DLayer extends Layer {
522
524
  const u2 = (glyphInfo.x + glyphInfo.width - 1) / maxX;
523
525
  const v2 = glyphInfo.y / maxY;
524
526
  const h = 1;
525
- const x = pos_view[0];
526
- const y = pos_view[1] - y_aligment_offset;
527
- const z = pos_view[2];
528
527
  // 6 vertices per letter
529
528
  // t1
530
- positions[offset + 0] = x + x1 * pixelScale;
531
- positions[offset + 1] = y + 0 * pixelScale;
532
- positions[offset + 2] = z; // Note: may make these vertices 2D.
529
+ /*eslint-disable */
530
+ positions[offset + 0] = pos_w[0] + x1 * pixelScale * pixel2worldHor; // Add a distance in view coords and convert to world
531
+ positions[offset + 1] = pos_w[1] + (0 * pixelScale - y_aligment_offset) * pixel2worldVer;
532
+ positions[offset + 2] = pos_w[2];
533
533
  texcoords[offsetTexture + 0] = u1;
534
534
  texcoords[offsetTexture + 1] = v1;
535
- positions[offset + 3] = x + x2 * pixelScale;
536
- positions[offset + 4] = y + 0 * pixelScale;
537
- positions[offset + 5] = z;
535
+ positions[offset + 3] = pos_w[0] + x2 * pixelScale * pixel2worldHor;
536
+ positions[offset + 4] = pos_w[1] + (0 * pixelScale - y_aligment_offset) * pixel2worldVer;
537
+ positions[offset + 5] = pos_w[2];
538
538
  texcoords[offsetTexture + 2] = u2;
539
539
  texcoords[offsetTexture + 3] = v1;
540
- positions[offset + 6] = x + x1 * pixelScale;
541
- positions[offset + 7] = y + h * pixelScale;
542
- positions[offset + 8] = z;
540
+ positions[offset + 6] = pos_w[0] + x1 * pixelScale * pixel2worldHor;
541
+ positions[offset + 7] = pos_w[1] + (h * pixelScale - y_aligment_offset) * pixel2worldVer;
542
+ positions[offset + 8] = pos_w[2];
543
543
  texcoords[offsetTexture + 4] = u1;
544
544
  texcoords[offsetTexture + 5] = v2;
545
545
  // t2
546
- positions[offset + 9] = x + x1 * pixelScale;
547
- positions[offset + 10] = y + h * pixelScale;
548
- positions[offset + 11] = z;
546
+ positions[offset + 9] = pos_w[0] + x1 * pixelScale * pixel2worldHor;
547
+ positions[offset + 10] = pos_w[1] + (h * pixelScale - y_aligment_offset) * pixel2worldVer;
548
+ positions[offset + 11] = pos_w[2];
549
549
  texcoords[offsetTexture + 6] = u1;
550
550
  texcoords[offsetTexture + 7] = v2;
551
- positions[offset + 12] = x + x2 * pixelScale;
552
- positions[offset + 13] = y + 0 * pixelScale;
553
- positions[offset + 14] = z;
551
+ positions[offset + 12] = pos_w[0] + x2 * pixelScale * pixel2worldHor;
552
+ positions[offset + 13] = pos_w[1] + (0 * pixelScale - y_aligment_offset) * pixel2worldVer;
553
+ positions[offset + 14] = pos_w[2];
554
554
  texcoords[offsetTexture + 8] = u2;
555
555
  texcoords[offsetTexture + 9] = v1;
556
- positions[offset + 15] = x + x2 * pixelScale;
557
- positions[offset + 16] = y + h * pixelScale;
558
- positions[offset + 17] = z;
556
+ positions[offset + 15] = pos_w[0] + x2 * pixelScale * pixel2worldHor;
557
+ positions[offset + 16] = pos_w[1] + (h * pixelScale - y_aligment_offset) * pixel2worldVer;
558
+ positions[offset + 17] = pos_w[2];
559
559
  texcoords[offsetTexture + 10] = u2;
560
560
  texcoords[offsetTexture + 11] = v2;
561
+ /*eslint-ensable */
561
562
  x1 += 1;
562
563
  offset += 18;
563
564
  offsetTexture += 12;
@@ -567,12 +568,15 @@ export default class Axes2DLayer extends Layer {
567
568
  x1 += 1;
568
569
  }
569
570
  }
570
- const id = `${this.props.id}-${label}`;
571
571
  const model = new Model(gl, {
572
- id,
572
+ id: `${this.props.id}-${label}`,
573
573
  vs: labelVertexShader,
574
574
  fs: labelFragmentShader,
575
- uniforms: { uAxisColor: lineColor, uBackGroundColor: bColor },
575
+ uniforms: {
576
+ uAxisColor: lineColor,
577
+ uBackGroundColor: bColor,
578
+ fontTexture,
579
+ },
576
580
  geometry: new Geometry({
577
581
  drawMode: GL.TRIANGLES,
578
582
  attributes: {
@@ -595,10 +599,25 @@ export default class Axes2DLayer extends Layer {
595
599
  Axes2DLayer.layerName = "Axes2DLayer";
596
600
  Axes2DLayer.defaultProps = defaultProps;
597
601
  //-- Local help functions. -------------------------------------------------
598
- function word2view(viewMatrix, pos_w) {
599
- const pos_v = vec4.transformMat4(vec4.create(), pos_w, mat4.fromValues(...viewMatrix.slice(0, mat4.fromValues.length)));
600
- return pos_v.slice(0, 3);
601
- }
602
+ // KEEP for now.
603
+ // USAGE:
604
+ // const pos_w = vec4.fromValues(x, y, z, 1); // pos world
605
+ // const pos_v = multMatVec(viewMatrix, pos_w); // pos view
606
+ // function multMatVec(
607
+ // viewMatrix: number[],
608
+ // pos_w: vec4
609
+ // ): [number, number, number] {
610
+ // const pos_v = vec4.transformMat4(
611
+ // vec4.create(),
612
+ // pos_w,
613
+ // mat4.fromValues(
614
+ // ...(viewMatrix.slice(0, mat4.fromValues.length) as Parameters<
615
+ // typeof mat4.fromValues
616
+ // >)
617
+ // )
618
+ // );
619
+ // return pos_v.slice(0, 3) as [number, number, number];
620
+ // }
602
621
  function LineLengthInPixels(p0, p1, viewport) {
603
622
  const screen_from = viewport.project(p0);
604
623
  const screen_to = viewport.project(p1);
@@ -1 +1 @@
1
- {"version":3,"file":"axes2DLayer.js","sourceRoot":"","sources":["../../../src/layers/axes2d/axes2DLayer.ts"],"names":[],"mappings":"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EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QACjD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QACjD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QACjD,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;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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"}
1
+ {"version":3,"file":"axes2DLayer.js","sourceRoot":"","sources":["../../../src/layers/axes2d/axes2DLayer.ts"],"names":[],"mappings":"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GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QACjD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QACjD,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;QACjD,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;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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"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME graph-layer-fragment-shader\n\nprecision highp float;\n\nout vec4 fragColor;\n\nuniform sampler2D fontTexture;\n\nuniform vec4 uAxisColor;\nuniform vec4 uBackGroundColor;\n\nin vec2 _vTexCoord;\n\nvoid main(void) {\n vec4 color = texture(fontTexture, _vTexCoord);\n \n float x = 1.0 - (color.r + color.g + color.b) / 3.0; // intensity of text color\n x = smoothstep(0.0, 0.2, x); \n\n float text_r = uAxisColor.r;\n float text_g = uAxisColor.g;\n float text_b = uAxisColor.b;\n\n float bg_r = uBackGroundColor.r;\n float bg_g = uBackGroundColor.g;\n float bg_b = uBackGroundColor.b;\n \n float r = x * text_r + (1.0 - x) * bg_r;\n float g = x * text_g + (1.0 - x) * bg_g;\n float b = x * text_b + (1.0 - x) * bg_b;\n\n fragColor = vec4(r, g, b, 1.0);\n return;\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME axes2d-layer-fragment-shader\n\nprecision highp float;\n\nout vec4 fragColor;\n\nuniform sampler2D fontTexture;\n\nuniform vec4 uAxisColor;\nuniform vec4 uBackGroundColor;\n\nin vec2 _vTexCoord;\n\nvoid main(void) {\n vec4 color = texture(fontTexture, _vTexCoord);\n \n float x = 1.0 - (color.r + color.g + color.b) / 3.0; // intensity of text color\n x = smoothstep(0.0, 0.2, x); \n\n float text_r = uAxisColor.r;\n float text_g = uAxisColor.g;\n float text_b = uAxisColor.b;\n\n float bg_r = uBackGroundColor.r;\n float bg_g = uBackGroundColor.g;\n float bg_b = uBackGroundColor.b;\n \n float r = x * text_r + (1.0 - x) * bg_r;\n float g = x * text_g + (1.0 - x) * bg_g;\n float b = x * text_b + (1.0 - x) * bg_b;\n\n fragColor = vec4(r, g, b, 1.0);\n}\n";
2
2
  export default _default;
@@ -1,6 +1,6 @@
1
1
  export default `\
2
2
  #version 300 es
3
- #define SHADER_NAME graph-layer-fragment-shader
3
+ #define SHADER_NAME axes2d-layer-fragment-shader
4
4
 
5
5
  precision highp float;
6
6
 
@@ -32,7 +32,6 @@ void main(void) {
32
32
  float b = x * text_b + (1.0 - x) * bg_b;
33
33
 
34
34
  fragColor = vec4(r, g, b, 1.0);
35
- return;
36
35
  }
37
36
  `;
38
37
  //# sourceMappingURL=label-fragment.glsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"label-fragment.glsl.js","sourceRoot":"","sources":["../../../src/layers/axes2d/label-fragment.glsl.js"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCd,CAAC"}
1
+ {"version":3,"file":"label-fragment.glsl.js","sourceRoot":"","sources":["../../../src/layers/axes2d/label-fragment.glsl.js"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME graph-layer-axis-vertex-shader\n\nprecision highp float;\n\nin vec3 positions;\n\nin vec2 vTexCoord;\nout vec2 _vTexCoord;\n\nuniform mat4 projectionMatrix;\n\nvoid main(void) {\n _vTexCoord = vTexCoord;\n\n vec3 position_commonspace = positions; // These positions are in view space.\n gl_Position = projectionMatrix * vec4(position_commonspace, 1.0); // From viewspace to clip\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME axes2d-layer-vertex-shader\n\nprecision highp float;\n\nin vec3 positions;\n\nin vec2 vTexCoord;\nout vec2 _vTexCoord;\n\nvoid main(void) {\n _vTexCoord = vTexCoord;\n\n vec3 position_commonspace = project_position(positions);\n gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 1.0));\n}\n";
2
2
  export default _default;
@@ -1,21 +1,19 @@
1
1
  export default `\
2
2
  #version 300 es
3
- #define SHADER_NAME graph-layer-axis-vertex-shader
3
+ #define SHADER_NAME axes2d-layer-vertex-shader
4
4
 
5
5
  precision highp float;
6
6
 
7
- in vec3 positions;
7
+ in vec3 positions;
8
8
 
9
9
  in vec2 vTexCoord;
10
10
  out vec2 _vTexCoord;
11
11
 
12
- uniform mat4 projectionMatrix;
13
-
14
12
  void main(void) {
15
13
  _vTexCoord = vTexCoord;
16
14
 
17
- vec3 position_commonspace = positions; // These positions are in view space.
18
- gl_Position = projectionMatrix * vec4(position_commonspace, 1.0); // From viewspace to clip
15
+ vec3 position_commonspace = project_position(positions);
16
+ gl_Position = project_common_position_to_clipspace(vec4(position_commonspace, 1.0));
19
17
  }
20
18
  `;
21
19
  //# sourceMappingURL=label-vertex.glsl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"label-vertex.glsl.js","sourceRoot":"","sources":["../../../src/layers/axes2d/label-vertex.glsl.js"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;;;CAmBd,CAAC"}
1
+ {"version":3,"file":"label-vertex.glsl.js","sourceRoot":"","sources":["../../../src/layers/axes2d/label-vertex.glsl.js"],"names":[],"mappings":"AAAA,eAAe;;;;;;;;;;;;;;;;;CAiBd,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME axes2d-layer-fragment-shader\n\nprecision highp float;\n\nuniform vec4 uColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n fragColor = uColor;\n}\n";
1
+ declare const _default: "#version 300 es\n#define SHADER_NAME axes2dlayer-line-fragment-shader\n\nprecision highp float;\n\nuniform vec4 uColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n fragColor = uColor;\n}\n";
2
2
  export default _default;
@@ -1,6 +1,6 @@
1
1
  export default `\
2
2
  #version 300 es
3
- #define SHADER_NAME axes2d-layer-fragment-shader
3
+ #define SHADER_NAME axes2dlayer-line-fragment-shader
4
4
 
5
5
  precision highp float;
6
6
 
@@ -1,2 +1,2 @@
1
- declare const _default: "#version 300 es\n#define SHADER_NAME axes2d-layer-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 axes2dlayer-line-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";
2
2
  export default _default;
@@ -1,6 +1,6 @@
1
1
  export default `\
2
2
  #version 300 es
3
- #define SHADER_NAME axes2d-layer-vertex-shader
3
+ #define SHADER_NAME axes2dlayer-line-vertex-shader
4
4
 
5
5
  precision highp float;
6
6
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webviz/subsurface-viewer",
3
- "version": "0.20.7",
3
+ "version": "0.20.8",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",