copper3d 2.1.3 → 2.2.0
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.
- package/dist/Utils/segmentation/CommToolsData.js +8 -0
- package/dist/Utils/segmentation/CommToolsData.js.map +1 -1
- package/dist/Utils/segmentation/DragOperator.js +9 -5
- package/dist/Utils/segmentation/DragOperator.js.map +1 -1
- package/dist/Utils/segmentation/DrawToolCore.d.ts +2 -1
- package/dist/Utils/segmentation/DrawToolCore.js +33 -17
- package/dist/Utils/segmentation/DrawToolCore.js.map +1 -1
- package/dist/Utils/segmentation/NrrdTools.d.ts +8 -0
- package/dist/Utils/segmentation/NrrdTools.js +36 -0
- package/dist/Utils/segmentation/NrrdTools.js.map +1 -1
- package/dist/Utils/segmentation/coreTools/coreType.d.ts +10 -1
- package/dist/Utils/segmentation/coreTools/coreType.js.map +1 -1
- package/dist/bundle.esm.js +88 -24
- package/dist/bundle.umd.js +88 -24
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/types/Utils/segmentation/DrawToolCore.d.ts +2 -1
- package/dist/types/Utils/segmentation/NrrdTools.d.ts +8 -0
- package/dist/types/Utils/segmentation/coreTools/coreType.d.ts +10 -1
- package/dist/types/index.d.ts +1 -1
- package/package.json +1 -1
package/dist/bundle.esm.js
CHANGED
|
@@ -71146,7 +71146,7 @@ class DragOperator {
|
|
|
71146
71146
|
}
|
|
71147
71147
|
this.dragPrameters.handleOnDragMouseDown = (ev) => {
|
|
71148
71148
|
// before start drag event, remove wheel event.
|
|
71149
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71149
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71150
71150
|
if (ev.button === 0) {
|
|
71151
71151
|
this.dragPrameters.y = ev.offsetY / this.dragPrameters.h;
|
|
71152
71152
|
this.container.addEventListener("pointermove", this.dragPrameters.handleOnDragMouseMove, false);
|
|
@@ -71170,18 +71170,22 @@ class DragOperator {
|
|
|
71170
71170
|
}, this.dragPrameters.sensivity * 200);
|
|
71171
71171
|
this.dragPrameters.handleOnDragMouseUp = (ev) => {
|
|
71172
71172
|
// after drag, add the wheel event
|
|
71173
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
71173
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71174
71174
|
this.setSyncsliceNum();
|
|
71175
71175
|
this.container.removeEventListener("pointermove", this.dragPrameters.handleOnDragMouseMove, false);
|
|
71176
71176
|
};
|
|
71177
71177
|
this.configDragMode();
|
|
71178
71178
|
this.container.addEventListener("keydown", (ev) => {
|
|
71179
|
-
if (
|
|
71179
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71180
|
+
return;
|
|
71181
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw) {
|
|
71180
71182
|
this.removeDragMode();
|
|
71181
71183
|
}
|
|
71182
71184
|
});
|
|
71183
71185
|
this.container.addEventListener("keyup", (ev) => {
|
|
71184
|
-
if (
|
|
71186
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71187
|
+
return;
|
|
71188
|
+
if (this.nrrd_states.keyboardSettings.contrast.includes(ev.key)) {
|
|
71185
71189
|
/**
|
|
71186
71190
|
* if ctrl pressed remove the drag mode
|
|
71187
71191
|
*/
|
|
@@ -71192,7 +71196,7 @@ class DragOperator {
|
|
|
71192
71196
|
this.configDragMode();
|
|
71193
71197
|
}
|
|
71194
71198
|
}
|
|
71195
|
-
if (ev.key ===
|
|
71199
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw && !this.gui_states.sphere) {
|
|
71196
71200
|
if (this.protectedData.Is_Ctrl_Pressed) {
|
|
71197
71201
|
return;
|
|
71198
71202
|
}
|
|
@@ -71394,6 +71398,14 @@ class CommToolsData {
|
|
|
71394
71398
|
previousPanelT: -99999,
|
|
71395
71399
|
switchSliceFlag: false,
|
|
71396
71400
|
labels: ["label1", "label2", "label3"],
|
|
71401
|
+
configKeyBoard: false,
|
|
71402
|
+
keyboardSettings: {
|
|
71403
|
+
draw: "Shift",
|
|
71404
|
+
undo: "z",
|
|
71405
|
+
contrast: ["Control", "Meta"],
|
|
71406
|
+
crosshair: "s",
|
|
71407
|
+
mouseWheel: "Scroll:Zoom",
|
|
71408
|
+
},
|
|
71397
71409
|
getMask: (mask, sliceId, label, width, height, clearAllFlag) => { },
|
|
71398
71410
|
getSphere: (sphereOrigin, sphereRadius) => { },
|
|
71399
71411
|
getCalculateSpherePositions: (tumourSphereOrigin, skinSphereOrigin, ribSphereOrigin, nippleSphereOrigin, aixs) => { },
|
|
@@ -71636,7 +71648,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
71636
71648
|
handleOnDrawingMouseUp: (ev) => { },
|
|
71637
71649
|
handleOnDrawingMouseLeave: (ev) => { },
|
|
71638
71650
|
handleOnDrawingBrushCricleMove: (ev) => { },
|
|
71639
|
-
|
|
71651
|
+
handleMouseZoomSliceWheel: (e) => { },
|
|
71640
71652
|
handleSphereWheel: (e) => { },
|
|
71641
71653
|
};
|
|
71642
71654
|
this.contrastEventPrameters = {
|
|
@@ -71684,7 +71696,9 @@ class DrawToolCore extends CommToolsData {
|
|
|
71684
71696
|
initDrawToolCore() {
|
|
71685
71697
|
let undoFlag = false;
|
|
71686
71698
|
this.container.addEventListener("keydown", (ev) => {
|
|
71687
|
-
if (
|
|
71699
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71700
|
+
return;
|
|
71701
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw && !this.gui_states.sphere && !this.gui_states.calculator) {
|
|
71688
71702
|
if (this.protectedData.Is_Ctrl_Pressed) {
|
|
71689
71703
|
this.protectedData.Is_Shift_Pressed = false;
|
|
71690
71704
|
return;
|
|
@@ -71692,18 +71706,20 @@ class DrawToolCore extends CommToolsData {
|
|
|
71692
71706
|
this.protectedData.Is_Shift_Pressed = true;
|
|
71693
71707
|
this.nrrd_states.enableCursorChoose = false;
|
|
71694
71708
|
}
|
|
71695
|
-
if (ev.key ===
|
|
71709
|
+
if (ev.key === this.nrrd_states.keyboardSettings.crosshair) {
|
|
71696
71710
|
this.protectedData.Is_Draw = false;
|
|
71697
71711
|
this.nrrd_states.enableCursorChoose =
|
|
71698
71712
|
!this.nrrd_states.enableCursorChoose;
|
|
71699
71713
|
}
|
|
71700
|
-
if ((ev.ctrlKey || ev.metaKey) && ev.
|
|
71714
|
+
if ((ev.ctrlKey || ev.metaKey) && ev.key === this.nrrd_states.keyboardSettings.undo) {
|
|
71701
71715
|
undoFlag = true;
|
|
71702
71716
|
this.undoLastPainting();
|
|
71703
71717
|
}
|
|
71704
71718
|
});
|
|
71705
71719
|
this.container.addEventListener("keyup", (ev) => {
|
|
71706
|
-
if (
|
|
71720
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71721
|
+
return;
|
|
71722
|
+
if (this.nrrd_states.keyboardSettings.contrast.includes(ev.key)) {
|
|
71707
71723
|
if (undoFlag) {
|
|
71708
71724
|
this.gui_states.readyToUpdate = true;
|
|
71709
71725
|
undoFlag = false;
|
|
@@ -71720,7 +71736,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
71720
71736
|
this.gui_states.readyToUpdate = true;
|
|
71721
71737
|
}
|
|
71722
71738
|
}
|
|
71723
|
-
if (ev.key ===
|
|
71739
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw) {
|
|
71724
71740
|
this.protectedData.Is_Shift_Pressed = false;
|
|
71725
71741
|
}
|
|
71726
71742
|
});
|
|
@@ -71767,7 +71783,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
71767
71783
|
}
|
|
71768
71784
|
drawCalSphereDown(x, y, sliceIndex, cal_position) {
|
|
71769
71785
|
this.nrrd_states.sphereRadius = 5;
|
|
71770
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71786
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71771
71787
|
let mouseX = x / this.nrrd_states.sizeFoctor;
|
|
71772
71788
|
let mouseY = y / this.nrrd_states.sizeFoctor;
|
|
71773
71789
|
// record mouseX,Y, and enable crosshair function
|
|
@@ -71811,7 +71827,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
71811
71827
|
this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
|
|
71812
71828
|
}
|
|
71813
71829
|
zoomActionAfterDrawSphere() {
|
|
71814
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
71830
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71815
71831
|
}
|
|
71816
71832
|
clearSpherePrintStoreImages() {
|
|
71817
71833
|
this.protectedData.maskData.paintImages.x.length = 0;
|
|
@@ -71844,9 +71860,14 @@ class DrawToolCore extends CommToolsData {
|
|
|
71844
71860
|
this.protectedData.previousDrawingImage =
|
|
71845
71861
|
this.protectedData.ctxes.drawingCtx.getImageData(0, 0, this.protectedData.canvases.drawingCanvas.width, this.protectedData.canvases.drawingCanvas.height);
|
|
71846
71862
|
// let a global variable to store the wheel move event
|
|
71847
|
-
this.
|
|
71863
|
+
if (this.nrrd_states.keyboardSettings.mouseWheel === "Scroll:Zoom") {
|
|
71864
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseZoomWheel();
|
|
71865
|
+
}
|
|
71866
|
+
else {
|
|
71867
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseSliceWheel();
|
|
71868
|
+
}
|
|
71848
71869
|
// init to add it
|
|
71849
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
71870
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel, {
|
|
71850
71871
|
passive: false,
|
|
71851
71872
|
});
|
|
71852
71873
|
// sphere Wheel
|
|
@@ -71910,7 +71931,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
71910
71931
|
currentSliceIndex = this.protectedData.mainPreSlices.index;
|
|
71911
71932
|
}
|
|
71912
71933
|
// remove it when mouse click down
|
|
71913
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71934
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71914
71935
|
if (e.button === 0) {
|
|
71915
71936
|
if (this.protectedData.Is_Shift_Pressed) {
|
|
71916
71937
|
leftclicked = true;
|
|
@@ -71969,7 +71990,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
71969
71990
|
const sphere = (e) => {
|
|
71970
71991
|
// set sphere size
|
|
71971
71992
|
this.nrrd_states.sphereRadius = 10;
|
|
71972
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71993
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71973
71994
|
let mouseX = e.offsetX / this.nrrd_states.sizeFoctor;
|
|
71974
71995
|
let mouseY = e.offsetY / this.nrrd_states.sizeFoctor;
|
|
71975
71996
|
// record mouseX,Y, and enable crosshair function
|
|
@@ -72070,7 +72091,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
72070
72091
|
this.undoArray.push(undoObj);
|
|
72071
72092
|
}
|
|
72072
72093
|
// add wheel after pointer up
|
|
72073
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
72094
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel, {
|
|
72074
72095
|
passive: false,
|
|
72075
72096
|
});
|
|
72076
72097
|
}
|
|
@@ -72091,12 +72112,12 @@ class DrawToolCore extends CommToolsData {
|
|
|
72091
72112
|
!!this.nrrd_states.getSphere &&
|
|
72092
72113
|
this.nrrd_states.getSphere(this.nrrd_states.sphereOrigin.z, this.nrrd_states.sphereRadius / this.nrrd_states.sizeFoctor);
|
|
72093
72114
|
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleSphereWheel, true);
|
|
72094
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
72115
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
72095
72116
|
this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
|
|
72096
72117
|
}
|
|
72097
72118
|
else if ((this.gui_states.sphere || this.gui_states.calculator) &&
|
|
72098
72119
|
this.nrrd_states.enableCursorChoose) {
|
|
72099
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
72120
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
72100
72121
|
this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
|
|
72101
72122
|
}
|
|
72102
72123
|
else if (this.gui_states.calculator &&
|
|
@@ -72282,7 +72303,7 @@ class DrawToolCore extends CommToolsData {
|
|
|
72282
72303
|
// drawing canvas mouse zoom wheel
|
|
72283
72304
|
configMouseZoomWheel() {
|
|
72284
72305
|
let moveDistance = 1;
|
|
72285
|
-
const
|
|
72306
|
+
const handleMouseZoomSliceWheelMove = (e) => {
|
|
72286
72307
|
if (this.protectedData.Is_Shift_Pressed) {
|
|
72287
72308
|
return;
|
|
72288
72309
|
}
|
|
@@ -72320,7 +72341,14 @@ class DrawToolCore extends CommToolsData {
|
|
|
72320
72341
|
this.setIsDrawFalse(1000);
|
|
72321
72342
|
this.nrrd_states.sizeFoctor = moveDistance;
|
|
72322
72343
|
};
|
|
72323
|
-
return
|
|
72344
|
+
return handleMouseZoomSliceWheelMove;
|
|
72345
|
+
}
|
|
72346
|
+
configMouseSliceWheel() {
|
|
72347
|
+
/**
|
|
72348
|
+
* Interface for slice wheel
|
|
72349
|
+
* Implement in the NrrdTools class
|
|
72350
|
+
* */
|
|
72351
|
+
throw new Error("Child class must implement abstract redrawDisplayCanvas, currently you can find it in NrrdTools.");
|
|
72324
72352
|
}
|
|
72325
72353
|
enableCrosshair() {
|
|
72326
72354
|
this.nrrd_states.isCursorSelect = true;
|
|
@@ -73977,6 +74005,42 @@ class NrrdTools extends DrawToolCore {
|
|
|
73977
74005
|
(_c = this.protectedData.ctxes.displayCtx) === null || _c === void 0 ? void 0 : _c.restore();
|
|
73978
74006
|
}
|
|
73979
74007
|
}
|
|
74008
|
+
/**
|
|
74009
|
+
* Config mouse slice wheel event.
|
|
74010
|
+
*/
|
|
74011
|
+
configMouseSliceWheel() {
|
|
74012
|
+
const handleMouseZoomSliceWheelMove = (e) => {
|
|
74013
|
+
if (this.protectedData.Is_Shift_Pressed) {
|
|
74014
|
+
return;
|
|
74015
|
+
}
|
|
74016
|
+
e.preventDefault();
|
|
74017
|
+
if (e.deltaY < 0) {
|
|
74018
|
+
this.setSliceMoving(-1);
|
|
74019
|
+
}
|
|
74020
|
+
else if (e.deltaY > 0) {
|
|
74021
|
+
this.setSliceMoving(1);
|
|
74022
|
+
}
|
|
74023
|
+
};
|
|
74024
|
+
return handleMouseZoomSliceWheelMove;
|
|
74025
|
+
}
|
|
74026
|
+
/**
|
|
74027
|
+
* Update mouse wheel event.
|
|
74028
|
+
*/
|
|
74029
|
+
updateMouseWheelEvent() {
|
|
74030
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
74031
|
+
switch (this.nrrd_states.keyboardSettings.mouseWheel) {
|
|
74032
|
+
case "Scroll:Zoom":
|
|
74033
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseZoomWheel();
|
|
74034
|
+
break;
|
|
74035
|
+
case "Scroll:Slice":
|
|
74036
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseSliceWheel();
|
|
74037
|
+
break;
|
|
74038
|
+
default:
|
|
74039
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseZoomWheel();
|
|
74040
|
+
break;
|
|
74041
|
+
}
|
|
74042
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
74043
|
+
}
|
|
73980
74044
|
}
|
|
73981
74045
|
|
|
73982
74046
|
class Node {
|
|
@@ -74186,7 +74250,7 @@ function evaluateElement(element, weights) {
|
|
|
74186
74250
|
}
|
|
74187
74251
|
|
|
74188
74252
|
// import * as kiwrious from "copper3d_plugin_heart_k";
|
|
74189
|
-
const REVISION = "v2.
|
|
74190
|
-
console.log("%cCopper3D Visualisation %cBeta:v2.
|
|
74253
|
+
const REVISION = "v2.2.0";
|
|
74254
|
+
console.log("%cCopper3D Visualisation %cBeta:v2.2.0", "padding: 3px;color:white; background:#023047", "padding: 3px;color:white; background:#f50a25");
|
|
74191
74255
|
|
|
74192
74256
|
export { CameraViewPoint, Copper3dTrackballControls, MeshNodeTool, NrrdTools, REVISION, addBoxHelper, addLabelToScene, configKiwriousHeart, convert3DPostoScreenPos, convertScreenPosto3DPos, copperMScene, copperMSceneRenderer, copperRenderer, copperRendererOnDemond, copperScene, copperSceneOnDemond, createTexture2D_NRRD, fullScreenListenner, kiwrious, loading, removeGuiFolderChilden, setHDRFilePath, throttle };
|
package/dist/bundle.umd.js
CHANGED
|
@@ -71154,7 +71154,7 @@ void main() {
|
|
|
71154
71154
|
}
|
|
71155
71155
|
this.dragPrameters.handleOnDragMouseDown = (ev) => {
|
|
71156
71156
|
// before start drag event, remove wheel event.
|
|
71157
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71157
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71158
71158
|
if (ev.button === 0) {
|
|
71159
71159
|
this.dragPrameters.y = ev.offsetY / this.dragPrameters.h;
|
|
71160
71160
|
this.container.addEventListener("pointermove", this.dragPrameters.handleOnDragMouseMove, false);
|
|
@@ -71178,18 +71178,22 @@ void main() {
|
|
|
71178
71178
|
}, this.dragPrameters.sensivity * 200);
|
|
71179
71179
|
this.dragPrameters.handleOnDragMouseUp = (ev) => {
|
|
71180
71180
|
// after drag, add the wheel event
|
|
71181
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
71181
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71182
71182
|
this.setSyncsliceNum();
|
|
71183
71183
|
this.container.removeEventListener("pointermove", this.dragPrameters.handleOnDragMouseMove, false);
|
|
71184
71184
|
};
|
|
71185
71185
|
this.configDragMode();
|
|
71186
71186
|
this.container.addEventListener("keydown", (ev) => {
|
|
71187
|
-
if (
|
|
71187
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71188
|
+
return;
|
|
71189
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw) {
|
|
71188
71190
|
this.removeDragMode();
|
|
71189
71191
|
}
|
|
71190
71192
|
});
|
|
71191
71193
|
this.container.addEventListener("keyup", (ev) => {
|
|
71192
|
-
if (
|
|
71194
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71195
|
+
return;
|
|
71196
|
+
if (this.nrrd_states.keyboardSettings.contrast.includes(ev.key)) {
|
|
71193
71197
|
/**
|
|
71194
71198
|
* if ctrl pressed remove the drag mode
|
|
71195
71199
|
*/
|
|
@@ -71200,7 +71204,7 @@ void main() {
|
|
|
71200
71204
|
this.configDragMode();
|
|
71201
71205
|
}
|
|
71202
71206
|
}
|
|
71203
|
-
if (ev.key ===
|
|
71207
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw && !this.gui_states.sphere) {
|
|
71204
71208
|
if (this.protectedData.Is_Ctrl_Pressed) {
|
|
71205
71209
|
return;
|
|
71206
71210
|
}
|
|
@@ -71402,6 +71406,14 @@ void main() {
|
|
|
71402
71406
|
previousPanelT: -99999,
|
|
71403
71407
|
switchSliceFlag: false,
|
|
71404
71408
|
labels: ["label1", "label2", "label3"],
|
|
71409
|
+
configKeyBoard: false,
|
|
71410
|
+
keyboardSettings: {
|
|
71411
|
+
draw: "Shift",
|
|
71412
|
+
undo: "z",
|
|
71413
|
+
contrast: ["Control", "Meta"],
|
|
71414
|
+
crosshair: "s",
|
|
71415
|
+
mouseWheel: "Scroll:Zoom",
|
|
71416
|
+
},
|
|
71405
71417
|
getMask: (mask, sliceId, label, width, height, clearAllFlag) => { },
|
|
71406
71418
|
getSphere: (sphereOrigin, sphereRadius) => { },
|
|
71407
71419
|
getCalculateSpherePositions: (tumourSphereOrigin, skinSphereOrigin, ribSphereOrigin, nippleSphereOrigin, aixs) => { },
|
|
@@ -71644,7 +71656,7 @@ void main() {
|
|
|
71644
71656
|
handleOnDrawingMouseUp: (ev) => { },
|
|
71645
71657
|
handleOnDrawingMouseLeave: (ev) => { },
|
|
71646
71658
|
handleOnDrawingBrushCricleMove: (ev) => { },
|
|
71647
|
-
|
|
71659
|
+
handleMouseZoomSliceWheel: (e) => { },
|
|
71648
71660
|
handleSphereWheel: (e) => { },
|
|
71649
71661
|
};
|
|
71650
71662
|
this.contrastEventPrameters = {
|
|
@@ -71692,7 +71704,9 @@ void main() {
|
|
|
71692
71704
|
initDrawToolCore() {
|
|
71693
71705
|
let undoFlag = false;
|
|
71694
71706
|
this.container.addEventListener("keydown", (ev) => {
|
|
71695
|
-
if (
|
|
71707
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71708
|
+
return;
|
|
71709
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw && !this.gui_states.sphere && !this.gui_states.calculator) {
|
|
71696
71710
|
if (this.protectedData.Is_Ctrl_Pressed) {
|
|
71697
71711
|
this.protectedData.Is_Shift_Pressed = false;
|
|
71698
71712
|
return;
|
|
@@ -71700,18 +71714,20 @@ void main() {
|
|
|
71700
71714
|
this.protectedData.Is_Shift_Pressed = true;
|
|
71701
71715
|
this.nrrd_states.enableCursorChoose = false;
|
|
71702
71716
|
}
|
|
71703
|
-
if (ev.key ===
|
|
71717
|
+
if (ev.key === this.nrrd_states.keyboardSettings.crosshair) {
|
|
71704
71718
|
this.protectedData.Is_Draw = false;
|
|
71705
71719
|
this.nrrd_states.enableCursorChoose =
|
|
71706
71720
|
!this.nrrd_states.enableCursorChoose;
|
|
71707
71721
|
}
|
|
71708
|
-
if ((ev.ctrlKey || ev.metaKey) && ev.
|
|
71722
|
+
if ((ev.ctrlKey || ev.metaKey) && ev.key === this.nrrd_states.keyboardSettings.undo) {
|
|
71709
71723
|
undoFlag = true;
|
|
71710
71724
|
this.undoLastPainting();
|
|
71711
71725
|
}
|
|
71712
71726
|
});
|
|
71713
71727
|
this.container.addEventListener("keyup", (ev) => {
|
|
71714
|
-
if (
|
|
71728
|
+
if (this.nrrd_states.configKeyBoard)
|
|
71729
|
+
return;
|
|
71730
|
+
if (this.nrrd_states.keyboardSettings.contrast.includes(ev.key)) {
|
|
71715
71731
|
if (undoFlag) {
|
|
71716
71732
|
this.gui_states.readyToUpdate = true;
|
|
71717
71733
|
undoFlag = false;
|
|
@@ -71728,7 +71744,7 @@ void main() {
|
|
|
71728
71744
|
this.gui_states.readyToUpdate = true;
|
|
71729
71745
|
}
|
|
71730
71746
|
}
|
|
71731
|
-
if (ev.key ===
|
|
71747
|
+
if (ev.key === this.nrrd_states.keyboardSettings.draw) {
|
|
71732
71748
|
this.protectedData.Is_Shift_Pressed = false;
|
|
71733
71749
|
}
|
|
71734
71750
|
});
|
|
@@ -71775,7 +71791,7 @@ void main() {
|
|
|
71775
71791
|
}
|
|
71776
71792
|
drawCalSphereDown(x, y, sliceIndex, cal_position) {
|
|
71777
71793
|
this.nrrd_states.sphereRadius = 5;
|
|
71778
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71794
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71779
71795
|
let mouseX = x / this.nrrd_states.sizeFoctor;
|
|
71780
71796
|
let mouseY = y / this.nrrd_states.sizeFoctor;
|
|
71781
71797
|
// record mouseX,Y, and enable crosshair function
|
|
@@ -71819,7 +71835,7 @@ void main() {
|
|
|
71819
71835
|
this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
|
|
71820
71836
|
}
|
|
71821
71837
|
zoomActionAfterDrawSphere() {
|
|
71822
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
71838
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71823
71839
|
}
|
|
71824
71840
|
clearSpherePrintStoreImages() {
|
|
71825
71841
|
this.protectedData.maskData.paintImages.x.length = 0;
|
|
@@ -71852,9 +71868,14 @@ void main() {
|
|
|
71852
71868
|
this.protectedData.previousDrawingImage =
|
|
71853
71869
|
this.protectedData.ctxes.drawingCtx.getImageData(0, 0, this.protectedData.canvases.drawingCanvas.width, this.protectedData.canvases.drawingCanvas.height);
|
|
71854
71870
|
// let a global variable to store the wheel move event
|
|
71855
|
-
this.
|
|
71871
|
+
if (this.nrrd_states.keyboardSettings.mouseWheel === "Scroll:Zoom") {
|
|
71872
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseZoomWheel();
|
|
71873
|
+
}
|
|
71874
|
+
else {
|
|
71875
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseSliceWheel();
|
|
71876
|
+
}
|
|
71856
71877
|
// init to add it
|
|
71857
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
71878
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel, {
|
|
71858
71879
|
passive: false,
|
|
71859
71880
|
});
|
|
71860
71881
|
// sphere Wheel
|
|
@@ -71918,7 +71939,7 @@ void main() {
|
|
|
71918
71939
|
currentSliceIndex = this.protectedData.mainPreSlices.index;
|
|
71919
71940
|
}
|
|
71920
71941
|
// remove it when mouse click down
|
|
71921
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
71942
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71922
71943
|
if (e.button === 0) {
|
|
71923
71944
|
if (this.protectedData.Is_Shift_Pressed) {
|
|
71924
71945
|
leftclicked = true;
|
|
@@ -71977,7 +71998,7 @@ void main() {
|
|
|
71977
71998
|
const sphere = (e) => {
|
|
71978
71999
|
// set sphere size
|
|
71979
72000
|
this.nrrd_states.sphereRadius = 10;
|
|
71980
|
-
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.
|
|
72001
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
71981
72002
|
let mouseX = e.offsetX / this.nrrd_states.sizeFoctor;
|
|
71982
72003
|
let mouseY = e.offsetY / this.nrrd_states.sizeFoctor;
|
|
71983
72004
|
// record mouseX,Y, and enable crosshair function
|
|
@@ -72078,7 +72099,7 @@ void main() {
|
|
|
72078
72099
|
this.undoArray.push(undoObj);
|
|
72079
72100
|
}
|
|
72080
72101
|
// add wheel after pointer up
|
|
72081
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
72102
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel, {
|
|
72082
72103
|
passive: false,
|
|
72083
72104
|
});
|
|
72084
72105
|
}
|
|
@@ -72099,12 +72120,12 @@ void main() {
|
|
|
72099
72120
|
!!this.nrrd_states.getSphere &&
|
|
72100
72121
|
this.nrrd_states.getSphere(this.nrrd_states.sphereOrigin.z, this.nrrd_states.sphereRadius / this.nrrd_states.sizeFoctor);
|
|
72101
72122
|
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleSphereWheel, true);
|
|
72102
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
72123
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
72103
72124
|
this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
|
|
72104
72125
|
}
|
|
72105
72126
|
else if ((this.gui_states.sphere || this.gui_states.calculator) &&
|
|
72106
72127
|
this.nrrd_states.enableCursorChoose) {
|
|
72107
|
-
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.
|
|
72128
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
72108
72129
|
this.protectedData.canvases.drawingCanvas.removeEventListener("pointerup", this.drawingPrameters.handleOnDrawingMouseUp);
|
|
72109
72130
|
}
|
|
72110
72131
|
else if (this.gui_states.calculator &&
|
|
@@ -72290,7 +72311,7 @@ void main() {
|
|
|
72290
72311
|
// drawing canvas mouse zoom wheel
|
|
72291
72312
|
configMouseZoomWheel() {
|
|
72292
72313
|
let moveDistance = 1;
|
|
72293
|
-
const
|
|
72314
|
+
const handleMouseZoomSliceWheelMove = (e) => {
|
|
72294
72315
|
if (this.protectedData.Is_Shift_Pressed) {
|
|
72295
72316
|
return;
|
|
72296
72317
|
}
|
|
@@ -72328,7 +72349,14 @@ void main() {
|
|
|
72328
72349
|
this.setIsDrawFalse(1000);
|
|
72329
72350
|
this.nrrd_states.sizeFoctor = moveDistance;
|
|
72330
72351
|
};
|
|
72331
|
-
return
|
|
72352
|
+
return handleMouseZoomSliceWheelMove;
|
|
72353
|
+
}
|
|
72354
|
+
configMouseSliceWheel() {
|
|
72355
|
+
/**
|
|
72356
|
+
* Interface for slice wheel
|
|
72357
|
+
* Implement in the NrrdTools class
|
|
72358
|
+
* */
|
|
72359
|
+
throw new Error("Child class must implement abstract redrawDisplayCanvas, currently you can find it in NrrdTools.");
|
|
72332
72360
|
}
|
|
72333
72361
|
enableCrosshair() {
|
|
72334
72362
|
this.nrrd_states.isCursorSelect = true;
|
|
@@ -73985,6 +74013,42 @@ void main() {
|
|
|
73985
74013
|
(_c = this.protectedData.ctxes.displayCtx) === null || _c === void 0 ? void 0 : _c.restore();
|
|
73986
74014
|
}
|
|
73987
74015
|
}
|
|
74016
|
+
/**
|
|
74017
|
+
* Config mouse slice wheel event.
|
|
74018
|
+
*/
|
|
74019
|
+
configMouseSliceWheel() {
|
|
74020
|
+
const handleMouseZoomSliceWheelMove = (e) => {
|
|
74021
|
+
if (this.protectedData.Is_Shift_Pressed) {
|
|
74022
|
+
return;
|
|
74023
|
+
}
|
|
74024
|
+
e.preventDefault();
|
|
74025
|
+
if (e.deltaY < 0) {
|
|
74026
|
+
this.setSliceMoving(-1);
|
|
74027
|
+
}
|
|
74028
|
+
else if (e.deltaY > 0) {
|
|
74029
|
+
this.setSliceMoving(1);
|
|
74030
|
+
}
|
|
74031
|
+
};
|
|
74032
|
+
return handleMouseZoomSliceWheelMove;
|
|
74033
|
+
}
|
|
74034
|
+
/**
|
|
74035
|
+
* Update mouse wheel event.
|
|
74036
|
+
*/
|
|
74037
|
+
updateMouseWheelEvent() {
|
|
74038
|
+
this.protectedData.canvases.drawingCanvas.removeEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
74039
|
+
switch (this.nrrd_states.keyboardSettings.mouseWheel) {
|
|
74040
|
+
case "Scroll:Zoom":
|
|
74041
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseZoomWheel();
|
|
74042
|
+
break;
|
|
74043
|
+
case "Scroll:Slice":
|
|
74044
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseSliceWheel();
|
|
74045
|
+
break;
|
|
74046
|
+
default:
|
|
74047
|
+
this.drawingPrameters.handleMouseZoomSliceWheel = this.configMouseZoomWheel();
|
|
74048
|
+
break;
|
|
74049
|
+
}
|
|
74050
|
+
this.protectedData.canvases.drawingCanvas.addEventListener("wheel", this.drawingPrameters.handleMouseZoomSliceWheel);
|
|
74051
|
+
}
|
|
73988
74052
|
}
|
|
73989
74053
|
|
|
73990
74054
|
class Node {
|
|
@@ -74194,8 +74258,8 @@ void main() {
|
|
|
74194
74258
|
}
|
|
74195
74259
|
|
|
74196
74260
|
// import * as kiwrious from "copper3d_plugin_heart_k";
|
|
74197
|
-
const REVISION = "v2.
|
|
74198
|
-
console.log("%cCopper3D Visualisation %cBeta:v2.
|
|
74261
|
+
const REVISION = "v2.2.0";
|
|
74262
|
+
console.log("%cCopper3D Visualisation %cBeta:v2.2.0", "padding: 3px;color:white; background:#023047", "padding: 3px;color:white; background:#f50a25");
|
|
74199
74263
|
|
|
74200
74264
|
exports.CameraViewPoint = CameraViewPoint;
|
|
74201
74265
|
exports.Copper3dTrackballControls = Copper3dTrackballControls;
|
package/dist/index.d.ts
CHANGED
|
@@ -19,6 +19,6 @@ import { removeGuiFolderChilden } from "./Utils/segmentation/coreTools/gui";
|
|
|
19
19
|
import { nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, exportPaintImageType, IOptVTKLoader } from "./types/types";
|
|
20
20
|
import { IPaintImage, ICommXYZ } from "./Utils/segmentation/coreTools/coreType";
|
|
21
21
|
import "./css/style.css";
|
|
22
|
-
export declare const REVISION = "v2.
|
|
22
|
+
export declare const REVISION = "v2.2.0";
|
|
23
23
|
export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, NrrdTools, loading, Copper3dTrackballControls, createTexture2D_NRRD, MeshNodeTool, throttle, removeGuiFolderChilden, };
|
|
24
24
|
export type { positionType, screenPosType, optsType, nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, IPaintImage, exportPaintImageType, IOptVTKLoader, ICommXYZ };
|
package/dist/index.js
CHANGED
|
@@ -18,7 +18,7 @@ import { Copper3dTrackballControls } from "./Controls/Copper3dTrackballControls"
|
|
|
18
18
|
import { MeshNodeTool } from "./Utils/MeshNodeTool";
|
|
19
19
|
import { removeGuiFolderChilden } from "./Utils/segmentation/coreTools/gui";
|
|
20
20
|
import "./css/style.css";
|
|
21
|
-
export const REVISION = "v2.
|
|
22
|
-
console.log("%cCopper3D Visualisation %cBeta:v2.
|
|
21
|
+
export const REVISION = "v2.2.0";
|
|
22
|
+
console.log("%cCopper3D Visualisation %cBeta:v2.2.0", "padding: 3px;color:white; background:#023047", "padding: 3px;color:white; background:#f50a25");
|
|
23
23
|
export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, NrrdTools, loading, Copper3dTrackballControls, createTexture2D_NRRD, MeshNodeTool, throttle, removeGuiFolderChilden, };
|
|
24
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -26,7 +26,8 @@ export declare class DrawToolCore extends CommToolsData {
|
|
|
26
26
|
private paintOnCanvasLayer;
|
|
27
27
|
private initAllCanvas;
|
|
28
28
|
private useEraser;
|
|
29
|
-
|
|
29
|
+
configMouseZoomWheel(): (e: WheelEvent) => void;
|
|
30
|
+
configMouseSliceWheel(): void;
|
|
30
31
|
private enableCrosshair;
|
|
31
32
|
drawImageOnEmptyImage(canvas: HTMLCanvasElement): void;
|
|
32
33
|
/****************************Sphere calculate distance functions****************************************************/
|
|
@@ -160,4 +160,12 @@ export declare class NrrdTools extends DrawToolCore {
|
|
|
160
160
|
* It is more related to change the contrast slice image's window width or center.
|
|
161
161
|
*/
|
|
162
162
|
redrawDisplayCanvas(): void;
|
|
163
|
+
/**
|
|
164
|
+
* Config mouse slice wheel event.
|
|
165
|
+
*/
|
|
166
|
+
configMouseSliceWheel(): (e: WheelEvent) => void;
|
|
167
|
+
/**
|
|
168
|
+
* Update mouse wheel event.
|
|
169
|
+
*/
|
|
170
|
+
updateMouseWheelEvent(): void;
|
|
163
171
|
}
|
|
@@ -39,7 +39,7 @@ interface IDrawingEvents {
|
|
|
39
39
|
handleOnDrawingMouseUp: (ev: MouseEvent) => void;
|
|
40
40
|
handleOnDrawingMouseLeave: (ev: MouseEvent) => void;
|
|
41
41
|
handleOnDrawingBrushCricleMove: (ev: MouseEvent) => void;
|
|
42
|
-
|
|
42
|
+
handleMouseZoomSliceWheel: (e: WheelEvent) => void;
|
|
43
43
|
handleSphereWheel: (e: WheelEvent) => void;
|
|
44
44
|
}
|
|
45
45
|
interface IContrastEvents {
|
|
@@ -136,6 +136,13 @@ interface IGUIStates {
|
|
|
136
136
|
downloadCurrentMask: () => void;
|
|
137
137
|
resetZoom: () => void;
|
|
138
138
|
}
|
|
139
|
+
interface IKeyBoardSettings {
|
|
140
|
+
draw: string;
|
|
141
|
+
undo: string;
|
|
142
|
+
contrast: string[];
|
|
143
|
+
crosshair: string;
|
|
144
|
+
mouseWheel: "Scroll:Zoom" | "Scroll:Slice";
|
|
145
|
+
}
|
|
139
146
|
interface INrrdStates {
|
|
140
147
|
originWidth: number;
|
|
141
148
|
originHeight: number;
|
|
@@ -185,6 +192,8 @@ interface INrrdStates {
|
|
|
185
192
|
previousPanelT: number;
|
|
186
193
|
switchSliceFlag: boolean;
|
|
187
194
|
labels: ["label1", "label2", "label3"];
|
|
195
|
+
configKeyBoard: boolean;
|
|
196
|
+
keyboardSettings: IKeyBoardSettings;
|
|
188
197
|
getMask: (mask: ImageData, sliceId: number, label: string, width: number, height: number, clearAllFlag: boolean) => void;
|
|
189
198
|
getSphere: (sphereOrigin: number[], sphereRadius: number) => void;
|
|
190
199
|
getCalculateSpherePositions: (tumourSphereOrigin: ICommXYZ | null, skinSphereOrigin: ICommXYZ | null, ribSphereOrigin: ICommXYZ | null, nippleSphereOrigin: ICommXYZ | null, aixs: "x" | "y" | "z") => void;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -19,6 +19,6 @@ import { removeGuiFolderChilden } from "./Utils/segmentation/coreTools/gui";
|
|
|
19
19
|
import { nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, exportPaintImageType, IOptVTKLoader } from "./types/types";
|
|
20
20
|
import { IPaintImage, ICommXYZ } from "./Utils/segmentation/coreTools/coreType";
|
|
21
21
|
import "./css/style.css";
|
|
22
|
-
export declare const REVISION = "v2.
|
|
22
|
+
export declare const REVISION = "v2.2.0";
|
|
23
23
|
export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, NrrdTools, loading, Copper3dTrackballControls, createTexture2D_NRRD, MeshNodeTool, throttle, removeGuiFolderChilden, };
|
|
24
24
|
export type { positionType, screenPosType, optsType, nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, IPaintImage, exportPaintImageType, IOptVTKLoader, ICommXYZ };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "copper3d",
|
|
3
3
|
"description": "A 3d visualisation package base on threejs provides multiple scenes and Nrrd image load funtion.",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.2.0",
|
|
5
5
|
"main": "dist/bundle.umd.js",
|
|
6
6
|
"moudle": "dist/bundle.esm.js",
|
|
7
7
|
"types": "dist/types/index.d.ts",
|