@cornerstonejs/tools 1.70.4 → 1.70.6

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 (83) hide show
  1. package/dist/cjs/tools/AdvancedMagnifyTool.d.ts +1 -1
  2. package/dist/cjs/tools/AdvancedMagnifyTool.js +35 -43
  3. package/dist/cjs/tools/AdvancedMagnifyTool.js.map +1 -1
  4. package/dist/cjs/tools/AdvancedMagnifyViewport.d.ts +1 -1
  5. package/dist/cjs/tools/AdvancedMagnifyViewport.js +8 -2
  6. package/dist/cjs/tools/AdvancedMagnifyViewport.js.map +1 -1
  7. package/dist/cjs/tools/AdvancedMagnifyViewportManager.d.ts +2 -1
  8. package/dist/cjs/tools/AdvancedMagnifyViewportManager.js +32 -3
  9. package/dist/cjs/tools/AdvancedMagnifyViewportManager.js.map +1 -1
  10. package/dist/cjs/tools/OrientationMarkerTool.d.ts +6 -0
  11. package/dist/cjs/tools/OrientationMarkerTool.js +53 -1
  12. package/dist/cjs/tools/OrientationMarkerTool.js.map +1 -1
  13. package/dist/cjs/tools/base/AnnotationTool.js +4 -1
  14. package/dist/cjs/tools/base/AnnotationTool.js.map +1 -1
  15. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js +5 -0
  16. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
  17. package/dist/cjs/tools/segmentation/BrushTool.js +12 -1
  18. package/dist/cjs/tools/segmentation/BrushTool.js.map +1 -1
  19. package/dist/cjs/tools/segmentation/strategies/compositions/dynamicThreshold.js +3 -0
  20. package/dist/cjs/tools/segmentation/strategies/compositions/dynamicThreshold.js.map +1 -1
  21. package/dist/cjs/tools/segmentation/strategies/compositions/preview.js +10 -2
  22. package/dist/cjs/tools/segmentation/strategies/compositions/preview.js.map +1 -1
  23. package/dist/cjs/types/ToolSpecificAnnotationTypes.d.ts +2 -1
  24. package/dist/cjs/utilities/cine/playClip.d.ts +1 -1
  25. package/dist/cjs/utilities/cine/playClip.js +2 -5
  26. package/dist/cjs/utilities/cine/playClip.js.map +1 -1
  27. package/dist/cjs/utilities/planar/filterAnnotationsForDisplay.js +3 -0
  28. package/dist/cjs/utilities/planar/filterAnnotationsForDisplay.js.map +1 -1
  29. package/dist/esm/tools/AdvancedMagnifyTool.js +35 -43
  30. package/dist/esm/tools/AdvancedMagnifyTool.js.map +1 -1
  31. package/dist/esm/tools/AdvancedMagnifyViewport.js +8 -2
  32. package/dist/esm/tools/AdvancedMagnifyViewport.js.map +1 -1
  33. package/dist/esm/tools/AdvancedMagnifyViewportManager.js +38 -4
  34. package/dist/esm/tools/AdvancedMagnifyViewportManager.js.map +1 -1
  35. package/dist/esm/tools/OrientationMarkerTool.js +54 -2
  36. package/dist/esm/tools/OrientationMarkerTool.js.map +1 -1
  37. package/dist/esm/tools/base/AnnotationTool.js +4 -1
  38. package/dist/esm/tools/base/AnnotationTool.js.map +1 -1
  39. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +5 -0
  40. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
  41. package/dist/esm/tools/segmentation/BrushTool.js +13 -2
  42. package/dist/esm/tools/segmentation/BrushTool.js.map +1 -1
  43. package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js +3 -0
  44. package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js.map +1 -1
  45. package/dist/esm/tools/segmentation/strategies/compositions/preview.js +10 -2
  46. package/dist/esm/tools/segmentation/strategies/compositions/preview.js.map +1 -1
  47. package/dist/esm/utilities/cine/playClip.js +2 -2
  48. package/dist/esm/utilities/cine/playClip.js.map +1 -1
  49. package/dist/esm/utilities/planar/filterAnnotationsForDisplay.js +3 -0
  50. package/dist/esm/utilities/planar/filterAnnotationsForDisplay.js.map +1 -1
  51. package/dist/types/tools/AdvancedMagnifyTool.d.ts +1 -1
  52. package/dist/types/tools/AdvancedMagnifyTool.d.ts.map +1 -1
  53. package/dist/types/tools/AdvancedMagnifyViewport.d.ts +1 -1
  54. package/dist/types/tools/AdvancedMagnifyViewport.d.ts.map +1 -1
  55. package/dist/types/tools/AdvancedMagnifyViewportManager.d.ts +2 -1
  56. package/dist/types/tools/AdvancedMagnifyViewportManager.d.ts.map +1 -1
  57. package/dist/types/tools/OrientationMarkerTool.d.ts +6 -0
  58. package/dist/types/tools/OrientationMarkerTool.d.ts.map +1 -1
  59. package/dist/types/tools/base/AnnotationTool.d.ts.map +1 -1
  60. package/dist/types/tools/displayTools/Labelmap/labelmapDisplay.d.ts.map +1 -1
  61. package/dist/types/tools/segmentation/BrushTool.d.ts.map +1 -1
  62. package/dist/types/tools/segmentation/strategies/compositions/dynamicThreshold.d.ts.map +1 -1
  63. package/dist/types/tools/segmentation/strategies/compositions/preview.d.ts.map +1 -1
  64. package/dist/types/types/ToolSpecificAnnotationTypes.d.ts +2 -1
  65. package/dist/types/types/ToolSpecificAnnotationTypes.d.ts.map +1 -1
  66. package/dist/types/utilities/cine/playClip.d.ts +1 -1
  67. package/dist/types/utilities/cine/playClip.d.ts.map +1 -1
  68. package/dist/types/utilities/planar/filterAnnotationsForDisplay.d.ts.map +1 -1
  69. package/dist/umd/index.js +1 -1
  70. package/dist/umd/index.js.map +1 -1
  71. package/package.json +4 -4
  72. package/src/tools/AdvancedMagnifyTool.ts +42 -66
  73. package/src/tools/AdvancedMagnifyViewport.ts +11 -3
  74. package/src/tools/AdvancedMagnifyViewportManager.ts +74 -3
  75. package/src/tools/OrientationMarkerTool.ts +87 -2
  76. package/src/tools/base/AnnotationTool.ts +8 -2
  77. package/src/tools/displayTools/Labelmap/labelmapDisplay.ts +7 -0
  78. package/src/tools/segmentation/BrushTool.ts +17 -1
  79. package/src/tools/segmentation/strategies/compositions/dynamicThreshold.ts +6 -0
  80. package/src/tools/segmentation/strategies/compositions/preview.ts +14 -4
  81. package/src/types/ToolSpecificAnnotationTypes.ts +2 -1
  82. package/src/utilities/cine/playClip.ts +2 -2
  83. package/src/utilities/planar/filterAnnotationsForDisplay.ts +3 -0
@@ -23,8 +23,8 @@ class AdvancedMagnifyTool extends AnnotationTool {
23
23
  shadow: true,
24
24
  magnifyingGlass: {
25
25
  radius: 125,
26
- zoomFactor: 2.5,
27
- zoomFactorList: [2.5, 3, 3.5, 4, 4.5, 5],
26
+ zoomFactor: 3,
27
+ zoomFactorList: [1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5],
28
28
  autoPan: {
29
29
  enabled: true,
30
30
  padding: 10,
@@ -53,7 +53,7 @@ class AdvancedMagnifyTool extends AnnotationTool {
53
53
  const canvasPos = currentPoints.canvas;
54
54
  const { magnifyingGlass: config } = this.configuration;
55
55
  const { radius, zoomFactor, autoPan } = config;
56
- const worldHandlesPoints = this._getWorldHandlesPoints(viewport, canvasPos, radius);
56
+ const canvasHandlePoints = this._getCanvasHandlePoints(canvasPos, radius);
57
57
  const camera = viewport.getCamera();
58
58
  const { viewPlaneNormal, viewUp } = camera;
59
59
  const referencedImageId = this.getReferencedImageId(viewport, worldPos, viewPlaneNormal, viewUp);
@@ -75,8 +75,9 @@ class AdvancedMagnifyTool extends AnnotationTool {
75
75
  sourceViewportId: viewport.id,
76
76
  magnifyViewportId,
77
77
  zoomFactor,
78
+ isCanvasAnnotation: true,
78
79
  handles: {
79
- points: worldHandlesPoints,
80
+ points: canvasHandlePoints,
80
81
  activeHandleIndex: null,
81
82
  },
82
83
  },
@@ -92,11 +93,12 @@ class AdvancedMagnifyTool extends AnnotationTool {
92
93
  padding: autoPan.padding,
93
94
  callback: (data) => {
94
95
  const annotationPoints = annotation.data.handles.points;
95
- const { world: worldDelta } = data.delta;
96
+ const { canvas: canvasDelta } = data.delta;
96
97
  for (let i = 0, len = annotationPoints.length; i < len; i++) {
97
- annotationPoints[i][0] += worldDelta[0];
98
- annotationPoints[i][1] += worldDelta[1];
99
- annotationPoints[i][2] += worldDelta[2];
98
+ const point = annotationPoints[i];
99
+ point[0] += canvasDelta[0];
100
+ point[1] += canvasDelta[1];
101
+ annotation.invalidated = true;
100
102
  }
101
103
  },
102
104
  },
@@ -117,11 +119,9 @@ class AdvancedMagnifyTool extends AnnotationTool {
117
119
  });
118
120
  };
119
121
  this.isPointNearTool = (element, annotation, canvasCoords, proximity) => {
120
- const enabledElement = getEnabledElement(element);
121
- const { viewport } = enabledElement;
122
122
  const { data } = annotation;
123
123
  const { points } = data.handles;
124
- const canvasCoordinates = points.map((p) => viewport.worldToCanvas(p));
124
+ const canvasCoordinates = points;
125
125
  const canvasTop = canvasCoordinates[0];
126
126
  const canvasBottom = canvasCoordinates[2];
127
127
  const canvasLeft = canvasCoordinates[3];
@@ -131,7 +131,7 @@ class AdvancedMagnifyTool extends AnnotationTool {
131
131
  canvasTop[1] + radius,
132
132
  ];
133
133
  const radiusPoint = getCanvasCircleRadius([center, canvasCoords]);
134
- if (Math.abs(radiusPoint - radius) < proximity * 1.5) {
134
+ if (Math.abs(radiusPoint - radius) < proximity * 2) {
135
135
  return true;
136
136
  }
137
137
  return false;
@@ -193,15 +193,14 @@ class AdvancedMagnifyTool extends AnnotationTool {
193
193
  this.isDrawing = true;
194
194
  const eventDetail = evt.detail;
195
195
  const { element, deltaPoints } = eventDetail;
196
- const worldPosDelta = deltaPoints?.world ?? [0, 0, 0];
196
+ const canvasDelta = deltaPoints?.canvas ?? [0, 0, 0];
197
197
  const enabledElement = getEnabledElement(element);
198
198
  const { renderingEngine } = enabledElement;
199
199
  const { annotation, viewportIdsToRender } = this.editData;
200
200
  const { points } = annotation.data.handles;
201
201
  points.forEach((point) => {
202
- point[0] += worldPosDelta[0];
203
- point[1] += worldPosDelta[1];
204
- point[2] += worldPosDelta[2];
202
+ point[0] += canvasDelta[0];
203
+ point[1] += canvasDelta[1];
205
204
  });
206
205
  annotation.invalidated = true;
207
206
  this.editData.hasMoved = true;
@@ -215,12 +214,11 @@ class AdvancedMagnifyTool extends AnnotationTool {
215
214
  const { data } = annotation;
216
215
  if (handleIndex === undefined) {
217
216
  const { deltaPoints } = eventDetail;
218
- const worldPosDelta = deltaPoints.world;
217
+ const canvasDelta = deltaPoints.canvas;
219
218
  const points = data.handles.points;
220
219
  points.forEach((point) => {
221
- point[0] += worldPosDelta[0];
222
- point[1] += worldPosDelta[1];
223
- point[2] += worldPosDelta[2];
220
+ point[0] += canvasDelta[0];
221
+ point[1] += canvasDelta[1];
224
222
  });
225
223
  annotation.invalidated = true;
226
224
  }
@@ -234,14 +232,10 @@ class AdvancedMagnifyTool extends AnnotationTool {
234
232
  };
235
233
  this._dragHandle = (evt) => {
236
234
  const eventDetail = evt.detail;
237
- const { element } = eventDetail;
238
- const enabledElement = getEnabledElement(element);
239
- const { viewport } = enabledElement;
240
- const { worldToCanvas } = viewport;
241
235
  const { annotation } = this.editData;
242
236
  const { data } = annotation;
243
237
  const { points } = data.handles;
244
- const canvasCoordinates = points.map((p) => worldToCanvas(p));
238
+ const canvasCoordinates = points;
245
239
  const canvasTop = canvasCoordinates[0];
246
240
  const canvasBottom = canvasCoordinates[2];
247
241
  const canvasLeft = canvasCoordinates[3];
@@ -256,11 +250,11 @@ class AdvancedMagnifyTool extends AnnotationTool {
256
250
  canvasCenter,
257
251
  currentCanvasPoints,
258
252
  ]);
259
- const newWorldHandlesPoints = this._getWorldHandlesPoints(viewport, canvasCenter, newRadius);
260
- points[0] = newWorldHandlesPoints[0];
261
- points[1] = newWorldHandlesPoints[1];
262
- points[2] = newWorldHandlesPoints[2];
263
- points[3] = newWorldHandlesPoints[3];
253
+ const newCanvasHandlePoints = this._getCanvasHandlePoints(canvasCenter, newRadius);
254
+ points[0] = newCanvasHandlePoints[0];
255
+ points[1] = newCanvasHandlePoints[1];
256
+ points[2] = newCanvasHandlePoints[2];
257
+ points[3] = newCanvasHandlePoints[3];
264
258
  };
265
259
  this.cancel = (element) => {
266
260
  if (!this.isDrawing) {
@@ -308,10 +302,10 @@ class AdvancedMagnifyTool extends AnnotationTool {
308
302
  if (!annotations?.length) {
309
303
  return renderStatus;
310
304
  }
311
- annotations = this.filterInteractableAnnotationsForElement(element, annotations);
312
305
  annotations = annotations?.filter((annotation) => annotation.data.sourceViewportId ===
313
306
  viewport.id);
314
- if (!annotations?.length) {
307
+ const filteredAnnotations = this.filterInteractableAnnotationsForElement(element, annotations);
308
+ if (!filteredAnnotations?.length) {
315
309
  return renderStatus;
316
310
  }
317
311
  const styleSpecifier = {
@@ -319,8 +313,8 @@ class AdvancedMagnifyTool extends AnnotationTool {
319
313
  toolName: this.getToolName(),
320
314
  viewportId: enabledElement.viewport.id,
321
315
  };
322
- for (let i = 0; i < annotations.length; i++) {
323
- const annotation = annotations[i];
316
+ for (let i = 0; i < filteredAnnotations.length; i++) {
317
+ const annotation = filteredAnnotations[i];
324
318
  const { annotationUID, data } = annotation;
325
319
  const { magnifyViewportId, zoomFactor, handles } = data;
326
320
  const { points, activeHandleIndex } = handles;
@@ -328,7 +322,7 @@ class AdvancedMagnifyTool extends AnnotationTool {
328
322
  const lineWidth = this.getStyle('lineWidth', styleSpecifier, annotation);
329
323
  const lineDash = this.getStyle('lineDash', styleSpecifier, annotation);
330
324
  const color = this.getStyle('color', styleSpecifier, annotation);
331
- const canvasCoordinates = points.map((p) => viewport.worldToCanvas(p));
325
+ const canvasCoordinates = points;
332
326
  const canvasTop = canvasCoordinates[0];
333
327
  const canvasBottom = canvasCoordinates[2];
334
328
  const canvasLeft = canvasCoordinates[3];
@@ -371,15 +365,13 @@ class AdvancedMagnifyTool extends AnnotationTool {
371
365
  }
372
366
  return renderStatus;
373
367
  };
374
- this._getWorldHandlesPoints = (viewport, canvasCenterPos, canvasRadius) => {
375
- const canvasHandlesPoints = [
376
- [canvasCenterPos[0], canvasCenterPos[1] - canvasRadius],
377
- [canvasCenterPos[0] + canvasRadius, canvasCenterPos[1]],
378
- [canvasCenterPos[0], canvasCenterPos[1] + canvasRadius],
379
- [canvasCenterPos[0] - canvasRadius, canvasCenterPos[1]],
368
+ this._getCanvasHandlePoints = (canvasCenterPos, canvasRadius) => {
369
+ return [
370
+ [canvasCenterPos[0], canvasCenterPos[1] - canvasRadius, 0],
371
+ [canvasCenterPos[0] + canvasRadius, canvasCenterPos[1], 0],
372
+ [canvasCenterPos[0], canvasCenterPos[1] + canvasRadius, 0],
373
+ [canvasCenterPos[0] - canvasRadius, canvasCenterPos[1], 0],
380
374
  ];
381
- const worldHandlesPoints = canvasHandlesPoints.map((p) => viewport.canvasToWorld(p));
382
- return worldHandlesPoints;
383
375
  };
384
376
  this.magnifyViewportManager = AdvancedMagnifyViewportManager.getInstance();
385
377
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AdvancedMagnifyTool.js","sourceRoot":"","sources":["../../../src/tools/AdvancedMagnifyTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,iBAAiB,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9E,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,gBAAgB,GACjB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AACzF,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EACL,UAAU,IAAI,aAAa,EAC3B,WAAW,IAAI,cAAc,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAUlC,OAAO,qCAAqC,MAAM,oDAAoD,CAAC;AAEvG,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAG9E,IAAK,0BAEJ;AAFD,WAAK,0BAA0B;IAC7B,yEAA2C,CAAA;AAC7C,CAAC,EAFI,0BAA0B,KAA1B,0BAA0B,QAE9B;AAED,MAAM,mBAAoB,SAAQ,cAAc;IAgB9C,YACE,YAA6B,EAAE,EAC/B,mBAA8B;QAC5B,yBAAyB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC7C,aAAa,EAAE;YACb,MAAM,EAAE,IAAI;YACZ,eAAe,EAAE;gBACf,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,GAAG;gBACf,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;gBACxC,OAAO,EAAE;oBACP,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,EAAE;iBACZ;aACF;YACD,OAAO,EAAE;gBACP,mBAAmB,EAAE;oBACnB,MAAM,EAAE,qBAAqB;oBAC7B,QAAQ,EAAE;wBACR;4BACE,WAAW,EAAE,aAAa,CAAC,SAAS;4BACpC,WAAW,EAAE,gBAAgB,CAAC,KAAK;yBACpC;qBACF;iBACF;aACF;SACF;KACF;QAED,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAYrC,qBAAgB,GAAG,CACjB,GAAoC,EACT,EAAE;YAC7B,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAC/C,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YACrD,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC;YACrC,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC;YACvC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YACvD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAE/C,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CACpD,QAAQ,EACR,SAAS,EACT,MAAM,CACP,CAAC;YAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAE3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CACjD,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,MAAM,CACP,CAAC;YAEF,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YACvC,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3C,MAAM,mBAAmB,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YAE9D,MAAM,UAAU,GAA8B;gBAC5C,aAAa;gBACb,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,IAAI;gBACjB,QAAQ,EAAE;oBACR,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;oBAC5B,eAAe,EAAgB,CAAC,GAAG,eAAe,CAAC;oBACnD,MAAM,EAAgB,CAAC,GAAG,MAAM,CAAC;oBACjC,mBAAmB;oBACnB,iBAAiB;iBAClB;gBACD,IAAI,EAAE;oBACJ,gBAAgB,EAAE,QAAQ,CAAC,EAAE;oBAC7B,iBAAiB;oBACjB,UAAU;oBACV,OAAO,EAAE;wBACP,MAAM,EAAE,kBAAkB;wBAC1B,iBAAiB,EAAE,IAAI;qBACxB;iBACF;aACF,CAAC;YAEF,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,UAAU,EAAE;gBACrD,iBAAiB;gBACjB,oBAAoB,EAAE,cAAc;gBACpC,QAAQ,EAAE,SAAS;gBACnB,MAAM;gBACN,UAAU;gBACV,OAAO,EAAE;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,QAAQ,EAAE,CAAC,IAAyB,EAAE,EAAE;wBACtC,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;wBACxD,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;wBAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;4BAC3D,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;4BACxC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;4BACxC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;yBACzC;oBACH,CAAC;iBACF;aACF,CAAC,CAAC;YAEH,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAEnC,MAAM,mBAAmB,GAAG,8BAA8B,CACxD,OAAO,EACP,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;YAEF,GAAG,CAAC,cAAc,EAAE,CAAC;YACrB,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAE5E,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC;QAEF,sBAAiB,GAAG,GAAG,EAAE;YAEvB,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,CAAC;YAEtC,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAC;YACxC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACjC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE;oBACvD,gBAAgB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;iBAC5C;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAaK,oBAAe,GAAG,CACvB,OAAuB,EACvB,UAAqC,EACrC,YAA0B,EAC1B,SAAiB,EACR,EAAE;YACX,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;YAEpC,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAC5B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAIhC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAKpE,CAAC;YAEF,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC9D,MAAM,MAAM,GAAG;gBACb,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM;gBACtB,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM;aACN,CAAC;YAClB,MAAM,WAAW,GAAG,qBAAqB,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;YAElE,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,SAAS,GAAG,GAAG,EAAE;gBACpD,OAAO,IAAI,CAAC;aACb;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QAEF,yBAAoB,GAAG,CACrB,GAAoC,EACpC,UAAqC,EAC/B,EAAE;YACR,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAEhC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;YAE9B,MAAM,mBAAmB,GAAG,8BAA8B,CACxD,OAAO,EACP,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;YAEF,IAAI,CAAC,QAAQ,GAAG;gBACd,UAAU;gBACV,mBAAmB;aACpB,CAAC;YAEF,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAE3B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAE9B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAE3C,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAE5E,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC,CAAC;QAEF,2BAAsB,GAAG,CACvB,GAAoC,EACpC,UAAqC,EACrC,MAAkB,EACZ,EAAE;YACR,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAChC,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAE5B,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;YAE9B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAChC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YAG1D,MAAM,mBAAmB,GAAG,8BAA8B,CACxD,OAAO,EACP,IAAI,CAAC,WAAW,EAAE,CACnB,CAAC;YAEF,IAAI,CAAC,QAAQ,GAAG;gBACd,UAAU;gBACV,mBAAmB;gBACnB,WAAW;aACZ,CAAC;YACF,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAE9B,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAE3B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAE3C,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAE5E,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC,CAAC;QAEF,iBAAY,GAAG,CAAC,GAAoC,EAAQ,EAAE;YAC5D,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAEhC,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACzE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAE5B,IAAI,CAAC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAEtC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAEhC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAE5B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAE3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YAEvB,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAE5E,IAAI,aAAa,EAAE;gBACjB,0BAA0B,CAAC,UAAU,CAAC,CAAC;aACxC;QACH,CAAC,CAAC;QAEF,sBAAiB,GAAG,CAAC,GAAoC,EAAQ,EAAE;YACjE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC;YAC7C,MAAM,aAAa,GAAG,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAE3C,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC1D,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YAE3C,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACvB,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC7B,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC7B,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;YAE9B,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;QAC9E,CAAC,CAAC;QAEF,wBAAmB,GAAG,CAAC,GAAoC,EAAQ,EAAE;YACnE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAEhC,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACvE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAE5B,IAAI,WAAW,KAAK,SAAS,EAAE;gBAE7B,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC;gBACpC,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC;gBAExC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;gBAEnC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;oBACvB,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC7B,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC7B,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC;gBACH,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;aAC/B;iBAAM;gBACL,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACtB,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;aAC/B;YAED,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAE3C,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;QAC9E,CAAC,CAAC;QAEF,gBAAW,GAAG,CAAC,GAAoC,EAAQ,EAAE;YAC3D,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAChC,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;YACpC,MAAM,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;YAEnC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACrC,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAC5B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAEhC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC9D,MAAM,YAAY,GAAiB;gBACjC,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM;gBACtB,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM;aACtB,CAAC;YAEF,MAAM,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;YACtC,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC;YAEjD,MAAM,SAAS,GAAG,qBAAqB,CAAC;gBACtC,YAAY;gBACZ,mBAAmB;aACpB,CAAC,CAAC;YACH,MAAM,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,CACvD,QAAQ,EACR,YAAY,EACZ,SAAS,CACV,CAAC;YAEF,MAAM,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC;QAEF,WAAM,GAAG,CAAC,OAAuB,EAAE,EAAE;YAEnC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,OAAO;aACR;YAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAChC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAE5B,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACzE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAE5B,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAEtC,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAE3C,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAE5E,IAAI,aAAa,EAAE;gBACjB,0BAA0B,CAAC,UAAU,CAAC,CAAC;aACxC;YAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,OAAO,UAAU,CAAC,aAAa,CAAC;QAClC,CAAC,CAAC;QAEF,oBAAe,GAAG,CAAC,OAAO,EAAE,EAAE;YAC5B,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC;YAEnC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7D,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACtE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAEhE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9D,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACtE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,CAAC,CAAC;QAEF,sBAAiB,GAAG,CAAC,OAAO,EAAE,EAAE;YAC9B,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC;YAEpC,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACzE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAEnE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACjE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACzE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnE,CAAC,CAAC;QAUF,qBAAgB,GAAG,CACjB,cAAqC,EACrC,gBAAkC,EACzB,EAAE;YACX,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;YACpC,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;YAE7B,IAAI,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;YAE9D,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE;gBACxB,OAAO,YAAY,CAAC;aACrB;YAED,WAAW,GAAG,IAAI,CAAC,uCAAuC,CACxD,OAAO,EACP,WAAW,CACZ,CAAC;YAEF,WAAW,GAAG,WAAW,EAAE,MAAM,CAC/B,CAAC,UAAU,EAAE,EAAE,CACe,UAAW,CAAC,IAAI,CAAC,gBAAgB;gBAC7D,QAAQ,CAAC,EAAE,CACd,CAAC;YAEF,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE;gBACxB,OAAO,YAAY,CAAC;aACrB;YAED,MAAM,cAAc,GAAmB;gBACrC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC5B,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE;aACvC,CAAC;YAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAA8B,CAAC;gBAC/D,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;gBAC3C,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;gBACxD,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;gBAE9C,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;gBAE7C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;gBACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;gBACvE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;gBAEjE,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACzC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CACR,CAAC;gBACpB,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBACvC,MAAM,YAAY,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBAC1C,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBAC9D,MAAM,MAAM,GAAG;oBACb,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM;oBACtB,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM;iBACN,CAAC;gBAGlB,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;oBACpD,OAAO,YAAY,CAAC;iBACrB;gBAED,IAAI,wBAAwB,CAAC;gBAE7B,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE;oBACvC,SAAS;iBACV;gBAED,IACE,CAAC,kBAAkB,CAAC,UAAU,CAAC;oBAC/B,CAAC,IAAI,CAAC,QAAQ;oBACd,iBAAiB,KAAK,IAAI,EAC1B;oBAEA,wBAAwB,GAAG,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC;iBACnE;gBAED,IAAI,wBAAwB,EAAE;oBAC5B,MAAM,cAAc,GAAG,GAAG,CAAC;oBAC3B,cAAc,CACZ,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,wBAAwB,EACxB;wBACE,KAAK;qBACN,CACF,CAAC;iBACH;gBAED,MAAM,MAAM,GAAG,GAAG,aAAa,kBAAkB,CAAC;gBAClD,MAAM,SAAS,GAAG,GAAG,CAAC;gBACtB,aAAa,CACX,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,MAAM,EACN,MAAM,EACN;oBACE,KAAK;oBACL,SAAS,EAAE,CAAC;iBACb,EACD,MAAM,CACP,CAAC;gBAEF,MAAM,eAAe,GACnB,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;gBAE7D,eAAe,CAAC,QAAQ,GAAG,MAAM,CAAC;gBAClC,eAAe,CAAC,MAAM,GAAG,MAAM,CAAC;gBAChC,eAAe,CAAC,UAAU,GAAG,UAAU,CAAC;gBACxC,eAAe,CAAC,MAAM,EAAE,CAAC;gBAEzB,YAAY,GAAG,IAAI,CAAC;aACrB;YAED,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC;QAkFM,2BAAsB,GAAG,CAC/B,QAAQ,EACR,eAAe,EACf,YAAY,EACI,EAAE;YAClB,MAAM,mBAAmB,GAAG;gBAC1B,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;gBACvD,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;gBACvD,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;gBACvD,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;aACxD,CAAC;YAEF,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvD,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CACR,CAAC;YAEpB,OAAO,kBAAkB,CAAC;QAC5B,CAAC,CAAC;QAtnBA,IAAI,CAAC,sBAAsB,GAAG,8BAA8B,CAAC,WAAW,EAAE,CAAC;IAC7E,CAAC;aA7CM,YAAO,GAAG,0BAA0B,CAAC;IAmkBrC,mBAAmB,CACxB,GAAoC,EACpC,UAAqC;QAErC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC9C,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;QACpC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;QAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAC1E,MAAM,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;QACrD,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAElE,MAAM,QAAQ,GAAG,IAAI,CAAC,2BAA2B,CAC/C,iBAAiB,EACjB,CAAC,aAAa,EAAE,EAAE;YAChB,IAAI,aAAa,KAAK,SAAS,EAAE;gBAC/B,UAAU,CAAC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAC9D,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;aAC/B;YAED,MAAM,EAAE,CAAC;YACT,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,CAAC,CACF,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC5B,IAAI,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI;YAC3B,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI;SAC3B,CAAC,CAAC;QAEH,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACtC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IAEO,2BAA2B,CAAC,iBAAiB,EAAE,gBAAgB;QACrE,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC;QAC9D,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAElD,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;QAClB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE;YAC5B,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACnE,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1C,GAAG,CAAC,eAAe,EAAE,CAAC;YACtB,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YAC3C,MAAM,YAAY,GAChB,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;gBACjC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,QAAQ,CAAC;YAEtC,IAAI,YAAY,EAAE;gBAChB,GAAG,CAAC,eAAe,EAAE,CAAC;gBACtB,gBAAgB,EAAE,CAAC;aACpB;QACH,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAEhD,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC;YAC1B,MAAM,CAAC,KAAK,GAAG,eAAe,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC;YAC1B,MAAM,CAAC,eAAe,GAAG,UAAU,KAAK,iBAAiB,CAAC;YAE1D,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;;AAsBH,mBAAmB,CAAC,QAAQ,GAAG,iBAAiB,CAAC;AAEjD,OAAO,EAAE,mBAAmB,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"AdvancedMagnifyTool.js","sourceRoot":"","sources":["../../../src/tools/AdvancedMagnifyTool.ts"],"names":[],"mappings":"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"}
@@ -128,7 +128,7 @@ class AdvancedMagnifyViewport {
128
128
  });
129
129
  return magnifyElement;
130
130
  }
131
- _convertZoomFactorToParalellScale(viewport, magnifyViewport, zoomFactor) {
131
+ _convertZoomFactorToParallelScale(viewport, magnifyViewport, zoomFactor) {
132
132
  const { parallelScale } = viewport.getCamera();
133
133
  const canvasRatio = magnifyViewport.canvas.offsetWidth / viewport.canvas.offsetWidth;
134
134
  return parallelScale * (1 / zoomFactor) * canvasRatio;
@@ -302,7 +302,7 @@ class AdvancedMagnifyViewport {
302
302
  }
303
303
  _syncViewportsCameras(sourceViewport, magnifyViewport) {
304
304
  const worldPos = sourceViewport.canvasToWorld(this.position);
305
- const parallelScale = this._convertZoomFactorToParalellScale(sourceViewport, magnifyViewport, this.zoomFactor);
305
+ const parallelScale = this._convertZoomFactorToParallelScale(sourceViewport, magnifyViewport, this.zoomFactor);
306
306
  const { focalPoint, position, viewPlaneNormal } = magnifyViewport.getCamera();
307
307
  const distance = Math.sqrt(Math.pow(focalPoint[0] - position[0], 2) +
308
308
  Math.pow(focalPoint[1] - position[1], 2) +
@@ -330,11 +330,17 @@ class AdvancedMagnifyViewport {
330
330
  const { viewport: sourceViewport } = this._sourceEnabledElement;
331
331
  const { viewport: magnifyViewport } = this._enabledElement;
332
332
  const sourceProperties = sourceViewport.getProperties();
333
+ const imageData = magnifyViewport.getImageData();
334
+ if (!imageData) {
335
+ return;
336
+ }
333
337
  magnifyViewport.setProperties(sourceProperties);
334
338
  this._syncViewportsCameras(sourceViewport, magnifyViewport);
335
339
  if (this._isStackViewport(sourceViewport)) {
336
340
  this._syncStackViewports(sourceViewport, magnifyViewport);
337
341
  }
342
+ this._syncViewportsCameras(sourceViewport, magnifyViewport);
343
+ magnifyViewport.render();
338
344
  }
339
345
  _resizeViewport() {
340
346
  const { viewport } = this._enabledElement;
@@ -1 +1 @@
1
- {"version":3,"file":"AdvancedMagnifyViewport.js","sourceRoot":"","sources":["../../../src/tools/AdvancedMagnifyViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdvancedMagnifyViewport.js","sourceRoot":"","sources":["../../../src/tools/AdvancedMagnifyViewport.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { vec3 } from 'gl-matrix';
2
- import { eventTarget, Enums, getRenderingEngine, CONSTANTS, } from '@cornerstonejs/core';
2
+ import { eventTarget, Enums, getRenderingEngine, CONSTANTS, getEnabledElementByViewportId, } from '@cornerstonejs/core';
3
3
  import { Events as cstEvents } from '../enums';
4
4
  import { AdvancedMagnifyViewport, } from './AdvancedMagnifyViewport';
5
5
  const ADVANCED_MAGNIFY_TOOL_NAME = 'AdvancedMagnify';
@@ -23,6 +23,7 @@ class AdvancedMagnifyViewportManager {
23
23
  this._magnifyViewportsMap.set(magnifyViewport.viewportId, {
24
24
  annotation,
25
25
  magnifyViewport,
26
+ magnifyViewportInfo: viewportInfo,
26
27
  });
27
28
  return magnifyViewport;
28
29
  };
@@ -31,11 +32,15 @@ class AdvancedMagnifyViewportManager {
31
32
  if (annotation.metadata.toolName !== ADVANCED_MAGNIFY_TOOL_NAME) {
32
33
  return;
33
34
  }
34
- this._destroyViewport(annotation.data.magnifyViewportId);
35
+ this.destroyViewport(annotation.data.magnifyViewportId);
35
36
  };
36
37
  this._newStackImageCallback = (evt) => {
37
38
  const { viewportId: sourceViewportId, imageId } = evt.detail;
38
39
  const magnifyViewportsMapEntries = this._getMagnifyViewportsMapEntriesBySourceViewportId(sourceViewportId);
40
+ const { viewport } = getEnabledElementByViewportId(sourceViewportId);
41
+ if (viewport.stackActorReInitialized) {
42
+ this._reset(sourceViewportId);
43
+ }
39
44
  magnifyViewportsMapEntries.forEach(({ annotation }) => {
40
45
  annotation.metadata.referencedImageId = imageId;
41
46
  annotation.invalidated = true;
@@ -84,7 +89,7 @@ class AdvancedMagnifyViewportManager {
84
89
  this._removeEventListeners();
85
90
  this._destroyViewports();
86
91
  }
87
- _destroyViewport(magnifyViewportId) {
92
+ destroyViewport(magnifyViewportId) {
88
93
  const magnifyViewportMapEntry = this._magnifyViewportsMap.get(magnifyViewportId);
89
94
  if (magnifyViewportMapEntry) {
90
95
  const { magnifyViewport } = magnifyViewportMapEntry;
@@ -97,7 +102,7 @@ class AdvancedMagnifyViewportManager {
97
102
  }
98
103
  _destroyViewports() {
99
104
  const magnifyViewportIds = Array.from(this._magnifyViewportsMap.keys());
100
- magnifyViewportIds.forEach((magnifyViewportId) => this._destroyViewport(magnifyViewportId));
105
+ magnifyViewportIds.forEach((magnifyViewportId) => this.destroyViewport(magnifyViewportId));
101
106
  }
102
107
  _getMagnifyViewportsMapEntriesBySourceViewportId(sourceViewportId) {
103
108
  const magnifyViewportsMapEntries = Array.from(this._magnifyViewportsMap.values());
@@ -106,6 +111,19 @@ class AdvancedMagnifyViewportManager {
106
111
  return viewport.id === sourceViewportId;
107
112
  });
108
113
  }
114
+ _reset(sourceViewportId) {
115
+ const magnifyViewports = this._getMagnifyViewportsMapEntriesBySourceViewportId(sourceViewportId);
116
+ magnifyViewports.forEach(({ magnifyViewport, annotation, magnifyViewportInfo }) => {
117
+ this.destroyViewport(magnifyViewport.viewportId);
118
+ const newEnabledElement = getEnabledElementByViewportId(sourceViewportId);
119
+ this.createViewport(annotation, {
120
+ ...magnifyViewportInfo,
121
+ sourceEnabledElement: {
122
+ ...newEnabledElement,
123
+ },
124
+ });
125
+ });
126
+ }
109
127
  _addEventListeners() {
110
128
  eventTarget.addEventListener(cstEvents.ANNOTATION_REMOVED, this._annotationRemovedCallback);
111
129
  }
@@ -114,11 +132,27 @@ class AdvancedMagnifyViewportManager {
114
132
  }
115
133
  _addSourceElementEventListener(element) {
116
134
  element.addEventListener(Events.STACK_NEW_IMAGE, this._newStackImageCallback);
135
+ const newStackHandler = (evt) => {
136
+ const { viewportId: sourceViewportId } = evt.detail;
137
+ this._reset(sourceViewportId);
138
+ };
139
+ element.addEventListener(Events.STACK_VIEWPORT_NEW_STACK, newStackHandler);
140
+ const newVolumeHandler = (evt) => {
141
+ const { viewportId: sourceViewportId } = evt.detail;
142
+ this._reset(sourceViewportId);
143
+ };
144
+ element.addEventListener(Events.VOLUME_VIEWPORT_NEW_VOLUME, newVolumeHandler);
117
145
  element.addEventListener(Events.VOLUME_NEW_IMAGE, this._newVolumeImageCallback);
146
+ element.newStackHandler = newStackHandler;
147
+ element.newVolumeHandler = newVolumeHandler;
118
148
  }
119
149
  _removeSourceElementEventListener(element) {
120
150
  element.removeEventListener(Events.STACK_NEW_IMAGE, this._newStackImageCallback);
121
151
  element.removeEventListener(Events.VOLUME_NEW_IMAGE, this._newVolumeImageCallback);
152
+ element.removeEventListener(Events.STACK_VIEWPORT_NEW_STACK, element.newStackHandler);
153
+ element.removeEventListener(Events.VOLUME_VIEWPORT_NEW_VOLUME, element.newVolumeHandler);
154
+ delete element.newStackHandler;
155
+ delete element.newVolumeHandler;
122
156
  }
123
157
  _initialize() {
124
158
  this._addEventListeners();
@@ -1 +1 @@
1
- {"version":3,"file":"AdvancedMagnifyViewportManager.js","sourceRoot":"","sources":["../../../src/tools/AdvancedMagnifyViewportManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdvancedMagnifyViewportManager.js","sourceRoot":"","sources":["../../../src/tools/AdvancedMagnifyViewportManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,WAAW,EACX,KAAK,EACL,kBAAkB,EAClB,SAAS,EACT,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EACL,uBAAuB,GAExB,MAAM,2BAA2B,CAAC;AAKnC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;AAErD,MAAM,kBAAkB,GAAG,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;AACjD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;AAoCzB,MAAM,8BAA8B;IAIlC;QAwBO,mBAAc,GAAG,CACtB,UAAqC,EACrC,YAAiC,EACR,EAAE;YAC3B,MAAM,EACJ,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACR,MAAM,EACN,UAAU,EACV,OAAO,GACR,GAAG,YAAY,CAAC;YACjB,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,oBAAoB,CAAC;YAC1D,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,cAAc,CAAC;YAElD,MAAM,eAAe,GAAG,IAAI,uBAAuB,CAAC;gBAClD,iBAAiB;gBACjB,oBAAoB;gBACpB,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,OAAO;aACR,CAAC,CAAC;YAEH,IAAI,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,EAAE;gBACxD,UAAU;gBACV,eAAe;gBACf,mBAAmB,EAAE,YAAY;aAClC,CAAC,CAAC;YAEH,OAAO,eAAe,CAAC;QACzB,CAAC,CAAC;QA4CM,+BAA0B,GAAG,CAAC,GAA+B,EAAE,EAAE;YACvE,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAElC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,KAAK,0BAA0B,EAAE;gBAC/D,OAAO;aACR;YAED,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1D,CAAC,CAAC;QAaM,2BAAsB,GAAG,CAC/B,GAAwC,EACxC,EAAE;YACF,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAC7D,MAAM,0BAA0B,GAC9B,IAAI,CAAC,gDAAgD,CAAC,gBAAgB,CAAC,CAAC;YAE1E,MAAM,EAAE,QAAQ,EAAE,GAAG,6BAA6B,CAAC,gBAAgB,CAAC,CAAC;YAKrE,IAAK,QAAiC,CAAC,uBAAuB,EAAE;gBAG9D,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;aAC/B;YAED,0BAA0B,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;gBACpD,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC;gBAChD,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;YAChC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEM,4BAAuB,GAAG,CAChC,GAAyC,EACzC,EAAE;YACF,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YACvE,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;YAC9D,MAAM,cAAc,GAAG,eAAe,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;YACrE,MAAM,EAAE,eAAe,EAAE,sBAAsB,EAAE,GAC/C,cAAc,CAAC,SAAS,EAAE,CAAC;YAE7B,MAAM,0BAA0B,GAC9B,IAAI,CAAC,gDAAgD,CAAC,gBAAgB,CAAC,CAAC;YAE1E,0BAA0B,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;gBACpD,MAAM,EAAE,eAAe,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC;gBAGhD,MAAM,UAAU,GACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;oBAC3D,kBAAkB,CAAC;gBAErB,IAAI,CAAC,UAAU,EAAE;oBACf,OAAO;iBACR;gBAED,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC;gBACpC,MAAM,oBAAoB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClE,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CACpC,IAAI,CAAC,MAAM,EAAE,EACb,oBAAoB,EACpB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAClB,CAAC;gBACF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;gBAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAC3B,IAAI,CAAC,MAAM,EAAE,EACb,sBAAsB,EACtB,SAAS,CACV,CAAC;gBAGF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;oBACzD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAEhC,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC1B,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC1B,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;iBAC3B;gBAED,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;YAChC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAjMA,IAAI,CAAC,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAQM,MAAM,CAAC,WAAW;QACvB,8BAA8B,CAAC,UAAU;YACvC,8BAA8B,CAAC,UAAU;gBACzC,IAAI,8BAA8B,EAAE,CAAC;QAEvC,OAAO,8BAA8B,CAAC,UAAU,CAAC;IACnD,CAAC;IA8CM,WAAW,CAAC,iBAAyB;QAC1C,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC;IAC3E,CAAC;IAMM,OAAO;QACZ,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEM,eAAe,CAAC,iBAAyB;QAC9C,MAAM,uBAAuB,GAC3B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEnD,IAAI,uBAAuB,EAAE;YAC3B,MAAM,EAAE,eAAe,EAAE,GAAG,uBAAuB,CAAC;YACpD,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,eAAe,CAAC,oBAAoB,CAAC;YAC1E,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,cAAc,CAAC;YAElD,IAAI,CAAC,iCAAiC,CAAC,aAAa,CAAC,CAAC;YAEtD,eAAe,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;SACrD;IACH,CAAC;IAEO,iBAAiB;QACvB,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC;QAExE,kBAAkB,CAAC,OAAO,CAAC,CAAC,iBAAiB,EAAE,EAAE,CAC/C,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,CACxC,CAAC;IACJ,CAAC;IAYO,gDAAgD,CAAC,gBAAgB;QACvE,MAAM,0BAA0B,GAAG,KAAK,CAAC,IAAI,CAC3C,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CACnC,CAAC;QAEF,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,oBAAoB,CAAC;YAC1D,OAAO,QAAQ,CAAC,EAAE,KAAK,gBAAgB,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC;IA6EO,MAAM,CAAC,gBAAwB;QACrC,MAAM,gBAAgB,GACpB,IAAI,CAAC,gDAAgD,CAAC,gBAAgB,CAAC,CAAC;QAE1E,gBAAgB,CAAC,OAAO,CACtB,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,EAAE;YACvD,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAIjD,MAAM,iBAAiB,GACrB,6BAA6B,CAAC,gBAAgB,CAAC,CAAC;YAElD,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE;gBAC9B,GAAG,mBAAmB;gBACtB,oBAAoB,EAAE;oBACpB,GAAG,iBAAiB;iBACrB;aACF,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,kBAAkB;QACxB,WAAW,CAAC,gBAAgB,CAC1B,SAAS,CAAC,kBAAkB,EAC5B,IAAI,CAAC,0BAA0B,CAChC,CAAC;IACJ,CAAC;IAEO,qBAAqB;QAC3B,WAAW,CAAC,mBAAmB,CAC7B,SAAS,CAAC,kBAAkB,EAC5B,IAAI,CAAC,0BAA0B,CAChC,CAAC;IACJ,CAAC;IAEO,8BAA8B,CAAC,OAAO;QAC5C,OAAO,CAAC,gBAAgB,CACtB,MAAM,CAAC,eAAe,EACtB,IAAI,CAAC,sBAAsB,CAC5B,CAAC;QAEF,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,EAAE;YAC9B,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,EAAE,eAAe,CAAC,CAAC;QAE3E,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAChC,CAAC,CAAC;QACF,OAAO,CAAC,gBAAgB,CACtB,MAAM,CAAC,0BAA0B,EACjC,gBAAgB,CACjB,CAAC;QAEF,OAAO,CAAC,gBAAgB,CACtB,MAAM,CAAC,gBAAgB,EACvB,IAAI,CAAC,uBAAuB,CAC7B,CAAC;QAGF,OAAO,CAAC,eAAe,GAAG,eAAe,CAAC;QAC1C,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC9C,CAAC;IAEO,iCAAiC,CAAC,OAAO;QAC/C,OAAO,CAAC,mBAAmB,CACzB,MAAM,CAAC,eAAe,EACtB,IAAI,CAAC,sBAAsB,CAC5B,CAAC;QAEF,OAAO,CAAC,mBAAmB,CACzB,MAAM,CAAC,gBAAgB,EACvB,IAAI,CAAC,uBAAuB,CAC7B,CAAC;QAGF,OAAO,CAAC,mBAAmB,CACzB,MAAM,CAAC,wBAAwB,EAC/B,OAAO,CAAC,eAAe,CACxB,CAAC;QACF,OAAO,CAAC,mBAAmB,CACzB,MAAM,CAAC,0BAA0B,EACjC,OAAO,CAAC,gBAAgB,CACzB,CAAC;QAGF,OAAO,OAAO,CAAC,eAAe,CAAC;QAC/B,OAAO,OAAO,CAAC,gBAAgB,CAAC;IAClC,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;CACF;AAED,OAAO,EACL,8BAA8B,IAAI,OAAO,EACzC,8BAA8B,GAC/B,CAAC"}
@@ -6,8 +6,9 @@ import vtkMapper from '@kitware/vtk.js/Rendering/Core/Mapper';
6
6
  import vtkXMLPolyDataReader from '@kitware/vtk.js/IO/XML/XMLPolyDataReader';
7
7
  import vtkPolyData from '@kitware/vtk.js/Common/DataModel/PolyData';
8
8
  import { BaseTool } from './base';
9
- import { getRenderingEngines } from '@cornerstonejs/core';
9
+ import { Enums, getEnabledElementByIds, getRenderingEngines, } from '@cornerstonejs/core';
10
10
  import { filterViewportsWithToolEnabled } from '../utilities/viewportFilters';
11
+ import { getToolGroup } from '../store/ToolGroupManager';
11
12
  const OverlayMarkerType = {
12
13
  ANNOTATED_CUBE: 1,
13
14
  AXES: 2,
@@ -58,16 +59,37 @@ class OrientationMarkerTool extends BaseTool {
58
59
  },
59
60
  }) {
60
61
  super(toolProps, defaultToolProps);
62
+ this._resizeObservers = new Map();
61
63
  this.configuration_invalidated = true;
62
64
  this.onSetToolEnabled = () => {
63
65
  this.initViewports();
64
66
  this.configuration_invalidated = true;
67
+ this._subscribeToViewportEvents();
65
68
  };
66
69
  this.onSetToolActive = () => {
67
70
  this.initViewports();
71
+ this.configuration_invalidated = true;
72
+ this._subscribeToViewportEvents();
68
73
  };
69
74
  this.onSetToolDisabled = () => {
70
75
  this.cleanUpData();
76
+ this._unsubscribeToViewportNewVolumeSet();
77
+ };
78
+ this.reset = () => {
79
+ this.configuration_invalidated = true;
80
+ this.initViewports();
81
+ };
82
+ this._getViewportsInfo = () => {
83
+ const viewports = getToolGroup(this.toolGroupId).viewportsInfo;
84
+ return viewports;
85
+ };
86
+ this.resize = (viewportId) => {
87
+ const orientationMarker = this.orientationMarkers[viewportId];
88
+ if (!orientationMarker) {
89
+ return;
90
+ }
91
+ const { orientationWidget } = orientationMarker;
92
+ orientationWidget.updateViewport();
71
93
  };
72
94
  this.orientationMarkers = {};
73
95
  this.configuration_invalidated = true;
@@ -76,6 +98,31 @@ class OrientationMarkerTool extends BaseTool {
76
98
  static { this.AXIS = 2; }
77
99
  static { this.VTPFILE = 3; }
78
100
  static { this.OVERLAY_MARKER_TYPES = OverlayMarkerType; }
101
+ _unsubscribeToViewportNewVolumeSet() {
102
+ const viewportsInfo = this._getViewportsInfo();
103
+ viewportsInfo.forEach(({ viewportId, renderingEngineId }) => {
104
+ const { viewport } = getEnabledElementByIds(viewportId, renderingEngineId);
105
+ const { element } = viewport;
106
+ element.removeEventListener(Enums.Events.VOLUME_VIEWPORT_NEW_VOLUME, this.reset);
107
+ const resizeObserver = this._resizeObservers.get(viewportId);
108
+ resizeObserver.unobserve(element);
109
+ });
110
+ }
111
+ _subscribeToViewportEvents() {
112
+ const viewportsInfo = this._getViewportsInfo();
113
+ viewportsInfo.forEach(({ viewportId, renderingEngineId }) => {
114
+ const { viewport } = getEnabledElementByIds(viewportId, renderingEngineId);
115
+ const { element } = viewport;
116
+ element.addEventListener(Enums.Events.VOLUME_VIEWPORT_NEW_VOLUME, this.reset);
117
+ const resizeObserver = new ResizeObserver(() => {
118
+ setTimeout(() => {
119
+ this.reset();
120
+ }, 100);
121
+ });
122
+ resizeObserver.observe(element);
123
+ this._resizeObservers.set(viewportId, resizeObserver);
124
+ });
125
+ }
79
126
  cleanUpData() {
80
127
  const renderingEngines = getRenderingEngines();
81
128
  const renderingEngine = renderingEngines[0];
@@ -105,7 +152,11 @@ class OrientationMarkerTool extends BaseTool {
105
152
  }
106
153
  let viewports = renderingEngine.getViewports();
107
154
  viewports = filterViewportsWithToolEnabled(viewports, this.getToolName());
108
- viewports.forEach((viewport) => this.addAxisActorInViewport(viewport));
155
+ viewports.forEach((viewport) => {
156
+ if (!viewport.getWidget(this.getToolName())) {
157
+ this.addAxisActorInViewport(viewport);
158
+ }
159
+ });
109
160
  }
110
161
  async addAxisActorInViewport(viewport) {
111
162
  const viewportId = viewport.id;
@@ -146,6 +197,7 @@ class OrientationMarkerTool extends BaseTool {
146
197
  orientationWidget,
147
198
  actor,
148
199
  };
200
+ viewport.addWidget(this.getToolName(), orientationWidget);
149
201
  renderWindow.render();
150
202
  viewport.getRenderingEngine().render();
151
203
  this.configuration_invalidated = false;