copper3d 2.0.9 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,7 +6,7 @@ import Stats from "three/examples/jsm/libs/stats.module";
6
6
  import { GUI } from "dat.gui";
7
7
  export class baseRenderer {
8
8
  constructor(container, options) {
9
- var _a, _b, _c, _d;
9
+ var _a, _b, _c, _d, _e;
10
10
  this.visualCtrls = [];
11
11
  this.container = container;
12
12
  this.options = options;
@@ -36,7 +36,7 @@ export class baseRenderer {
36
36
  });
37
37
  }
38
38
  this.currentScene.sceneName = "default";
39
- !!this.currentScene.vignette &&
39
+ (!!this.currentScene.vignette && !(!!((_e = this.options) === null || _e === void 0 ? void 0 : _e.alpha))) &&
40
40
  this.updateEnvironment(this.currentScene.vignette);
41
41
  this.state = {
42
42
  playbackSpeed: 1.0,
@@ -68,6 +68,9 @@ export class baseRenderer {
68
68
  this.container.appendChild(this.renderer.domElement);
69
69
  }
70
70
  updateEnvironment(vignette) {
71
+ var _a;
72
+ if (!!((_a = this.options) === null || _a === void 0 ? void 0 : _a.alpha))
73
+ return;
71
74
  const environment = environments.filter((entry) => entry.name === "Venice Sunset")[0];
72
75
  this.getCubeMapTexture(environment).then((envMap) => {
73
76
  const currentScene = this.getCurrentScene();
@@ -1 +1 @@
1
- {"version":3,"file":"baseRenderer.js","sourceRoot":"","sources":["../../src/Renderer/baseRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseRenderer.js","sourceRoot":"","sources":["../../src/Renderer/baseRenderer.ts"],"names":[],"mappings":"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"}
@@ -67,7 +67,9 @@ export class copperRenderer extends baseRenderer {
67
67
  alpha: alpha,
68
68
  });
69
69
  new_scene.sceneName = name;
70
- this.updateEnvironment(new_scene.vignette);
70
+ if (!alpha) {
71
+ this.updateEnvironment(new_scene.vignette);
72
+ }
71
73
  this.sceneMap[name] = new_scene;
72
74
  return new_scene;
73
75
  }
@@ -1 +1 @@
1
- {"version":3,"file":"copperRenderer.js","sourceRoot":"","sources":["../../src/Renderer/copperRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copperRenderer.js","sourceRoot":"","sources":["../../src/Renderer/copperRenderer.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,10 @@ export declare class CommToolsData {
19
19
  * Rewrite this {clearStoreImages} function under NrrdTools
20
20
  */
21
21
  clearStoreImages(): void;
22
+ /**
23
+ * Rewrite this {createEmptyPaintImage} function under NrrdTools
24
+ */
25
+ createEmptyPaintImage(dimensions: Array<number>, paintImages: IPaintImages): void;
22
26
  /**
23
27
  * Rewrite this {resizePaintArea} function under NrrdTools
24
28
  */
@@ -32,6 +32,14 @@ export class CommToolsData {
32
32
  cursorPageX: 0,
33
33
  cursorPageY: 0,
34
34
  sphereOrigin: { x: [0, 0, 0], y: [0, 0, 0], z: [0, 0, 0] },
35
+ tumourSphereOrigin: null,
36
+ skinSphereOrigin: null,
37
+ ribSphereOrigin: null,
38
+ nippleSphereOrigin: null,
39
+ tumourColor: "#00ff00",
40
+ skinColor: "#FFEB3B",
41
+ ribcageColor: "#2196F3",
42
+ nippleColor: "#E91E63",
35
43
  spherePlanB: true,
36
44
  sphereRadius: 10,
37
45
  Mouse_Over_x: 0,
@@ -46,6 +54,7 @@ export class CommToolsData {
46
54
  labels: ["label1", "label2", "label3"],
47
55
  getMask: (mask, sliceId, label, width, height, clearAllFlag) => { },
48
56
  getSphere: (sphereOrigin, sphereRadius) => { },
57
+ getCalculateSpherePositions: (tumourSphereOrigin, skinSphereOrigin, ribSphereOrigin, nippleSphereOrigin, aixs) => { },
49
58
  drawStartPos: { x: 1, y: 1 },
50
59
  };
51
60
  this.cursorPage = {
@@ -81,7 +90,9 @@ export class CommToolsData {
81
90
  brushAndEraserSize: 15,
82
91
  cursor: "dot",
83
92
  label: "label1",
93
+ cal_distance: "tumour",
84
94
  sphere: false,
95
+ calculator: false,
85
96
  readyToUpdate: true,
86
97
  defaultPaintCursor: switchPencilIcon("dot"),
87
98
  max_sensitive: 100,
@@ -191,6 +202,12 @@ export class CommToolsData {
191
202
  clearStoreImages() {
192
203
  throw new Error("Child class must implement abstract clearStoreImages, currently you can find it in NrrdTools.");
193
204
  }
205
+ /**
206
+ * Rewrite this {createEmptyPaintImage} function under NrrdTools
207
+ */
208
+ createEmptyPaintImage(dimensions, paintImages) {
209
+ throw new Error("Child class must implement abstract clearStoreImages, currently you can find it in NrrdTools.");
210
+ }
194
211
  /**
195
212
  * Rewrite this {resizePaintArea} function under NrrdTools
196
213
  */
@@ -1 +1 @@
1
- {"version":3,"file":"CommToolsData.js","sourceRoot":"","sources":["../../../src/Utils/segmentation/CommToolsData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommToolsData.js","sourceRoot":"","sources":["../../../src/Utils/segmentation/CommToolsData.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,10 @@ export declare class DrawToolCore extends CommToolsData {
15
15
  setPencilIconUrls(urls: string[]): void;
16
16
  private setCurrentLayer;
17
17
  draw(opts?: IDrawOpts): void;
18
+ drawCalSphereDown(x: number, y: number, sliceIndex: number, cal_position: "tumour" | "skin" | "nipple" | "ribcage"): void;
19
+ drawCalSphereUp(): void;
20
+ private zoomActionAfterDrawSphere;
21
+ private clearSpherePrintStoreImages;
18
22
  private paintOnCanvas;
19
23
  /*************************************May consider to move outside *******************************************/
20
24
  private drawLine;
@@ -25,13 +29,26 @@ export declare class DrawToolCore extends CommToolsData {
25
29
  private configMouseZoomWheel;
26
30
  private enableCrosshair;
27
31
  drawImageOnEmptyImage(canvas: HTMLCanvasElement): void;
32
+ /****************************Sphere calculate distance functions****************************************************/
33
+ private getSpherePosition;
34
+ drawCalculatorSphereOnEachViews(axis: "x" | "y" | "z"): void;
28
35
  /****************************Sphere functions****************************************************/
29
36
  private storeSphereImages;
30
37
  private drawSphereOnEachViews;
38
+ /**
39
+ *
40
+ * @param ctx draw sphere canvas ctx
41
+ * @param x width must be match the origin size, size factor 1, ignore the size factor
42
+ * @param y height must be match the origin size, size factor 1, ignore the size factor
43
+ * @param radius radius must be match the origin size, size factor 1, ignore the size factor
44
+ * @param color sphere color
45
+ */
31
46
  private drawSphereCore;
32
47
  private setSphereCanvasSize;
33
48
  private configMouseSphereWheel;
49
+ drawCalculatorSphere(radius: number): void;
34
50
  drawSphere(mouseX: number, mouseY: number, radius: number): void;
51
+ private clearSphereCanvas;
35
52
  /**
36
53
  * We generate the MRI slice from threejs based on mm, but when we display it is based on pixel size/distance.
37
54
  * So, the index munber on each axis (sagittal, axial, coronal) is the slice's depth in mm distance. And the width and height displayed on screen is the slice's width and height in pixel distance.
@@ -59,7 +59,7 @@ export class DrawToolCore extends CommToolsData {
59
59
  initDrawToolCore() {
60
60
  let undoFlag = false;
61
61
  this.container.addEventListener("keydown", (ev) => {
62
- if (ev.key === "Shift" && !this.gui_states.sphere) {
62
+ if (ev.key === "Shift" && !this.gui_states.sphere && !this.gui_states.calculator) {
63
63
  if (this.protectedData.Is_Ctrl_Pressed) {
64
64
  this.protectedData.Is_Shift_Pressed = false;
65
65
  return;
@@ -136,9 +136,64 @@ export class DrawToolCore extends CommToolsData {
136
136
  if (!!opts) {
137
137
  this.nrrd_states.getMask = opts === null || opts === void 0 ? void 0 : opts.getMaskData;
138
138
  this.nrrd_states.getSphere = opts === null || opts === void 0 ? void 0 : opts.getSphereData;
139
+ this.nrrd_states.getCalculateSpherePositions = opts === null || opts === void 0 ? void 0 : opts.getCalculateSpherePositionsData;
139
140
  }
140
141
  this.paintOnCanvas();
141
142
  }
143
+ drawCalSphereDown(x, y, sliceIndex, cal_position) {
144
+ this.nrrd_states.sphereRadius = 5;
145
+ this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleZoomWheel);
146
+ let mouseX = x / this.nrrd_states.sizeFoctor;
147
+ let mouseY = y / this.nrrd_states.sizeFoctor;
148
+ // record mouseX,Y, and enable crosshair function
149
+ this.nrrd_states.sphereOrigin[this.protectedData.axis] = [
150
+ mouseX,
151
+ mouseY,
152
+ sliceIndex,
153
+ ];
154
+ this.setUpSphereOrigins(mouseX, mouseY, sliceIndex);
155
+ switch (cal_position) {
156
+ case "tumour":
157
+ this.nrrd_states.tumourSphereOrigin = JSON.parse(JSON.stringify(this.nrrd_states.sphereOrigin));
158
+ break;
159
+ case "skin":
160
+ this.nrrd_states.skinSphereOrigin = JSON.parse(JSON.stringify(this.nrrd_states.sphereOrigin));
161
+ break;
162
+ case "nipple":
163
+ this.nrrd_states.nippleSphereOrigin = JSON.parse(JSON.stringify(this.nrrd_states.sphereOrigin));
164
+ break;
165
+ case "ribcage":
166
+ this.nrrd_states.ribSphereOrigin = JSON.parse(JSON.stringify(this.nrrd_states.sphereOrigin));
167
+ break;
168
+ }
169
+ this.nrrd_states.cursorPageX = mouseX;
170
+ this.nrrd_states.cursorPageY = mouseY;
171
+ this.enableCrosshair();
172
+ // draw circle setup width/height for sphere canvas
173
+ this.drawCalculatorSphere(this.nrrd_states.sphereRadius);
174
+ this.protectedData.canvases.drawingCanvas.addEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
175
+ }
176
+ drawCalSphereUp() {
177
+ // TODO send data to outside
178
+ // this.clearStoreImages();
179
+ this.clearSpherePrintStoreImages();
180
+ this.drawCalculatorSphereOnEachViews("x");
181
+ this.drawCalculatorSphereOnEachViews("y");
182
+ this.drawCalculatorSphereOnEachViews("z");
183
+ !!this.nrrd_states.getCalculateSpherePositions &&
184
+ this.nrrd_states.getCalculateSpherePositions(this.nrrd_states.tumourSphereOrigin, this.nrrd_states.skinSphereOrigin, this.nrrd_states.ribSphereOrigin, this.nrrd_states.nippleSphereOrigin, this.protectedData.axis);
185
+ this.zoomActionAfterDrawSphere();
186
+ this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
187
+ }
188
+ zoomActionAfterDrawSphere() {
189
+ this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleZoomWheel);
190
+ }
191
+ clearSpherePrintStoreImages() {
192
+ this.protectedData.maskData.paintImages.x.length = 0;
193
+ this.protectedData.maskData.paintImages.y.length = 0;
194
+ this.protectedData.maskData.paintImages.z.length = 0;
195
+ this.createEmptyPaintImage(this.nrrd_states.dimensions, this.protectedData.maskData.paintImages);
196
+ }
142
197
  paintOnCanvas() {
143
198
  var _a, _b, _c;
144
199
  /**
@@ -261,25 +316,13 @@ export class DrawToolCore extends CommToolsData {
261
316
  this.nrrd_states.cursorPageY =
262
317
  e.offsetY / this.nrrd_states.sizeFoctor;
263
318
  this.enableCrosshair();
319
+ this.protectedData.canvases.drawingCanvas.addEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
264
320
  }
265
321
  else if (this.gui_states.sphere && !this.nrrd_states.enableCursorChoose) {
266
- this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleZoomWheel);
267
- let mouseX = e.offsetX / this.nrrd_states.sizeFoctor;
268
- let mouseY = e.offsetY / this.nrrd_states.sizeFoctor;
269
- // record mouseX,Y, and enable crosshair function
270
- this.nrrd_states.sphereOrigin[this.protectedData.axis] = [
271
- mouseX,
272
- mouseY,
273
- this.nrrd_states.currentIndex,
274
- ];
275
- this.setUpSphereOrigins(mouseX, mouseY);
276
- this.nrrd_states.cursorPageX = mouseX;
277
- this.nrrd_states.cursorPageY = mouseY;
278
- this.enableCrosshair();
279
- // draw circle setup width/height for sphere canvas
280
- this.drawSphere(e.offsetX, e.offsetY, this.nrrd_states.sphereRadius);
281
- this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleSphereWheel, true);
282
- this.protectedData.canvases.drawingCanvas.addEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
322
+ sphere(e);
323
+ }
324
+ else if (this.gui_states.calculator && !this.nrrd_states.enableCursorChoose) {
325
+ this.drawCalSphereDown(e.offsetX, e.offsetY, this.nrrd_states.currentIndex, this.gui_states.cal_distance);
283
326
  }
284
327
  }
285
328
  else if (e.button === 2) {
@@ -298,6 +341,27 @@ export class DrawToolCore extends CommToolsData {
298
341
  };
299
342
  // disable browser right click menu
300
343
  this.protectedData.canvases.drawingCanvas.addEventListener("pointerdown", this.drawingPrameters.handleOnDrawingMouseDown, true);
344
+ const sphere = (e) => {
345
+ // set sphere size
346
+ this.nrrd_states.sphereRadius = 10;
347
+ this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleZoomWheel);
348
+ let mouseX = e.offsetX / this.nrrd_states.sizeFoctor;
349
+ let mouseY = e.offsetY / this.nrrd_states.sizeFoctor;
350
+ // record mouseX,Y, and enable crosshair function
351
+ this.nrrd_states.sphereOrigin[this.protectedData.axis] = [
352
+ mouseX,
353
+ mouseY,
354
+ this.nrrd_states.currentIndex,
355
+ ];
356
+ this.setUpSphereOrigins(mouseX, mouseY, this.nrrd_states.currentIndex);
357
+ this.nrrd_states.cursorPageX = mouseX;
358
+ this.nrrd_states.cursorPageY = mouseY;
359
+ this.enableCrosshair();
360
+ // draw circle setup width/height for sphere canvas
361
+ this.drawSphere(mouseX, mouseY, this.nrrd_states.sphereRadius);
362
+ this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleSphereWheel, true);
363
+ this.protectedData.canvases.drawingCanvas.addEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
364
+ };
301
365
  const redrawPreviousImageToLabelCtx = (ctx, label = "default") => {
302
366
  var _a;
303
367
  let paintImages;
@@ -391,7 +455,8 @@ export class DrawToolCore extends CommToolsData {
391
455
  // findout all index in the sphere radius range in Axial view
392
456
  if (this.nrrd_states.spherePlanB) {
393
457
  // clear stroe images
394
- this.clearStoreImages();
458
+ // this.clearStoreImages();
459
+ this.clearSpherePrintStoreImages();
395
460
  for (let i = 0; i < this.nrrd_states.sphereRadius; i++) {
396
461
  this.drawSphereOnEachViews(i, "x");
397
462
  this.drawSphereOnEachViews(i, "y");
@@ -400,18 +465,31 @@ export class DrawToolCore extends CommToolsData {
400
465
  }
401
466
  !!this.nrrd_states.getSphere &&
402
467
  this.nrrd_states.getSphere(this.nrrd_states.sphereOrigin.z, this.nrrd_states.sphereRadius / this.nrrd_states.sizeFoctor);
403
- this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleZoomWheel);
404
468
  this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleSphereWheel, true);
469
+ this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleZoomWheel);
470
+ this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
405
471
  }
406
- else if (this.gui_states.sphere &&
472
+ else if ((this.gui_states.sphere || this.gui_states.calculator) &&
407
473
  this.nrrd_states.enableCursorChoose) {
408
474
  this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleZoomWheel);
475
+ this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
476
+ }
477
+ else if (this.gui_states.calculator &&
478
+ !this.nrrd_states.enableCursorChoose) {
479
+ // When mouse up
480
+ this.drawCalSphereUp();
409
481
  }
410
482
  }
411
483
  else if (e.button === 2) {
412
484
  rightclicked = false;
413
485
  this.protectedData.canvases.drawingCanvas.style.cursor = "grab";
486
+ setTimeout(() => {
487
+ this.protectedData.canvases.drawingCanvas.style.cursor = this.gui_states.defaultPaintCursor;
488
+ }, 2000);
414
489
  this.protectedData.canvases.drawingCanvas.removeEventListener("pointermove", this.drawingPrameters.handleOnPanMouseMove);
490
+ if (this.gui_states.sphere || this.gui_states.calculator) {
491
+ this.zoomActionAfterDrawSphere();
492
+ }
415
493
  }
416
494
  else {
417
495
  return;
@@ -473,8 +551,8 @@ export class DrawToolCore extends CommToolsData {
473
551
  this.protectedData.ctxes.drawingCtx.clearRect(0, 0, this.nrrd_states.changedWidth, this.nrrd_states.changedHeight);
474
552
  const ex = this.nrrd_states.cursorPageX * this.nrrd_states.sizeFoctor;
475
553
  const ey = this.nrrd_states.cursorPageY * this.nrrd_states.sizeFoctor;
476
- this.drawLine(ex, 0, ex, this.protectedData.canvases.drawingCanvas.height);
477
- this.drawLine(0, ey, this.protectedData.canvases.drawingCanvas.width, ey);
554
+ this.drawLine(ex, 0, ex, this.nrrd_states.changedWidth);
555
+ this.drawLine(0, ey, this.nrrd_states.changedHeight, ey);
478
556
  }
479
557
  }
480
558
  this.protectedData.ctxes.drawingCtx.drawImage(this.protectedData.canvases.drawingCanvasLayerMaster, 0, 0);
@@ -604,15 +682,17 @@ export class DrawToolCore extends CommToolsData {
604
682
  moveDistance = w / this.nrrd_states.originWidth;
605
683
  if (moveDistance > 8) {
606
684
  moveDistance = 8;
685
+ this.resetPaintAreaUIPosition();
607
686
  }
608
687
  else if (moveDistance < 1) {
609
688
  moveDistance = 1;
689
+ this.resetPaintAreaUIPosition();
610
690
  }
611
691
  else {
612
- this.resizePaintArea(moveDistance);
613
692
  this.resetPaintAreaUIPosition(l, t);
614
- this.setIsDrawFalse(1000);
615
693
  }
694
+ this.resizePaintArea(moveDistance);
695
+ this.setIsDrawFalse(1000);
616
696
  this.nrrd_states.sizeFoctor = moveDistance;
617
697
  };
618
698
  return handleZoomWheelMove;
@@ -640,6 +720,60 @@ export class DrawToolCore extends CommToolsData {
640
720
  drawImageOnEmptyImage(canvas) {
641
721
  this.protectedData.ctxes.emptyCtx.drawImage(canvas, 0, 0, this.protectedData.canvases.emptyCanvas.width, this.protectedData.canvases.emptyCanvas.height);
642
722
  }
723
+ /****************************Sphere calculate distance functions****************************************************/
724
+ getSpherePosition(position, axis) {
725
+ const mouseX = position[axis][0];
726
+ const mouseY = position[axis][1];
727
+ const sliceIndex = position[axis][2];
728
+ return { x: mouseX, y: mouseY, z: sliceIndex };
729
+ }
730
+ drawCalculatorSphereOnEachViews(axis) {
731
+ // init sphere canvas width and height
732
+ this.setSphereCanvasSize(axis);
733
+ // get drawingSphere canvas for storing
734
+ const ctx = this.protectedData.ctxes.drawingSphereCtx;
735
+ const canvas = this.protectedData.canvases.drawingSphereCanvas;
736
+ let tumourPosition = !!this.nrrd_states.tumourSphereOrigin ? Object.assign(this.getSpherePosition(this.nrrd_states.tumourSphereOrigin, axis), { color: this.nrrd_states.tumourColor }) : null;
737
+ let skinPosition = !!this.nrrd_states.skinSphereOrigin ? Object.assign(this.getSpherePosition(this.nrrd_states.skinSphereOrigin, axis), { color: this.nrrd_states.skinColor }) : null;
738
+ let ribcagePosition = !!this.nrrd_states.ribSphereOrigin ? Object.assign(this.getSpherePosition(this.nrrd_states.ribSphereOrigin, axis), { color: this.nrrd_states.ribcageColor }) : null;
739
+ let nipplePosition = !!this.nrrd_states.nippleSphereOrigin ? Object.assign(this.getSpherePosition(this.nrrd_states.nippleSphereOrigin, axis), { color: this.nrrd_states.nippleColor }) : null;
740
+ let positionGroup = [];
741
+ if (!!tumourPosition)
742
+ positionGroup.push(tumourPosition);
743
+ if (!!skinPosition)
744
+ positionGroup.push(skinPosition);
745
+ if (!!ribcagePosition)
746
+ positionGroup.push(ribcagePosition);
747
+ if (!!nipplePosition)
748
+ positionGroup.push(nipplePosition);
749
+ let copyPosition = JSON.parse(JSON.stringify(positionGroup));
750
+ let rePositionGroup = [];
751
+ // group same slice points
752
+ positionGroup.forEach((p) => {
753
+ let temp = [];
754
+ let sameIndex = [];
755
+ for (let i = 0; i < copyPosition.length; i++) {
756
+ if (p.z == copyPosition[i].z) {
757
+ temp.push(copyPosition[i]);
758
+ sameIndex.push(i);
759
+ }
760
+ }
761
+ sameIndex.reverse();
762
+ sameIndex.forEach(i => copyPosition.splice(i, 1));
763
+ if (temp.length > 0)
764
+ rePositionGroup.push(temp);
765
+ if (copyPosition.length == 0) {
766
+ return;
767
+ }
768
+ });
769
+ rePositionGroup.forEach((group) => {
770
+ group.forEach(p => {
771
+ this.drawSphereCore(ctx, p.x, p.y, this.nrrd_states.sphereRadius, p.color);
772
+ });
773
+ this.storeSphereImages(group[0].z, axis);
774
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
775
+ });
776
+ }
643
777
  /****************************Sphere functions****************************************************/
644
778
  // for sphere
645
779
  storeSphereImages(index, axis) {
@@ -659,21 +793,29 @@ export class DrawToolCore extends CommToolsData {
659
793
  const ctx = this.protectedData.ctxes.drawingSphereCtx;
660
794
  const canvas = this.protectedData.canvases.drawingSphereCanvas;
661
795
  if (preIndex === nextIndex) {
662
- this.drawSphereCore(ctx, mouseX, mouseY, this.nrrd_states.sphereRadius / this.nrrd_states.sizeFoctor);
796
+ this.drawSphereCore(ctx, mouseX, mouseY, this.nrrd_states.sphereRadius, this.gui_states.fillColor);
663
797
  this.storeSphereImages(preIndex, axis);
664
798
  }
665
799
  else {
666
- this.drawSphereCore(ctx, mouseX, mouseY, (this.nrrd_states.sphereRadius - decay) / this.nrrd_states.sizeFoctor);
800
+ this.drawSphereCore(ctx, mouseX, mouseY, (this.nrrd_states.sphereRadius - decay), this.gui_states.fillColor);
667
801
  this.drawImageOnEmptyImage(canvas);
668
802
  this.storeSphereImages(preIndex, axis);
669
803
  this.storeSphereImages(nextIndex, axis);
670
804
  }
671
805
  ctx.clearRect(0, 0, canvas.width, canvas.height);
672
806
  }
673
- drawSphereCore(ctx, x, y, radius) {
807
+ /**
808
+ *
809
+ * @param ctx draw sphere canvas ctx
810
+ * @param x width must be match the origin size, size factor 1, ignore the size factor
811
+ * @param y height must be match the origin size, size factor 1, ignore the size factor
812
+ * @param radius radius must be match the origin size, size factor 1, ignore the size factor
813
+ * @param color sphere color
814
+ */
815
+ drawSphereCore(ctx, x, y, radius, color) {
674
816
  ctx.beginPath();
675
817
  ctx.arc(x, y, radius, 0, 2 * Math.PI);
676
- ctx.fillStyle = this.gui_states.fillColor;
818
+ ctx.fillStyle = color;
677
819
  ctx.fill();
678
820
  ctx.closePath();
679
821
  }
@@ -718,17 +860,46 @@ export class DrawToolCore extends CommToolsData {
718
860
  };
719
861
  return sphereEvent;
720
862
  }
863
+ drawCalculatorSphere(radius) {
864
+ // clear canvas
865
+ const [canvas, ctx] = this.clearSphereCanvas();
866
+ if (!!this.nrrd_states.tumourSphereOrigin && this.nrrd_states.tumourSphereOrigin[this.protectedData.axis][2] === this.nrrd_states.currentIndex) {
867
+ this.drawSphereCore(ctx, this.nrrd_states.tumourSphereOrigin[this.protectedData.axis][0], this.nrrd_states.tumourSphereOrigin[this.protectedData.axis][1], radius, this.nrrd_states.tumourColor);
868
+ }
869
+ if (!!this.nrrd_states.skinSphereOrigin && this.nrrd_states.skinSphereOrigin[this.protectedData.axis][2] === this.nrrd_states.currentIndex) {
870
+ this.drawSphereCore(ctx, this.nrrd_states.skinSphereOrigin[this.protectedData.axis][0], this.nrrd_states.skinSphereOrigin[this.protectedData.axis][1], radius, this.nrrd_states.skinColor);
871
+ }
872
+ if (!!this.nrrd_states.ribSphereOrigin && this.nrrd_states.ribSphereOrigin[this.protectedData.axis][2] === this.nrrd_states.currentIndex) {
873
+ this.drawSphereCore(ctx, this.nrrd_states.ribSphereOrigin[this.protectedData.axis][0], this.nrrd_states.ribSphereOrigin[this.protectedData.axis][1], radius, this.nrrd_states.ribcageColor);
874
+ }
875
+ if (!!this.nrrd_states.nippleSphereOrigin && this.nrrd_states.nippleSphereOrigin[this.protectedData.axis][2] === this.nrrd_states.currentIndex) {
876
+ this.drawSphereCore(ctx, this.nrrd_states.nippleSphereOrigin[this.protectedData.axis][0], this.nrrd_states.nippleSphereOrigin[this.protectedData.axis][1], radius, this.nrrd_states.nippleColor);
877
+ }
878
+ this.protectedData.ctxes.drawingLayerMasterCtx.drawImage(canvas, 0, 0, this.nrrd_states.changedWidth, this.nrrd_states.changedHeight);
879
+ }
721
880
  drawSphere(mouseX, mouseY, radius) {
722
881
  // clear canvas
723
- this.protectedData.canvases.drawingSphereCanvas.width =
724
- this.protectedData.canvases.drawingCanvasLayerMaster.width;
725
- this.protectedData.canvases.drawingSphereCanvas.height =
726
- this.protectedData.canvases.drawingCanvasLayerMaster.height;
882
+ const [canvas, ctx] = this.clearSphereCanvas();
883
+ this.drawSphereCore(ctx, mouseX, mouseY, radius, this.gui_states.fillColor);
884
+ console.log("when drawing shpere on canvas");
885
+ console.log("Line 1256 mastercanvasesize:", this.protectedData.canvases.drawingCanvasLayerMaster.width, this.protectedData.canvases.drawingCanvasLayerMaster.height);
886
+ console.log("current xy:", mouseX, mouseY);
887
+ console.log("current changed width:", this.nrrd_states.changedWidth, this.nrrd_states.changedHeight);
888
+ this.protectedData.ctxes.drawingLayerMasterCtx.drawImage(canvas, 0, 0, this.nrrd_states.changedWidth, this.nrrd_states.changedHeight);
889
+ }
890
+ clearSphereCanvas() {
891
+ // this.protectedData.canvases.drawingSphereCanvas.width =
892
+ // this.protectedData.canvases.drawingCanvasLayerMaster.width;
893
+ // this.protectedData.canvases.drawingSphereCanvas.height =
894
+ // this.protectedData.canvases.drawingCanvasLayerMaster.height;
895
+ // clear drawingCanvasLayerMaster
896
+ this.protectedData.canvases.drawingCanvasLayerMaster.width = this.protectedData.canvases.drawingCanvasLayerMaster.width;
897
+ // resize sphere canvas size to original size
898
+ this.protectedData.canvases.drawingSphereCanvas.width = this.protectedData.canvases.originCanvas.width;
899
+ this.protectedData.canvases.drawingSphereCanvas.height = this.protectedData.canvases.originCanvas.height;
727
900
  const canvas = this.protectedData.canvases.drawingSphereCanvas;
728
901
  const ctx = this.protectedData.ctxes.drawingSphereCtx;
729
- this.protectedData.ctxes.drawingLayerMasterCtx.clearRect(0, 0, canvas.width, canvas.height);
730
- this.drawSphereCore(ctx, mouseX, mouseY, radius);
731
- this.protectedData.ctxes.drawingLayerMasterCtx.drawImage(canvas, 0, 0, this.nrrd_states.changedWidth, this.nrrd_states.changedHeight);
902
+ return [canvas, ctx];
732
903
  }
733
904
  /**
734
905
  * We generate the MRI slice from threejs based on mm, but when we display it is based on pixel size/distance.
@@ -826,9 +997,9 @@ export class DrawToolCore extends CommToolsData {
826
997
  }
827
998
  return { currentIndex, oldIndex, convertCursorNumX, convertCursorNumY };
828
999
  }
829
- setUpSphereOrigins(mouseX, mouseY) {
1000
+ setUpSphereOrigins(mouseX, mouseY, sliceIndex) {
830
1001
  const convertCursor = (from, to) => {
831
- const convertObj = this.convertCursorPoint(from, to, mouseX, mouseY, this.nrrd_states.currentIndex);
1002
+ const convertObj = this.convertCursorPoint(from, to, mouseX, mouseY, sliceIndex);
832
1003
  return {
833
1004
  convertCursorNumX: convertObj === null || convertObj === void 0 ? void 0 : convertObj.convertCursorNumX,
834
1005
  convertCursorNumY: convertObj === null || convertObj === void 0 ? void 0 : convertObj.convertCursorNumY,
@@ -955,7 +1126,7 @@ export class DrawToolCore extends CommToolsData {
955
1126
  storeAllImages(index, label) {
956
1127
  // const image: HTMLImageElement = new Image();
957
1128
  // resize the drawing image data
958
- if (!this.nrrd_states.loadMaskJson && !this.gui_states.sphere) {
1129
+ if (!this.nrrd_states.loadMaskJson && !this.gui_states.sphere && !this.gui_states.calculator) {
959
1130
  this.setEmptyCanvasSize();
960
1131
  this.drawImageOnEmptyImage(this.protectedData.canvases.drawingCanvasLayerMaster);
961
1132
  }
@@ -1027,7 +1198,7 @@ export class DrawToolCore extends CommToolsData {
1027
1198
  break;
1028
1199
  }
1029
1200
  this.storeImageToAxis(index, this.protectedData.maskData.paintImages, imageData);
1030
- if (!this.nrrd_states.loadMaskJson && !this.gui_states.sphere) {
1201
+ if (!this.nrrd_states.loadMaskJson && !this.gui_states.sphere && !this.gui_states.calculator) {
1031
1202
  this.storeEachLayerImage(index, label);
1032
1203
  }
1033
1204
  }