@webviz/subsurface-viewer 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -244,12 +244,15 @@ const Map = ({ id, layers, bounds, views, coords, scale, coordinateUnit, colorTa
244
244
  var _a, _b, _c, _d, _e, _f, _g;
245
245
  const deckRef = useRef(null);
246
246
  const bboxInitial = [0, 0, 0, 1, 1, 1];
247
+ const isCameraPositionDefined = typeof cameraPosition !== "undefined" &&
248
+ Object.keys(cameraPosition).length !== 0;
247
249
  // Deck.gl View's and viewStates as input to Deck.gl
248
250
  const [deckGLViews, setDeckGLViews] = useState([]);
249
251
  const [viewStates, setViewStates] = useState({});
250
252
  const [reportedBoundingBox, setReportedBoundingBox] = useState(bboxInitial);
251
253
  const [reportedBoundingBoxAcc, setReportedBoundingBoxAcc] = useState(bboxInitial);
252
254
  const [deckGLLayers, setDeckGLLayers] = useState([]);
255
+ const [viewStateChanged, setViewStateChanged] = useState(false);
253
256
  const [viewPortMargins, setViewPortMargins] = useState({
254
257
  left: 0,
255
258
  right: 0,
@@ -282,9 +285,13 @@ const Map = ({ id, layers, bounds, views, coords, scale, coordinateUnit, colorTa
282
285
  }, [triggerHome]);
283
286
  useEffect(() => {
284
287
  var _a;
288
+ if (viewStateChanged && !isCameraPositionDefined) {
289
+ return;
290
+ }
285
291
  const [Views, viewStates] = createViewsAndViewStates(views, viewPortMargins, bounds, camera, reportedBoundingBoxAcc, (_a = deckRef.current) === null || _a === void 0 ? void 0 : _a.deck);
286
292
  setDeckGLViews(Views);
287
293
  setViewStates(viewStates);
294
+ setViewStateChanged(false);
288
295
  // eslint-disable-next-line react-hooks/exhaustive-deps
289
296
  }, [
290
297
  bounds,
@@ -556,6 +563,7 @@ const Map = ({ id, layers, bounds, views, coords, scale, coordinateUnit, colorTa
556
563
  if (getCameraPosition) {
557
564
  getCameraPosition(viewState);
558
565
  }
566
+ setViewStateChanged(true);
559
567
  }, [getCameraPosition, viewStates, views === null || views === void 0 ? void 0 : views.viewports]);
560
568
  const effects = parseLights(lights);
561
569
  if (!deckGLViews || isEmpty(deckGLViews) || isEmpty(deckGLLayers))
@@ -1 +1 @@
1
- {"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/components/Map.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/components/Map.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- declare const fsShader = "#version 300 es\n#define SHADER_NAME terrainmap-shader\n\nprecision highp float;\n\n\nuniform bool isContoursDepth;\nuniform float contourReferencePoint;\nuniform float contourInterval;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nflat in int vertex_indexs_;\n\nout vec4 fragColor;\n\nin vec3 worldPos;\nin float property;\n\nuniform sampler2D colormap;\n\nuniform float valueRangeMin;\nuniform float valueRangeMax;\nuniform float colorMapRangeMin;\nuniform float colorMapRangeMax;\n\nuniform vec3 colorMapClampColor;\nuniform bool isClampColor;\nuniform bool isColorMapClampColorTransparent;\nuniform bool smoothShading;\n\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal = normals_commonspace;\n\n if (!smoothShading) {\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n } \n\n // // Discard transparent pixels. KEEP\n // if (!picking_uActive && isnan(propertyValue)) {\n // discard;\n // return;\n // }\n \n //Picking pass.\n if (picking_uActive) {\n // Express triangle index in 255 system.\n float r = 0.0;\n float g = 0.0;\n float b = 0.0;\n \n int idx = vertex_indexs_;\n \n if (idx >= (256 * 256) - 1) {\n r = floor(float(idx) / (256.0 * 256.0));\n idx -= int(r * (256.0 * 256.0));\n }\n \n if (idx >= 256 - 1) {\n g = floor(float(idx) / 256.0);\n idx -= int(g * 256.0);\n }\n \n b = float(idx);\n \n fragColor = vec4(r / 255.0, g / 255.0, b / 255.0, 1.0);\n return;\n }\n\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);;\n float propertyValue = property;\n\n float x = (propertyValue - colorMapRangeMin) / (colorMapRangeMax - colorMapRangeMin);\n if (x < 0.0 || x > 1.0) {\n // Out of range. Use clampcolor.\n if (isClampColor) {\n color = vec4(colorMapClampColor.rgb, 1.0);\n\n }\n else if (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 = texture2D(colormap, vec2(x, 0.5));\n }\n }\n else {\n color = texture2D(colormap, vec2(x, 0.5));\n }\n\n \n bool is_contours = contourReferencePoint != -1.0 && contourInterval != -1.0;\n if (is_contours) {\n // Contours are made of either depths or properties.\n float val = isContoursDepth ? (abs(worldPos.z) - contourReferencePoint) / contourInterval\n : (propertyValue - contourReferencePoint) / contourInterval;\n\n float f = fract(val);\n float df = fwidth(val);\n\n // keep: float c = smoothstep(df * 1.0, df * 2.0, f); // smootstep from/to no of pixels distance fronm contour line.\n float c = smoothstep(0.0, df * 2.0, f);\n\n color = color * vec4(c, c, c, 1.0);\n }\n\n // Use normal 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\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
1
+ declare const fsShader = "#version 300 es\n#define SHADER_NAME terrainmap-shader\n\nprecision highp float;\n\n\nuniform bool isContoursDepth;\nuniform float contourReferencePoint;\nuniform float contourInterval;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nflat in int vertex_indexs_;\n\nout vec4 fragColor;\n\nin vec3 worldPos;\nin float property;\n\nuniform sampler2D colormap;\n\nuniform float valueRangeMin;\nuniform float valueRangeMax;\nuniform float colorMapRangeMin;\nuniform float colorMapRangeMax;\n\nuniform vec3 colorMapClampColor;\nuniform bool isClampColor;\nuniform bool isColorMapClampColorTransparent;\nuniform bool smoothShading;\n\n\nvoid main(void) { \n geometry.uv = vTexCoord;\n\n vec3 normal = normals_commonspace;\n // These are sent as Int8\n normal[0] /= 127.0;\n normal[1] /= 127.0;\n normal[2] /= 127.0;\n\n if (!smoothShading || (normal[0] == 0.0 && normal[1] == 0.0 && normal[2] == 0.0)) {\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n }\n\n //Picking pass.\n if (picking_uActive) {\n // Express triangle index in 255 system.\n float r = 0.0;\n float g = 0.0;\n float b = 0.0;\n \n int idx = vertex_indexs_;\n \n if (idx >= (256 * 256) - 1) {\n r = floor(float(idx) / (256.0 * 256.0));\n idx -= int(r * (256.0 * 256.0));\n }\n \n if (idx >= 256 - 1) {\n g = floor(float(idx) / 256.0);\n idx -= int(g * 256.0);\n }\n \n b = float(idx);\n \n fragColor = vec4(r / 255.0, g / 255.0, b / 255.0, 1.0);\n return;\n }\n\n vec4 color = vec4(1.0, 1.0, 1.0, 1.0);;\n float propertyValue = property;\n\n float x = (propertyValue - colorMapRangeMin) / (colorMapRangeMax - colorMapRangeMin);\n if (x < 0.0 || x > 1.0) {\n // Out of range. Use clampcolor.\n if (isClampColor) {\n color = vec4(colorMapClampColor.rgb, 1.0);\n\n }\n else if (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 = texture2D(colormap, vec2(x, 0.5));\n }\n }\n else {\n color = texture2D(colormap, vec2(x, 0.5));\n }\n\n \n bool is_contours = contourReferencePoint != -1.0 && contourInterval != -1.0;\n if (is_contours) {\n // Contours are made of either depths or properties.\n float val = isContoursDepth ? (abs(worldPos.z) - contourReferencePoint) / contourInterval\n : (propertyValue - contourReferencePoint) / contourInterval;\n\n float f = fract(val);\n float df = fwidth(val);\n\n // keep: float c = smoothstep(df * 1.0, df * 2.0, f); // smootstep from/to no of pixels distance fronm contour line.\n float c = smoothstep(0.0, df * 2.0, f);\n\n color = color * vec4(c, c, c, 1.0);\n }\n\n // Use normal 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\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n";
2
2
  export default fsShader;
@@ -34,21 +34,19 @@ uniform bool isColorMapClampColorTransparent;
34
34
  uniform bool smoothShading;
35
35
 
36
36
 
37
- void main(void) {
37
+ void main(void) {
38
38
  geometry.uv = vTexCoord;
39
39
 
40
40
  vec3 normal = normals_commonspace;
41
+ // These are sent as Int8
42
+ normal[0] /= 127.0;
43
+ normal[1] /= 127.0;
44
+ normal[2] /= 127.0;
41
45
 
42
- if (!smoothShading) {
46
+ if (!smoothShading || (normal[0] == 0.0 && normal[1] == 0.0 && normal[2] == 0.0)) {
43
47
  normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));
44
- }
45
-
46
- // // Discard transparent pixels. KEEP
47
- // if (!picking_uActive && isnan(propertyValue)) {
48
- // discard;
49
- // return;
50
- // }
51
-
48
+ }
49
+
52
50
  //Picking pass.
53
51
  if (picking_uActive) {
54
52
  // Express triangle index in 255 system.
@@ -1 +1 @@
1
- {"version":3,"file":"fragment.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/map/fragment.fs.glsl.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4HhB,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"fragment.fs.glsl.js","sourceRoot":"","sources":["../../../src/layers/map/fragment.fs.glsl.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0HhB,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -1,2 +1,2 @@
1
- declare const fragmentShader = "#version 300 es\n#define SHADER_NAME graph-layer-fragment-shader\n\nprecision highp float;\n\nout vec4 fragColor;\n\nvoid main(void) {\n \n // Picking pass.\n if (picking_uActive) {\n discard;\n return;\n }\n\n fragColor = vec4(0.0, 0.0, 0.0, 1.0);\n}\n";
1
+ declare const fragmentShader = "#version 300 es\n#define SHADER_NAME graph-layer-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}\n";
2
2
  export default fragmentShader;
@@ -7,13 +7,6 @@ precision highp float;
7
7
  out vec4 fragColor;
8
8
 
9
9
  void main(void) {
10
-
11
- // Picking pass.
12
- if (picking_uActive) {
13
- discard;
14
- return;
15
- }
16
-
17
10
  fragColor = vec4(0.0, 0.0, 0.0, 1.0);
18
11
  }
19
12
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"fragment_lines.glsl.js","sourceRoot":"","sources":["../../../src/layers/map/fragment_lines.glsl.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;CAkBtB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"fragment_lines.glsl.js","sourceRoot":"","sources":["../../../src/layers/map/fragment_lines.glsl.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;;;;;;;;;;;CAWtB,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -26,13 +26,15 @@ export type Params = {
26
26
  isMesh: boolean;
27
27
  frame: Frame;
28
28
  smoothShading: boolean;
29
+ gridLines: boolean;
30
+ ZIncreasingDownwards: boolean;
29
31
  };
30
32
  export interface MapLayerProps extends ExtendedLayerProps {
31
33
  setReportedBoundingBox?: any;
32
34
  /** Url to the height (z values) mesh.
33
35
  */
34
36
  meshUrl: string;
35
- meshData: string | number[];
37
+ meshData: string | number[] | Float32Array;
36
38
  /** Horizontal extent of the terrain mesh. Format:
37
39
  {
38
40
  origin: [number, number]; // mesh origin in x, y
@@ -50,7 +52,7 @@ export interface MapLayerProps extends ExtendedLayerProps {
50
52
  * colored.
51
53
  */
52
54
  propertiesUrl: string;
53
- propertiesData: string | number[];
55
+ propertiesData: string | number[] | Float32Array;
54
56
  /** Contourlines reference point and interval.
55
57
  * A value of [-1.0, -1.0] will disable contour lines.
56
58
  * Contour lines will also not be activated if cells are constant colored
@@ -12,14 +12,19 @@ import privateMapLayer from "./privateMapLayer";
12
12
  import { getModelMatrix } from "../utils/layerTools";
13
13
  import { isEqual } from "lodash";
14
14
  import * as png from "@vivaxy/png";
15
- import { makeFullMesh } from "./webworker";
15
+ import { makeFullMesh } from "./utils";
16
16
  // Rotate x,y around x0, y0 rad radians
17
17
  function rotate(x, y, x0, y0, rad) {
18
18
  const xRot = Math.cos(rad) * (x - x0) - Math.sin(rad) * (y - y0) + x0; // eslint-disable-line
19
19
  const yRot = Math.sin(rad) * (x - x0) + Math.cos(rad) * (y - y0) + y0; // eslint-disable-line
20
20
  return [xRot, yRot];
21
21
  }
22
- function load_mesh_and_properties(meshData, propertiesData, ZIncreasingDownwards) {
22
+ /**
23
+ * Will load data for the mesh and the properties. Both of which may be given as arrays (javascript or typed)
24
+ * or as a URL to the data in binary format.
25
+ * Return value: A promise with the data given as typed arrays.
26
+ */
27
+ function loadMeshAndProperties(meshData, propertiesData) {
23
28
  return __awaiter(this, void 0, void 0, function* () {
24
29
  // Keep
25
30
  //const t0 = performance.now();
@@ -33,7 +38,11 @@ function load_mesh_and_properties(meshData, propertiesData, ZIncreasingDownwards
33
38
  }
34
39
  //-- PROPERTIES. --
35
40
  let properties;
36
- if (Array.isArray(propertiesData)) {
41
+ if (ArrayBuffer.isView(propertiesData)) {
42
+ // Input data is typed array.
43
+ properties = propertiesData; // Note no copy. Make sure input data is not altered.
44
+ }
45
+ else if (Array.isArray(propertiesData)) {
37
46
  // Input data is native javascript array.
38
47
  properties = new Float32Array(propertiesData);
39
48
  }
@@ -75,7 +84,11 @@ function load_mesh_and_properties(meshData, propertiesData, ZIncreasingDownwards
75
84
  //-- MESH --
76
85
  let mesh = new Float32Array();
77
86
  if (isMesh) {
78
- if (Array.isArray(meshData)) {
87
+ if (ArrayBuffer.isView(meshData)) {
88
+ // Input data is typed array.
89
+ mesh = meshData; // Note no copy. Make sure data is never altered.
90
+ }
91
+ else if (Array.isArray(meshData)) {
79
92
  // Input data is native javascript array.
80
93
  mesh = new Float32Array(meshData);
81
94
  }
@@ -115,14 +128,9 @@ function load_mesh_and_properties(meshData, propertiesData, ZIncreasingDownwards
115
128
  }
116
129
  }
117
130
  }
118
- if (!ZIncreasingDownwards) {
119
- for (let i = 0; i < mesh.length; i++) {
120
- mesh[i] *= -1;
121
- }
122
- }
123
- //const t1 = performance.now();
124
131
  // Keep this.
125
- //console.log(`Task loading took ${(t1 - t0) * 0.001} seconds.`);
132
+ // const t1 = performance.now();
133
+ // console.debug(`Task loading took ${(t1 - t0) * 0.001} seconds.`);
126
134
  return Promise.all([isMesh, mesh, properties]);
127
135
  });
128
136
  }
@@ -163,65 +171,62 @@ export default class MapLayer extends CompositeLayer {
163
171
  }
164
172
  const meshData = (_a = this.props.meshData) !== null && _a !== void 0 ? _a : this.props.meshUrl;
165
173
  const propertiesData = (_b = this.props.propertiesData) !== null && _b !== void 0 ? _b : this.props.propertiesUrl;
166
- const p = load_mesh_and_properties(meshData, propertiesData, this.props.ZIncreasingDownwards);
174
+ const p = loadMeshAndProperties(meshData, propertiesData);
167
175
  p.then(([isMesh, meshData, propertiesData]) => {
168
- // Using inline web worker for calculating the triangle mesh from
169
- // loaded input data so not to halt the GUI thread.
170
- const blob = new Blob(["self.onmessage = ", makeFullMesh.toString()], { type: "text/javascript" });
171
- const url = URL.createObjectURL(blob);
172
- const webWorker = new Worker(url);
173
- const webworkerParams = {
176
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
177
+ const params = {
174
178
  meshData,
175
179
  propertiesData,
176
180
  isMesh,
177
181
  frame: this.props.frame,
178
182
  smoothShading: this.props.smoothShading,
183
+ gridLines: this.props.gridLines,
184
+ ZIncreasingDownwards: this.props.ZIncreasingDownwards,
179
185
  };
180
- webWorker.postMessage(webworkerParams);
181
- webWorker.onmessage = (e) => {
182
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
183
- const [mesh, mesh_lines, meshZValueRange, propertyValueRange] = e.data;
184
- this.setState(Object.assign(Object.assign({}, this.state), { mesh,
185
- mesh_lines,
186
- propertyValueRange }));
187
- if (typeof this.props.setReportedBoundingBox !== "undefined" &&
188
- reportBoundingBox) {
189
- const xinc = (_c = (_b = (_a = this.props.frame) === null || _a === void 0 ? void 0 : _a.increment) === null || _b === void 0 ? void 0 : _b[0]) !== null && _c !== void 0 ? _c : 0;
190
- const yinc = (_f = (_e = (_d = this.props.frame) === null || _d === void 0 ? void 0 : _d.increment) === null || _e === void 0 ? void 0 : _e[1]) !== null && _f !== void 0 ? _f : 0;
191
- const nnodes_x = (_j = (_h = (_g = this.props.frame) === null || _g === void 0 ? void 0 : _g.count) === null || _h === void 0 ? void 0 : _h[0]) !== null && _j !== void 0 ? _j : 2; // number of nodes in x direction
192
- const nnodes_y = (_m = (_l = (_k = this.props.frame) === null || _k === void 0 ? void 0 : _k.count) === null || _l === void 0 ? void 0 : _l[1]) !== null && _m !== void 0 ? _m : 2;
193
- const xMin = (_q = (_p = (_o = this.props.frame) === null || _o === void 0 ? void 0 : _o.origin) === null || _p === void 0 ? void 0 : _p[0]) !== null && _q !== void 0 ? _q : 0;
194
- const yMin = (_t = (_s = (_r = this.props.frame) === null || _r === void 0 ? void 0 : _r.origin) === null || _s === void 0 ? void 0 : _s[1]) !== null && _t !== void 0 ? _t : 0;
195
- const zMin = -meshZValueRange[0];
196
- const xMax = xMin + xinc * (nnodes_x - 1);
197
- const yMax = yMin + yinc * (nnodes_y - 1);
198
- const zMax = -meshZValueRange[1];
199
- // If map is rotated the bounding box must reflect that.
200
- const center = (_u = this.props.frame.rotPoint) !== null && _u !== void 0 ? _u : this.props.frame.origin;
201
- const rotDeg = (_v = this.props.frame.rotDeg) !== null && _v !== void 0 ? _v : 0;
202
- const rotRad = (rotDeg * (2.0 * Math.PI)) / 360.0;
203
- // Rotate x,y around "center" "rad" radians
204
- const [x0, y0] = rotate(xMin, yMin, center[0], center[1], rotRad); // eslint-disable-line
205
- const [x1, y1] = rotate(xMax, yMin, center[0], center[1], rotRad); // eslint-disable-line
206
- const [x2, y2] = rotate(xMax, yMax, center[0], center[1], rotRad); // eslint-disable-line
207
- const [x3, y3] = rotate(xMin, yMax, center[0], center[1], rotRad); // eslint-disable-line
208
- // Rotated bounds in x/y plane.
209
- const x_min = Math.min(x0, x1, x2, x3);
210
- const x_max = Math.max(x0, x1, x2, x3);
211
- const y_min = Math.min(y0, y1, y2, y3);
212
- const y_max = Math.max(y0, y1, y2, y3);
213
- this.props.setReportedBoundingBox([
214
- x_min,
215
- y_min,
216
- zMin,
217
- x_max,
218
- y_max,
219
- zMax,
220
- ]);
221
- }
222
- webWorker.terminate();
223
- this.setState(Object.assign(Object.assign({}, this.state), { isFinishedLoading: true }));
224
- };
186
+ const [positions, normals, triangleIndices, vertexProperties, vertexIndices, lineIndices, meshZValueRange, propertyValueRange,] = makeFullMesh(params);
187
+ this.setState(Object.assign(Object.assign({}, this.state), { positions,
188
+ normals,
189
+ triangleIndices,
190
+ vertexProperties,
191
+ vertexIndices,
192
+ lineIndices,
193
+ propertyValueRange }));
194
+ if (typeof this.props.setReportedBoundingBox !== "undefined" &&
195
+ reportBoundingBox) {
196
+ const xinc = (_c = (_b = (_a = this.props.frame) === null || _a === void 0 ? void 0 : _a.increment) === null || _b === void 0 ? void 0 : _b[0]) !== null && _c !== void 0 ? _c : 0;
197
+ const yinc = (_f = (_e = (_d = this.props.frame) === null || _d === void 0 ? void 0 : _d.increment) === null || _e === void 0 ? void 0 : _e[1]) !== null && _f !== void 0 ? _f : 0;
198
+ const nnodes_x = (_j = (_h = (_g = this.props.frame) === null || _g === void 0 ? void 0 : _g.count) === null || _h === void 0 ? void 0 : _h[0]) !== null && _j !== void 0 ? _j : 2; // number of nodes in x direction
199
+ const nnodes_y = (_m = (_l = (_k = this.props.frame) === null || _k === void 0 ? void 0 : _k.count) === null || _l === void 0 ? void 0 : _l[1]) !== null && _m !== void 0 ? _m : 2;
200
+ const xMin = (_q = (_p = (_o = this.props.frame) === null || _o === void 0 ? void 0 : _o.origin) === null || _p === void 0 ? void 0 : _p[0]) !== null && _q !== void 0 ? _q : 0;
201
+ const yMin = (_t = (_s = (_r = this.props.frame) === null || _r === void 0 ? void 0 : _r.origin) === null || _s === void 0 ? void 0 : _s[1]) !== null && _t !== void 0 ? _t : 0;
202
+ const zMin = -meshZValueRange[0];
203
+ const xMax = xMin + xinc * (nnodes_x - 1);
204
+ const yMax = yMin + yinc * (nnodes_y - 1);
205
+ const zMax = -meshZValueRange[1];
206
+ // If map is rotated the bounding box must reflect that.
207
+ const center = (_u = this.props.frame.rotPoint) !== null && _u !== void 0 ? _u : this.props.frame.origin;
208
+ const rotDeg = (_v = this.props.frame.rotDeg) !== null && _v !== void 0 ? _v : 0;
209
+ const rotRad = (rotDeg * (2.0 * Math.PI)) / 360.0;
210
+ // Rotate x,y around "center" "rad" radians
211
+ const [x0, y0] = rotate(xMin, yMin, center[0], center[1], rotRad); // eslint-disable-line
212
+ const [x1, y1] = rotate(xMax, yMin, center[0], center[1], rotRad); // eslint-disable-line
213
+ const [x2, y2] = rotate(xMax, yMax, center[0], center[1], rotRad); // eslint-disable-line
214
+ const [x3, y3] = rotate(xMin, yMax, center[0], center[1], rotRad); // eslint-disable-line
215
+ // Rotated bounds in x/y plane.
216
+ const x_min = Math.min(x0, x1, x2, x3);
217
+ const x_max = Math.max(x0, x1, x2, x3);
218
+ const y_min = Math.min(y0, y1, y2, y3);
219
+ const y_max = Math.max(y0, y1, y2, y3);
220
+ this.props.setReportedBoundingBox([
221
+ x_min,
222
+ y_min,
223
+ zMin,
224
+ x_max,
225
+ y_max,
226
+ zMax,
227
+ ]);
228
+ }
229
+ this.setState(Object.assign(Object.assign({}, this.state), { isFinishedLoading: true }));
225
230
  });
226
231
  }
227
232
  initializeState() {
@@ -262,8 +267,12 @@ export default class MapLayer extends CompositeLayer {
262
267
  rotatingModelMatrix.multiplyRight(this.props.modelMatrix);
263
268
  }
264
269
  const layer = new privateMapLayer(this.getSubLayerProps({
265
- mesh: this.state["mesh"],
266
- meshLines: this.state["mesh_lines"],
270
+ positions: this.state["positions"],
271
+ normals: this.state["normals"],
272
+ triangleIndices: this.state["triangleIndices"],
273
+ vertexProperties: this.state["vertexProperties"],
274
+ vertexIndices: this.state["vertexIndices"],
275
+ lineIndices: this.state["lineIndices"],
267
276
  pickable: this.props.pickable,
268
277
  modelMatrix: rotatingModelMatrix,
269
278
  contours: this.props.contours,
@@ -1 +1 @@
1
- {"version":3,"file":"mapLayer.js","sourceRoot":"","sources":["../../../src/layers/map/mapLayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapLayer.js","sourceRoot":"","sources":["../../../src/layers/map/mapLayer.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAKhD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,uCAAuC;AACvC,SAAS,MAAM,CACX,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU,EACV,GAAW;IAEX,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,sBAAsB;IAC7F,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,sBAAsB;IAC7F,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC;AAmCD;;;;GAIG;AACH,SAAe,qBAAqB,CAChC,QAA0C,EAC1C,cAAgD;;QAEhD,OAAO;QACP,+BAA+B;QAE/B,MAAM,MAAM,GAAG,OAAO,QAAQ,KAAK,WAAW,CAAC;QAC/C,MAAM,YAAY,GAAG,OAAO,cAAc,KAAK,WAAW,CAAC;QAE3D,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;SAC1E;QAED,IAAI,MAAM,IAAI,CAAC,YAAY,EAAE;YACzB,cAAc,GAAG,QAAQ,CAAC;SAC7B;QAED,mBAAmB;QACnB,IAAI,UAAwB,CAAC;QAC7B,IAAI,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;YACpC,6BAA6B;YAC7B,UAAU,GAAG,cAAc,CAAC,CAAC,qDAAqD;SACrF;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;YACtC,yCAAyC;YACzC,UAAU,GAAG,IAAI,YAAY,CAAC,cAAc,CAAC,CAAC;SACjD;aAAM;YACH,wBAAwB;YACxB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,CAAC;YAC7C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;gBACd,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;aACpD;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,WAAW,KAAK,WAAW,CAAC;YAC1C,IAAI,KAAK,EAAE;gBACP,0CAA0C;gBAC1C,UAAU,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACvC,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;oBACpC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBACnC,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE;wBACrB,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC;wBACtC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,WAA0B,CAAC,CAAC;wBACvD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,iBAAiB;wBAE5C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;wBACtB,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;wBAClC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;wBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;4BACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;yBAC7B;wBAED,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;wBAC5C,OAAO,CAAC,UAAU,CAAC,CAAC;oBACxB,CAAC,CAAC;gBACN,CAAC,CAAC,CAAC;aACN;iBAAM;gBACH,kCAAkC;gBAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACxC,UAAU,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;aACzC;SACJ;QAED,YAAY;QACZ,IAAI,IAAI,GAAiB,IAAI,YAAY,EAAE,CAAC;QAC5C,IAAI,MAAM,EAAE;YACR,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;gBAC9B,6BAA6B;gBAC7B,IAAI,GAAG,QAAQ,CAAC,CAAC,iDAAiD;aACrE;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAChC,yCAAyC;gBACzC,IAAI,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC;aACrC;iBAAM;gBACH,wBAAwB;gBACxB,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE;oBACnB,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;iBACxC;gBAED,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;gBAC7C,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBACnE,MAAM,UAAU,GAAG,gBAAgB,KAAK,WAAW,CAAC;gBACpD,IAAI,UAAU,EAAE;oBACZ,0CAA0C;oBAC1C,IAAI,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;wBACjC,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;wBACpC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;wBACxC,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE;4BACrB,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC;4BACtC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,WAA0B,CAAC,CAAC;4BACvD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,iBAAiB;4BAE5C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;4BACtB,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;4BAClC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;4BAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gCACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;6BAC7B;4BAED,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;4BAC5C,OAAO,CAAC,UAAU,CAAC,CAAC;wBACxB,CAAC,CAAC;oBACN,CAAC,CAAC,CAAC;iBACN;qBAAM;oBACH,kCAAkC;oBAClC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;oBAC7C,IAAI,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;iBACnC;aACJ;SACJ;QAED,aAAa;QACb,gCAAgC;QAChC,qEAAqE;QAErE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IACnD,CAAC;CAAA;AAwGD,MAAM,YAAY,GAAG;IACjB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,KAAK;IACX,EAAE,EAAE,qBAAqB;IACzB,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;IACnE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;IAChC,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;IACtB,sDAAsD;IACtD,eAAe,EAAE,IAAI;IACrB,SAAS,EAAE,KAAK;IAChB,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,IAAI;IACf,oBAAoB,EAAE,IAAI;CAC7B,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,cAA6B;IAC/D,IAAI,QAAQ;;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACtC,MAAM,QAAQ,GACV,KAAK,CAAC,QAAQ;YACd,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,2EAA2E;YACnG,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAG,mBAAmB,CAAC,mCAAI,KAAK,CAAC;QAC9D,OAAO,QAAQ,IAAI,UAAU,CAAC;IAClC,CAAC;IAED,WAAW,CAAC,iBAA0B;;QAClC,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE;YAC3C,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;SAC3D;QAED,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,WAAW,EAAE;YACjD,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;SACvE;QAED,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,mCAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QAC3D,MAAM,cAAc,GAChB,MAAA,IAAI,CAAC,KAAK,CAAC,cAAc,mCAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAE1D,MAAM,CAAC,GAAG,qBAAqB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAE1D,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,EAAE;;YAC1C,MAAM,MAAM,GAAW;gBACnB,QAAQ;gBACR,cAAc;gBACd,MAAM;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBACvB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;gBACvC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;gBAC/B,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB;aACxD,CAAC;YAEF,MAAM,CACF,SAAS,EACT,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,eAAe,EACf,kBAAkB,EACrB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YAEzB,IAAI,CAAC,QAAQ,iCACN,IAAI,CAAC,KAAK,KACb,SAAS;gBACT,OAAO;gBACP,eAAe;gBACf,gBAAgB;gBAChB,aAAa;gBACb,WAAW;gBACX,kBAAkB,IACpB,CAAC;YAEH,IACI,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,KAAK,WAAW;gBACxD,iBAAiB,EACnB;gBACE,MAAM,IAAI,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,SAAS,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC;gBACnD,MAAM,IAAI,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,SAAS,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC;gBAEnD,MAAM,QAAQ,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,KAAK,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC,CAAC,iCAAiC;gBACrF,MAAM,QAAQ,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,KAAK,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC;gBAEnD,MAAM,IAAI,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,MAAM,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC;gBAChD,MAAM,IAAI,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,MAAM,0CAAG,CAAC,CAAC,mCAAI,CAAC,CAAC;gBAChD,MAAM,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBAC1C,MAAM,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBAEjC,wDAAwD;gBACxD,MAAM,MAAM,GACR,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,mCAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;gBACzD,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,mCAAI,CAAC,CAAC;gBAC5C,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;gBAElD,2CAA2C;gBAC3C,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,sBAAsB;gBACzF,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,sBAAsB;gBACzF,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,sBAAsB;gBACzF,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,sBAAsB;gBAEzF,+BAA+B;gBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEvC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;oBAC9B,KAAK;oBACL,KAAK;oBACL,IAAI;oBACJ,KAAK;oBACL,KAAK;oBACL,IAAI;iBACP,CAAC,CAAC;aACN;YAED,IAAI,CAAC,QAAQ,iCACN,IAAI,CAAC,KAAK,KACb,iBAAiB,EAAE,IAAI,IACzB,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAED,eAAe;QACX,IAAI,CAAC,QAAQ,iCACN,IAAI,CAAC,KAAK,KACb,iBAAiB,EAAE,KAAK,IAC1B,CAAC;QAEH,MAAM,iBAAiB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IACxC,CAAC;IAED,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAA8B;QACvD,MAAM,YAAY,GACd,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;YACzC,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC;YACrD,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;YAC3C,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC;YACvD,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;YACrC,CAAC,OAAO,CACJ,KAAK,CAAC,oBAAoB,EAC1B,QAAQ,CAAC,oBAAoB,CAChC;YACD,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,YAAY,EAAE;YACd,IAAI,CAAC,QAAQ,iCACN,IAAI,CAAC,KAAK,KACb,iBAAiB,EAAE,KAAK,IAC1B,CAAC;YACH,MAAM,iBAAiB,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;SACvC;IACL,CAAC;IAED,YAAY;;QACR,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YACtC,kCAAkC;YAClC,OAAO,EAAE,CAAC;SACb;QAED,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,mCAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEzD,MAAM,mBAAmB,GAAG,cAAc,CACtC,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,mCAAI,CAAC,EAC5B,MAAM,CAAC,CAAC,CAAC,EACT,MAAM,CAAC,CAAC,CAAC,CACZ,CAAC;QAEF,MAAM,MAAM,GACR,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW;YACtC,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,EAAE,CAAC;YAC9B,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,WAAW;gBACvC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC;QAEpC,MAAM,aAAa,GACf,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,WAAW;YAC7C,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC;QAEpC,IAAI,aAAa,EAAE;YACf,mBAAmB,CAAC,aAAa,CAC7B,IAAI,CAAC,KAAK,CAAC,WAAsB,CACpC,CAAC;SACL;QAED,MAAM,KAAK,GAAG,IAAI,eAAe,CAC7B,IAAI,CAAC,gBAAgB,CAAC;YAClB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAC9B,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;YAC9C,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;YAChD,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;YAC1C,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;YACtC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,WAAW,EAAE,mBAAmB;YAChC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;YAC/B,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe;YAC7D,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;YACrC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;YACvC,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB;YACjD,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB;YAC7C,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;YACvC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;SAClC,CAAC,CACL,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;CACJ;AAED,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;AAChC,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC"}