@cornerstonejs/tools 1.32.3 → 1.34.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/cjs/eventListeners/index.d.ts +2 -2
- package/dist/cjs/eventListeners/index.js +2 -1
- package/dist/cjs/eventListeners/index.js.map +1 -1
- package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.d.ts +5 -0
- package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.js +143 -0
- package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.js.map +1 -0
- package/dist/cjs/eventListeners/segmentation/index.d.ts +2 -1
- package/dist/cjs/eventListeners/segmentation/index.js +3 -1
- package/dist/cjs/eventListeners/segmentation/index.js.map +1 -1
- package/dist/cjs/eventListeners/segmentation/segmentationDataModifiedEventListener.js +31 -5
- package/dist/cjs/eventListeners/segmentation/segmentationDataModifiedEventListener.js.map +1 -1
- package/dist/cjs/store/SynchronizerManager/Synchronizer.d.ts +1 -0
- package/dist/cjs/store/SynchronizerManager/Synchronizer.js +17 -1
- package/dist/cjs/store/SynchronizerManager/Synchronizer.js.map +1 -1
- package/dist/cjs/store/addEnabledElement.js +1 -0
- package/dist/cjs/store/addEnabledElement.js.map +1 -1
- package/dist/cjs/store/removeEnabledElement.js +2 -0
- package/dist/cjs/store/removeEnabledElement.js.map +1 -1
- package/dist/cjs/synchronizers/callbacks/areViewportsCoplanar .d.ts +1 -1
- package/dist/cjs/synchronizers/callbacks/areViewportsCoplanar .js.map +1 -1
- package/dist/cjs/synchronizers/callbacks/{stackImageSyncCallback.d.ts → imageSliceSyncCallback.d.ts} +1 -1
- package/dist/cjs/synchronizers/callbacks/{stackImageSyncCallback.js → imageSliceSyncCallback.js} +8 -4
- package/dist/cjs/synchronizers/callbacks/{stackImageSyncCallback.js.map → imageSliceSyncCallback.js.map} +1 -1
- package/dist/cjs/synchronizers/index.d.ts +3 -2
- package/dist/cjs/synchronizers/index.js +5 -3
- package/dist/cjs/synchronizers/index.js.map +1 -1
- package/dist/cjs/synchronizers/synchronizers/{createStackImageSynchronizer.d.ts → createImageSliceSynchronizer.d.ts} +1 -1
- package/dist/cjs/synchronizers/synchronizers/createImageSliceSynchronizer.js +17 -0
- package/dist/cjs/synchronizers/synchronizers/createImageSliceSynchronizer.js.map +1 -0
- package/dist/cjs/synchronizers/synchronizers/index.d.ts +3 -2
- package/dist/cjs/synchronizers/synchronizers/index.js +5 -3
- package/dist/cjs/synchronizers/synchronizers/index.js.map +1 -1
- package/dist/cjs/tools/annotation/CircleROITool.js +3 -1
- package/dist/cjs/tools/annotation/CircleROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/EllipticalROITool.js +1 -1
- package/dist/cjs/tools/annotation/EllipticalROITool.js.map +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +2 -1
- package/dist/cjs/tools/displayTools/Labelmap/addLabelmapToElement.js +23 -10
- package/dist/cjs/tools/displayTools/Labelmap/addLabelmapToElement.js.map +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.d.ts +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js +36 -22
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/validateRepresentationData.js +6 -5
- package/dist/cjs/tools/displayTools/Labelmap/validateRepresentationData.js.map +1 -1
- package/dist/cjs/tools/segmentation/BrushTool.js +40 -45
- package/dist/cjs/tools/segmentation/BrushTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/CircleScissorsTool.d.ts +4 -2
- package/dist/cjs/tools/segmentation/CircleScissorsTool.js +18 -17
- package/dist/cjs/tools/segmentation/CircleScissorsTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/PaintFillTool.js +28 -5
- package/dist/cjs/tools/segmentation/PaintFillTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/RectangleScissorsTool.d.ts +3 -1
- package/dist/cjs/tools/segmentation/RectangleScissorsTool.js +15 -16
- package/dist/cjs/tools/segmentation/RectangleScissorsTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/SphereScissorsTool.d.ts +4 -2
- package/dist/cjs/tools/segmentation/SphereScissorsTool.js +20 -20
- package/dist/cjs/tools/segmentation/SphereScissorsTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/eraseCircle.d.ts +2 -10
- package/dist/cjs/tools/segmentation/strategies/eraseCircle.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/eraseRectangle.d.ts +4 -8
- package/dist/cjs/tools/segmentation/strategies/eraseRectangle.js +4 -20
- package/dist/cjs/tools/segmentation/strategies/eraseRectangle.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/eraseSphere.d.ts +2 -10
- package/dist/cjs/tools/segmentation/strategies/eraseSphere.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/fillCircle.d.ts +3 -11
- package/dist/cjs/tools/segmentation/strategies/fillCircle.js +57 -32
- package/dist/cjs/tools/segmentation/strategies/fillCircle.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/fillRectangle.d.ts +2 -7
- package/dist/cjs/tools/segmentation/strategies/fillRectangle.js +16 -8
- package/dist/cjs/tools/segmentation/strategies/fillRectangle.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/fillSphere.d.ts +2 -10
- package/dist/cjs/tools/segmentation/strategies/fillSphere.js +31 -17
- package/dist/cjs/tools/segmentation/strategies/fillSphere.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/utils/getStrategyData.d.ts +9 -0
- package/dist/cjs/tools/segmentation/strategies/utils/getStrategyData.js +43 -0
- package/dist/cjs/tools/segmentation/strategies/utils/getStrategyData.js.map +1 -0
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +2 -2
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js +2 -2
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/utils/stackVolumeCheck.d.ts +5 -0
- package/dist/cjs/tools/segmentation/strategies/utils/stackVolumeCheck.js +13 -0
- package/dist/cjs/tools/segmentation/strategies/utils/stackVolumeCheck.js.map +1 -0
- package/dist/cjs/types/LabelmapToolOperationData.d.ts +14 -0
- package/dist/cjs/types/LabelmapToolOperationData.js +3 -0
- package/dist/cjs/types/LabelmapToolOperationData.js.map +1 -0
- package/dist/cjs/types/LabelmapTypes.d.ts +5 -1
- package/dist/cjs/types/index.d.ts +2 -1
- package/dist/cjs/utilities/math/ellipse/pointInEllipse.d.ts +7 -9
- package/dist/cjs/utilities/math/ellipse/pointInEllipse.js +19 -11
- package/dist/cjs/utilities/math/ellipse/pointInEllipse.js.map +1 -1
- package/dist/esm/eventListeners/index.js +2 -2
- package/dist/esm/eventListeners/index.js.map +1 -1
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +115 -0
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js.map +1 -0
- package/dist/esm/eventListeners/segmentation/index.js +2 -1
- package/dist/esm/eventListeners/segmentation/index.js.map +1 -1
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +32 -6
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js.map +1 -1
- package/dist/esm/store/SynchronizerManager/Synchronizer.js +17 -1
- package/dist/esm/store/SynchronizerManager/Synchronizer.js.map +1 -1
- package/dist/esm/store/addEnabledElement.js +2 -1
- package/dist/esm/store/addEnabledElement.js.map +1 -1
- package/dist/esm/store/removeEnabledElement.js +2 -0
- package/dist/esm/store/removeEnabledElement.js.map +1 -1
- package/dist/esm/synchronizers/callbacks/areViewportsCoplanar .js.map +1 -1
- package/dist/esm/synchronizers/callbacks/{stackImageSyncCallback.js → imageSliceSyncCallback.js} +8 -4
- package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.js.map +1 -0
- package/dist/esm/synchronizers/index.js +3 -2
- package/dist/esm/synchronizers/index.js.map +1 -1
- package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.js +11 -0
- package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.js.map +1 -0
- package/dist/esm/synchronizers/synchronizers/index.js +3 -2
- package/dist/esm/synchronizers/synchronizers/index.js.map +1 -1
- package/dist/esm/tools/annotation/CircleROITool.js +4 -2
- package/dist/esm/tools/annotation/CircleROITool.js.map +1 -1
- package/dist/esm/tools/annotation/EllipticalROITool.js +1 -1
- package/dist/esm/tools/annotation/EllipticalROITool.js.map +1 -1
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +24 -11
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js.map +1 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +36 -22
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
- package/dist/esm/tools/displayTools/Labelmap/validateRepresentationData.js +6 -5
- package/dist/esm/tools/displayTools/Labelmap/validateRepresentationData.js.map +1 -1
- package/dist/esm/tools/segmentation/BrushTool.js +38 -29
- package/dist/esm/tools/segmentation/BrushTool.js.map +1 -1
- package/dist/esm/tools/segmentation/CircleScissorsTool.js +27 -15
- package/dist/esm/tools/segmentation/CircleScissorsTool.js.map +1 -1
- package/dist/esm/tools/segmentation/PaintFillTool.js +28 -5
- package/dist/esm/tools/segmentation/PaintFillTool.js.map +1 -1
- package/dist/esm/tools/segmentation/RectangleScissorsTool.js +26 -17
- package/dist/esm/tools/segmentation/RectangleScissorsTool.js.map +1 -1
- package/dist/esm/tools/segmentation/SphereScissorsTool.js +28 -17
- package/dist/esm/tools/segmentation/SphereScissorsTool.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/eraseCircle.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/eraseRectangle.js +4 -20
- package/dist/esm/tools/segmentation/strategies/eraseRectangle.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/eraseSphere.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/fillCircle.js +56 -31
- package/dist/esm/tools/segmentation/strategies/fillCircle.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/fillRectangle.js +16 -8
- package/dist/esm/tools/segmentation/strategies/fillRectangle.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/fillSphere.js +32 -18
- package/dist/esm/tools/segmentation/strategies/fillSphere.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js +40 -0
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js.map +1 -0
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js +2 -2
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.js +9 -0
- package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.js.map +1 -0
- package/dist/esm/types/LabelmapToolOperationData.js +2 -0
- package/dist/esm/types/LabelmapToolOperationData.js.map +1 -0
- package/dist/esm/utilities/math/ellipse/pointInEllipse.js +19 -11
- package/dist/esm/utilities/math/ellipse/pointInEllipse.js.map +1 -1
- package/dist/types/eventListeners/index.d.ts +2 -2
- package/dist/types/eventListeners/index.d.ts.map +1 -1
- package/dist/types/eventListeners/segmentation/imageChangeEventListener.d.ts +6 -0
- package/dist/types/eventListeners/segmentation/imageChangeEventListener.d.ts.map +1 -0
- package/dist/types/eventListeners/segmentation/index.d.ts +2 -1
- package/dist/types/eventListeners/segmentation/index.d.ts.map +1 -1
- package/dist/types/eventListeners/segmentation/segmentationDataModifiedEventListener.d.ts.map +1 -1
- package/dist/types/store/SynchronizerManager/Synchronizer.d.ts +1 -0
- package/dist/types/store/SynchronizerManager/Synchronizer.d.ts.map +1 -1
- package/dist/types/store/addEnabledElement.d.ts.map +1 -1
- package/dist/types/store/removeEnabledElement.d.ts.map +1 -1
- package/dist/types/synchronizers/callbacks/areViewportsCoplanar .d.ts +1 -1
- package/dist/types/synchronizers/callbacks/areViewportsCoplanar .d.ts.map +1 -1
- package/dist/types/synchronizers/callbacks/{stackImageSyncCallback.d.ts → imageSliceSyncCallback.d.ts} +2 -2
- package/dist/types/synchronizers/callbacks/imageSliceSyncCallback.d.ts.map +1 -0
- package/dist/types/synchronizers/index.d.ts +3 -2
- package/dist/types/synchronizers/index.d.ts.map +1 -1
- package/dist/types/synchronizers/synchronizers/createImageSliceSynchronizer.d.ts +3 -0
- package/dist/types/synchronizers/synchronizers/createImageSliceSynchronizer.d.ts.map +1 -0
- package/dist/types/synchronizers/synchronizers/index.d.ts +3 -2
- package/dist/types/synchronizers/synchronizers/index.d.ts.map +1 -1
- package/dist/types/tools/annotation/CircleROITool.d.ts.map +1 -1
- package/dist/types/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +2 -1
- package/dist/types/tools/displayTools/Labelmap/addLabelmapToElement.d.ts.map +1 -1
- package/dist/types/tools/displayTools/Labelmap/labelmapDisplay.d.ts +1 -1
- package/dist/types/tools/displayTools/Labelmap/labelmapDisplay.d.ts.map +1 -1
- package/dist/types/tools/displayTools/Labelmap/validateRepresentationData.d.ts.map +1 -1
- package/dist/types/tools/segmentation/BrushTool.d.ts.map +1 -1
- package/dist/types/tools/segmentation/CircleScissorsTool.d.ts +4 -2
- package/dist/types/tools/segmentation/CircleScissorsTool.d.ts.map +1 -1
- package/dist/types/tools/segmentation/PaintFillTool.d.ts.map +1 -1
- package/dist/types/tools/segmentation/RectangleScissorsTool.d.ts +3 -1
- package/dist/types/tools/segmentation/RectangleScissorsTool.d.ts.map +1 -1
- package/dist/types/tools/segmentation/SphereScissorsTool.d.ts +4 -2
- package/dist/types/tools/segmentation/SphereScissorsTool.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/eraseCircle.d.ts +2 -10
- package/dist/types/tools/segmentation/strategies/eraseCircle.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/eraseRectangle.d.ts +4 -8
- package/dist/types/tools/segmentation/strategies/eraseRectangle.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/eraseSphere.d.ts +2 -10
- package/dist/types/tools/segmentation/strategies/eraseSphere.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/fillCircle.d.ts +3 -11
- package/dist/types/tools/segmentation/strategies/fillCircle.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/fillRectangle.d.ts +2 -7
- package/dist/types/tools/segmentation/strategies/fillRectangle.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/fillSphere.d.ts +2 -10
- package/dist/types/tools/segmentation/strategies/fillSphere.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/utils/getStrategyData.d.ts +10 -0
- package/dist/types/tools/segmentation/strategies/utils/getStrategyData.d.ts.map +1 -0
- package/dist/types/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +2 -2
- package/dist/types/tools/segmentation/strategies/utils/isWithinThreshold.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/utils/stackVolumeCheck.d.ts +6 -0
- package/dist/types/tools/segmentation/strategies/utils/stackVolumeCheck.d.ts.map +1 -0
- package/dist/types/types/LabelmapToolOperationData.d.ts +15 -0
- package/dist/types/types/LabelmapToolOperationData.d.ts.map +1 -0
- package/dist/types/types/LabelmapTypes.d.ts +5 -1
- package/dist/types/types/LabelmapTypes.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +2 -1
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/utilities/math/ellipse/pointInEllipse.d.ts +7 -9
- package/dist/types/utilities/math/ellipse/pointInEllipse.d.ts.map +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +3 -3
- package/src/eventListeners/index.ts +2 -0
- package/src/eventListeners/segmentation/imageChangeEventListener.ts +215 -0
- package/src/eventListeners/segmentation/index.ts +2 -0
- package/src/eventListeners/segmentation/segmentationDataModifiedEventListener.ts +70 -9
- package/src/store/SynchronizerManager/Synchronizer.ts +28 -3
- package/src/store/addEnabledElement.ts +2 -0
- package/src/store/removeEnabledElement.ts +3 -0
- package/src/synchronizers/callbacks/areViewportsCoplanar .ts +2 -2
- package/src/synchronizers/callbacks/{stackImageSyncCallback.ts → imageSliceSyncCallback.ts} +16 -8
- package/src/synchronizers/index.ts +5 -1
- package/src/synchronizers/synchronizers/{createStackImageSynchronizer.ts → createImageSliceSynchronizer.ts} +8 -5
- package/src/synchronizers/synchronizers/index.ts +4 -1
- package/src/tools/annotation/CircleROITool.ts +5 -5
- package/src/tools/annotation/EllipticalROITool.ts +1 -1
- package/src/tools/displayTools/Labelmap/addLabelmapToElement.ts +51 -22
- package/src/tools/displayTools/Labelmap/labelmapDisplay.ts +65 -35
- package/src/tools/displayTools/Labelmap/validateRepresentationData.ts +17 -11
- package/src/tools/segmentation/BrushTool.ts +78 -39
- package/src/tools/segmentation/CircleScissorsTool.ts +46 -29
- package/src/tools/segmentation/PaintFillTool.ts +45 -8
- package/src/tools/segmentation/RectangleScissorsTool.ts +41 -31
- package/src/tools/segmentation/SphereScissorsTool.ts +46 -28
- package/src/tools/segmentation/strategies/eraseCircle.ts +3 -11
- package/src/tools/segmentation/strategies/eraseRectangle.ts +13 -42
- package/src/tools/segmentation/strategies/eraseSphere.ts +2 -10
- package/src/tools/segmentation/strategies/fillCircle.ts +93 -61
- package/src/tools/segmentation/strategies/fillRectangle.ts +31 -22
- package/src/tools/segmentation/strategies/fillSphere.ts +51 -41
- package/src/tools/segmentation/strategies/utils/getStrategyData.ts +58 -0
- package/src/tools/segmentation/strategies/utils/isWithinThreshold.ts +3 -2
- package/src/tools/segmentation/strategies/utils/stackVolumeCheck.ts +33 -0
- package/src/types/LabelmapToolOperationData.ts +27 -0
- package/src/types/LabelmapTypes.ts +16 -1
- package/src/types/index.ts +8 -0
- package/src/utilities/math/ellipse/pointInEllipse.ts +43 -22
- package/dist/cjs/synchronizers/synchronizers/createStackImageSynchronizer.js +0 -15
- package/dist/cjs/synchronizers/synchronizers/createStackImageSynchronizer.js.map +0 -1
- package/dist/esm/synchronizers/callbacks/stackImageSyncCallback.js.map +0 -1
- package/dist/esm/synchronizers/synchronizers/createStackImageSynchronizer.js +0 -9
- package/dist/esm/synchronizers/synchronizers/createStackImageSynchronizer.js.map +0 -1
- package/dist/types/synchronizers/callbacks/stackImageSyncCallback.d.ts.map +0 -1
- package/dist/types/synchronizers/synchronizers/createStackImageSynchronizer.d.ts +0 -3
- package/dist/types/synchronizers/synchronizers/createStackImageSynchronizer.d.ts.map +0 -1
|
@@ -2,6 +2,6 @@ import mouseEventListeners from './mouse';
|
|
|
2
2
|
import touchEventListeners from './touch';
|
|
3
3
|
import wheelEventListener from './wheel';
|
|
4
4
|
import keyEventListener from './keyboard';
|
|
5
|
-
import { segmentationDataModifiedEventListener, segmentationRepresentationModifiedEventListener, segmentationRepresentationRemovedEventListener, segmentationModifiedListener } from './segmentation';
|
|
5
|
+
import { segmentationDataModifiedEventListener, segmentationRepresentationModifiedEventListener, segmentationRepresentationRemovedEventListener, segmentationModifiedListener, imageChangeEventListener } from './segmentation';
|
|
6
6
|
import { annotationSelectionListener, annotationModifiedListener } from './annotations';
|
|
7
|
-
export { mouseEventListeners, touchEventListeners, wheelEventListener, keyEventListener, segmentationRepresentationModifiedEventListener, segmentationModifiedListener, segmentationRepresentationRemovedEventListener, segmentationDataModifiedEventListener, annotationSelectionListener, annotationModifiedListener, };
|
|
7
|
+
export { mouseEventListeners, touchEventListeners, wheelEventListener, keyEventListener, segmentationRepresentationModifiedEventListener, segmentationModifiedListener, segmentationRepresentationRemovedEventListener, segmentationDataModifiedEventListener, imageChangeEventListener, annotationSelectionListener, annotationModifiedListener, };
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.annotationModifiedListener = exports.annotationSelectionListener = exports.segmentationDataModifiedEventListener = exports.segmentationRepresentationRemovedEventListener = exports.segmentationModifiedListener = exports.segmentationRepresentationModifiedEventListener = exports.keyEventListener = exports.wheelEventListener = exports.touchEventListeners = exports.mouseEventListeners = void 0;
|
|
6
|
+
exports.annotationModifiedListener = exports.annotationSelectionListener = exports.imageChangeEventListener = exports.segmentationDataModifiedEventListener = exports.segmentationRepresentationRemovedEventListener = exports.segmentationModifiedListener = exports.segmentationRepresentationModifiedEventListener = exports.keyEventListener = exports.wheelEventListener = exports.touchEventListeners = exports.mouseEventListeners = void 0;
|
|
7
7
|
const mouse_1 = __importDefault(require("./mouse"));
|
|
8
8
|
exports.mouseEventListeners = mouse_1.default;
|
|
9
9
|
const touch_1 = __importDefault(require("./touch"));
|
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "segmentationDataModifiedEventListener", { enumer
|
|
|
17
17
|
Object.defineProperty(exports, "segmentationRepresentationModifiedEventListener", { enumerable: true, get: function () { return segmentation_1.segmentationRepresentationModifiedEventListener; } });
|
|
18
18
|
Object.defineProperty(exports, "segmentationRepresentationRemovedEventListener", { enumerable: true, get: function () { return segmentation_1.segmentationRepresentationRemovedEventListener; } });
|
|
19
19
|
Object.defineProperty(exports, "segmentationModifiedListener", { enumerable: true, get: function () { return segmentation_1.segmentationModifiedListener; } });
|
|
20
|
+
Object.defineProperty(exports, "imageChangeEventListener", { enumerable: true, get: function () { return segmentation_1.imageChangeEventListener; } });
|
|
20
21
|
const annotations_1 = require("./annotations");
|
|
21
22
|
Object.defineProperty(exports, "annotationSelectionListener", { enumerable: true, get: function () { return annotations_1.annotationSelectionListener; } });
|
|
22
23
|
Object.defineProperty(exports, "annotationModifiedListener", { enumerable: true, get: function () { return annotations_1.annotationModifiedListener; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/eventListeners/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA0C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/eventListeners/index.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA0C;AAkBxC,8BAlBK,eAAmB,CAkBL;AAjBrB,oDAA0C;AAkBxC,8BAlBK,eAAmB,CAkBL;AAjBrB,oDAAyC;AAkBvC,6BAlBK,eAAkB,CAkBL;AAjBpB,0DAA0C;AAkBxC,2BAlBK,kBAAgB,CAkBL;AAjBlB,iDAMwB;AAetB,sHApBA,oDAAqC,OAoBA;AAHrC,gIAhBA,8DAA+C,OAgBA;AAE/C,+HAjBA,6DAA8C,OAiBA;AAD9C,6GAfA,2CAA4B,OAeA;AAG5B,yGAjBA,uCAAwB,OAiBA;AAf1B,+CAGuB;AAarB,4GAfA,yCAA2B,OAeA;AAC3B,2GAfA,wCAA0B,OAeA"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const core_1 = require("@cornerstonejs/core");
|
|
30
|
+
const ToolGroupManager_1 = require("../../store/ToolGroupManager");
|
|
31
|
+
const SegmentationRepresentations_1 = __importDefault(require("../../enums/SegmentationRepresentations"));
|
|
32
|
+
const SegmentationState = __importStar(require("../../stateManagement/segmentation/segmentationState"));
|
|
33
|
+
const stackVolumeCheck_1 = require("../../tools/segmentation/strategies/utils/stackVolumeCheck");
|
|
34
|
+
const DataArray_1 = __importDefault(require("@kitware/vtk.js/Common/Core/DataArray"));
|
|
35
|
+
const ImageData_1 = __importDefault(require("@kitware/vtk.js/Common/DataModel/ImageData"));
|
|
36
|
+
const triggerSegmentationRender_1 = __importDefault(require("../../utilities/segmentation/triggerSegmentationRender"));
|
|
37
|
+
const enable = function (element) {
|
|
38
|
+
const { viewport } = (0, core_1.getEnabledElement)(element);
|
|
39
|
+
if (!(viewport instanceof core_1.StackViewport)) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
element.addEventListener(core_1.Enums.Events.STACK_NEW_IMAGE, _imageChangeEventListener);
|
|
43
|
+
element.addEventListener(core_1.Enums.Events.IMAGE_RENDERED, _imageChangeEventListener);
|
|
44
|
+
};
|
|
45
|
+
const disable = function (element) {
|
|
46
|
+
const { viewport } = (0, core_1.getEnabledElement)(element);
|
|
47
|
+
if (!(viewport instanceof core_1.StackViewport)) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
element.removeEventListener(core_1.Enums.Events.STACK_NEW_IMAGE, _imageChangeEventListener);
|
|
51
|
+
element.removeEventListener(core_1.Enums.Events.IMAGE_RENDERED, _imageChangeEventListener);
|
|
52
|
+
};
|
|
53
|
+
function _imageChangeEventListener(evt) {
|
|
54
|
+
const eventData = evt.detail;
|
|
55
|
+
const { viewportId, renderingEngineId } = eventData;
|
|
56
|
+
const { viewport } = (0, core_1.getEnabledElementByIds)(viewportId, renderingEngineId);
|
|
57
|
+
const toolGroup = (0, ToolGroupManager_1.getToolGroupForViewport)(viewportId, renderingEngineId);
|
|
58
|
+
let toolGroupSegmentationRepresentations = SegmentationState.getSegmentationRepresentations(toolGroup.id) || [];
|
|
59
|
+
toolGroupSegmentationRepresentations =
|
|
60
|
+
toolGroupSegmentationRepresentations.filter((representation) => representation.type === SegmentationRepresentations_1.default.Labelmap);
|
|
61
|
+
if (!(toolGroupSegmentationRepresentations === null || toolGroupSegmentationRepresentations === void 0 ? void 0 : toolGroupSegmentationRepresentations.length)) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const segmentationRepresentations = {};
|
|
65
|
+
toolGroupSegmentationRepresentations.forEach((representation) => {
|
|
66
|
+
const segmentation = SegmentationState.getSegmentation(representation.segmentationId);
|
|
67
|
+
if (!segmentation) {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
const labelmapData = segmentation.representationData[SegmentationRepresentations_1.default.Labelmap];
|
|
71
|
+
if ((0, stackVolumeCheck_1.isVolumeSegmentation)(labelmapData)) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
const { imageIdReferenceMap } = labelmapData;
|
|
75
|
+
segmentationRepresentations[representation.segmentationRepresentationUID] =
|
|
76
|
+
{
|
|
77
|
+
imageIdReferenceMap,
|
|
78
|
+
};
|
|
79
|
+
});
|
|
80
|
+
const representationList = Object.keys(segmentationRepresentations);
|
|
81
|
+
const currentImageId = viewport.getCurrentImageId();
|
|
82
|
+
const actors = viewport.getActors();
|
|
83
|
+
actors.forEach((actor) => {
|
|
84
|
+
if (!representationList.includes(actor.uid)) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const segmentationActor = actor.actor;
|
|
88
|
+
const { imageIdReferenceMap } = segmentationRepresentations[actor.uid];
|
|
89
|
+
const derivedImageId = imageIdReferenceMap.get(currentImageId);
|
|
90
|
+
const segmentationImageData = segmentationActor.getMapper().getInputData();
|
|
91
|
+
if (!derivedImageId) {
|
|
92
|
+
const scalarArray = DataArray_1.default.newInstance({
|
|
93
|
+
name: 'Pixels',
|
|
94
|
+
numberOfComponents: 1,
|
|
95
|
+
values: new Uint8Array(segmentationImageData.getNumberOfPoints()),
|
|
96
|
+
});
|
|
97
|
+
const imageData = ImageData_1.default.newInstance();
|
|
98
|
+
imageData.getPointData().setScalars(scalarArray);
|
|
99
|
+
segmentationActor.getMapper().setInputData(imageData);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
const derivedImage = core_1.cache.getImage(derivedImageId);
|
|
103
|
+
const { origin, dimensions, spacing, direction } = viewport.getImageDataMetadata(derivedImage);
|
|
104
|
+
segmentationImageData.setOrigin(origin);
|
|
105
|
+
segmentationImageData.modified();
|
|
106
|
+
if (segmentationImageData.getDimensions()[0] !== dimensions[0] ||
|
|
107
|
+
segmentationImageData.getDimensions()[1] !== dimensions[1]) {
|
|
108
|
+
viewport.removeActors([actor.uid]);
|
|
109
|
+
viewport.addImages([
|
|
110
|
+
{
|
|
111
|
+
imageId: derivedImageId,
|
|
112
|
+
actorUID: actor.uid,
|
|
113
|
+
callback: ({ imageActor }) => {
|
|
114
|
+
const scalarArray = DataArray_1.default.newInstance({
|
|
115
|
+
name: 'Pixels',
|
|
116
|
+
numberOfComponents: 1,
|
|
117
|
+
values: [...derivedImage.getPixelData()],
|
|
118
|
+
});
|
|
119
|
+
const imageData = ImageData_1.default.newInstance();
|
|
120
|
+
imageData.setDimensions(dimensions[0], dimensions[1], 1);
|
|
121
|
+
imageData.setSpacing(spacing);
|
|
122
|
+
imageData.setDirection(direction);
|
|
123
|
+
imageData.setOrigin(origin);
|
|
124
|
+
imageData.getPointData().setScalars(scalarArray);
|
|
125
|
+
imageActor.getMapper().setInputData(imageData);
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
], true, false);
|
|
129
|
+
(0, triggerSegmentationRender_1.default)(toolGroup.id);
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
core_1.utilities.updateVTKImageDataWithCornerstoneImage(segmentationImageData, derivedImage);
|
|
133
|
+
viewport.render();
|
|
134
|
+
if (evt.type === core_1.Enums.Events.IMAGE_RENDERED) {
|
|
135
|
+
viewport.element.removeEventListener(core_1.Enums.Events.IMAGE_RENDERED, _imageChangeEventListener);
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
exports.default = {
|
|
140
|
+
enable,
|
|
141
|
+
disable,
|
|
142
|
+
};
|
|
143
|
+
//# sourceMappingURL=imageChangeEventListener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imageChangeEventListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/imageChangeEventListener.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,4 +2,5 @@ import segmentationRepresentationModifiedEventListener from './segmentationRepre
|
|
|
2
2
|
import segmentationDataModifiedEventListener from './segmentationDataModifiedEventListener';
|
|
3
3
|
import segmentationRepresentationRemovedEventListener from './segmentationRepresentationRemovedEventListener';
|
|
4
4
|
import segmentationModifiedListener from './segmentationModifiedEventListener';
|
|
5
|
-
|
|
5
|
+
import imageChangeEventListener from './imageChangeEventListener';
|
|
6
|
+
export { segmentationRepresentationModifiedEventListener, segmentationDataModifiedEventListener, segmentationRepresentationRemovedEventListener, segmentationModifiedListener, imageChangeEventListener, };
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.segmentationModifiedListener = exports.segmentationRepresentationRemovedEventListener = exports.segmentationDataModifiedEventListener = exports.segmentationRepresentationModifiedEventListener = void 0;
|
|
6
|
+
exports.imageChangeEventListener = exports.segmentationModifiedListener = exports.segmentationRepresentationRemovedEventListener = exports.segmentationDataModifiedEventListener = exports.segmentationRepresentationModifiedEventListener = void 0;
|
|
7
7
|
const segmentationRepresentationModifiedEventListener_1 = __importDefault(require("./segmentationRepresentationModifiedEventListener"));
|
|
8
8
|
exports.segmentationRepresentationModifiedEventListener = segmentationRepresentationModifiedEventListener_1.default;
|
|
9
9
|
const segmentationDataModifiedEventListener_1 = __importDefault(require("./segmentationDataModifiedEventListener"));
|
|
@@ -12,4 +12,6 @@ const segmentationRepresentationRemovedEventListener_1 = __importDefault(require
|
|
|
12
12
|
exports.segmentationRepresentationRemovedEventListener = segmentationRepresentationRemovedEventListener_1.default;
|
|
13
13
|
const segmentationModifiedEventListener_1 = __importDefault(require("./segmentationModifiedEventListener"));
|
|
14
14
|
exports.segmentationModifiedListener = segmentationModifiedEventListener_1.default;
|
|
15
|
+
const imageChangeEventListener_1 = __importDefault(require("./imageChangeEventListener"));
|
|
16
|
+
exports.imageChangeEventListener = imageChangeEventListener_1.default;
|
|
15
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/index.ts"],"names":[],"mappings":";;;;;;AAAA,wIAAgH;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/index.ts"],"names":[],"mappings":";;;;;;AAAA,wIAAgH;AAO9G,0DAPK,yDAA+C,CAOL;AANjD,oHAA4F;AAO1F,gDAPK,+CAAqC,CAOL;AANvC,sIAA8G;AAO5G,yDAPK,wDAA8C,CAOL;AANhD,4GAA+E;AAO7E,uCAPK,2CAA4B,CAOL;AAN9B,0FAAkE;AAOhE,mCAPK,kCAAwB,CAOL"}
|
|
@@ -30,11 +30,16 @@ const core_1 = require("@cornerstonejs/core");
|
|
|
30
30
|
const triggerSegmentationRender_1 = __importDefault(require("../../utilities/segmentation/triggerSegmentationRender"));
|
|
31
31
|
const SegmentationRepresentations_1 = __importDefault(require("../../enums/SegmentationRepresentations"));
|
|
32
32
|
const SegmentationState = __importStar(require("../../stateManagement/segmentation/segmentationState"));
|
|
33
|
+
const stackVolumeCheck_1 = require("../../tools/segmentation/strategies/utils/stackVolumeCheck");
|
|
34
|
+
const ToolGroupManager_1 = require("../../store/ToolGroupManager");
|
|
33
35
|
const onSegmentationDataModified = function (evt) {
|
|
34
36
|
const { segmentationId, modifiedSlicesToUse } = evt.detail;
|
|
35
37
|
const { representationData, type } = SegmentationState.getSegmentation(segmentationId);
|
|
36
|
-
|
|
37
|
-
if (type
|
|
38
|
+
const toolGroupIds = SegmentationState.getToolGroupIdsWithSegmentation(segmentationId);
|
|
39
|
+
if (type !== SegmentationRepresentations_1.default.Labelmap) {
|
|
40
|
+
throw new Error(`onSegmentationDataModified: representationType ${type} not supported yet`);
|
|
41
|
+
}
|
|
42
|
+
if ((0, stackVolumeCheck_1.isVolumeSegmentation)(representationData[type])) {
|
|
38
43
|
const segmentationVolume = core_1.cache.getVolume(representationData[type].volumeId);
|
|
39
44
|
if (!segmentationVolume) {
|
|
40
45
|
console.warn('segmentation not found in cache');
|
|
@@ -53,11 +58,32 @@ const onSegmentationDataModified = function (evt) {
|
|
|
53
58
|
vtkOpenGLTexture.setUpdatedFrame(i);
|
|
54
59
|
});
|
|
55
60
|
imageData.modified();
|
|
56
|
-
toolGroupIds =
|
|
57
|
-
SegmentationState.getToolGroupIdsWithSegmentation(segmentationId);
|
|
58
61
|
}
|
|
59
62
|
else {
|
|
60
|
-
|
|
63
|
+
toolGroupIds.forEach((toolGroupId) => {
|
|
64
|
+
const toolGroupSegmentationRepresentations = SegmentationState.getSegmentationRepresentations(toolGroupId);
|
|
65
|
+
const toolGroup = (0, ToolGroupManager_1.getToolGroup)(toolGroupId);
|
|
66
|
+
const viewportsInfo = toolGroup.getViewportsInfo();
|
|
67
|
+
toolGroupSegmentationRepresentations.forEach((representation) => {
|
|
68
|
+
if (representation.segmentationId !== segmentationId) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
viewportsInfo.forEach(({ viewportId, renderingEngineId }) => {
|
|
72
|
+
const viewport = (0, core_1.getEnabledElementByIds)(viewportId, renderingEngineId).viewport;
|
|
73
|
+
const actorEntry = viewport.getActor(representation.segmentationRepresentationUID);
|
|
74
|
+
if (!actorEntry) {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
const currentImageId = viewport.getCurrentImageId();
|
|
78
|
+
const segImageData = actorEntry.actor.getMapper().getInputData();
|
|
79
|
+
const { imageIdReferenceMap } = representationData[type];
|
|
80
|
+
const currentSegmentationImageId = imageIdReferenceMap.get(currentImageId);
|
|
81
|
+
const segmentationImage = core_1.cache.getImage(currentSegmentationImageId);
|
|
82
|
+
segImageData.modified();
|
|
83
|
+
core_1.utilities.updateVTKImageDataWithCornerstoneImage(segImageData, segmentationImage);
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
});
|
|
61
87
|
}
|
|
62
88
|
toolGroupIds.forEach((toolGroupId) => {
|
|
63
89
|
(0, triggerSegmentationRender_1.default)(toolGroupId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segmentationDataModifiedEventListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/segmentationDataModifiedEventListener.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"segmentationDataModifiedEventListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/segmentationDataModifiedEventListener.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ class Synchronizer {
|
|
|
31
31
|
this._sourceViewports = [];
|
|
32
32
|
this._targetViewports = [];
|
|
33
33
|
this._options = options || {};
|
|
34
|
+
this._auxiliaryEventNames = this._options.auxiliaryEventNames || [];
|
|
34
35
|
this.id = synchronizerId;
|
|
35
36
|
}
|
|
36
37
|
isDisabled() {
|
|
@@ -51,8 +52,18 @@ class Synchronizer {
|
|
|
51
52
|
return;
|
|
52
53
|
}
|
|
53
54
|
const { renderingEngineId, viewportId } = viewportInfo;
|
|
54
|
-
const
|
|
55
|
+
const viewport = (0, core_1.getRenderingEngine)(renderingEngineId).getViewport(viewportId);
|
|
56
|
+
if (!viewport) {
|
|
57
|
+
console.warn(`Synchronizer.addSource: No viewport for ${renderingEngineId} ${viewportId}`);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const element = viewport.element;
|
|
55
61
|
element.addEventListener(this._eventName, this._onEvent.bind(this));
|
|
62
|
+
if (this._auxiliaryEventNames.length) {
|
|
63
|
+
this._auxiliaryEventNames.forEach((eventName) => {
|
|
64
|
+
element.addEventListener(eventName, this._onEvent.bind(this));
|
|
65
|
+
});
|
|
66
|
+
}
|
|
56
67
|
this._updateDisableHandlers();
|
|
57
68
|
this._sourceViewports.push(viewportInfo);
|
|
58
69
|
}
|
|
@@ -85,6 +96,11 @@ class Synchronizer {
|
|
|
85
96
|
const element = _getViewportElement(viewportInfo);
|
|
86
97
|
this._sourceViewports.splice(index, 1);
|
|
87
98
|
element.removeEventListener(this._eventName, this._eventHandler);
|
|
99
|
+
if (this._auxiliaryEventNames) {
|
|
100
|
+
this._auxiliaryEventNames.forEach((eventName) => {
|
|
101
|
+
element.removeEventListener(eventName, this._eventHandler);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
88
104
|
this._updateDisableHandlers();
|
|
89
105
|
}
|
|
90
106
|
removeTarget(viewportInfo) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Synchronizer.js","sourceRoot":"","sources":["../../../../src/store/SynchronizerManager/Synchronizer.ts"],"names":[],"mappings":";;AAAA,8CAK6B;AAU7B,MAAM,YAAY;
|
|
1
|
+
{"version":3,"file":"Synchronizer.js","sourceRoot":"","sources":["../../../../src/store/SynchronizerManager/Synchronizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ function addEnabledElement(evt) {
|
|
|
14
14
|
eventListeners_1.wheelEventListener.enable(element);
|
|
15
15
|
eventListeners_1.touchEventListeners.enable(element);
|
|
16
16
|
eventListeners_1.keyEventListener.enable(element);
|
|
17
|
+
eventListeners_1.imageChangeEventListener.enable(element);
|
|
17
18
|
eventDispatchers_1.imageRenderedEventDispatcher.enable(element);
|
|
18
19
|
eventDispatchers_1.cameraModifiedEventDispatcher.enable(element);
|
|
19
20
|
eventDispatchers_1.imageSpacingCalibratedEventDispatcher.enable(element);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addEnabledElement.js","sourceRoot":"","sources":["../../../src/store/addEnabledElement.ts"],"names":[],"mappings":";;AACA,
|
|
1
|
+
{"version":3,"file":"addEnabledElement.js","sourceRoot":"","sources":["../../../src/store/addEnabledElement.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ const stateManagement_1 = require("../stateManagement");
|
|
|
14
14
|
const getSynchronizersForViewport_1 = __importDefault(require("./SynchronizerManager/getSynchronizersForViewport"));
|
|
15
15
|
const getToolGroupForViewport_1 = __importDefault(require("./ToolGroupManager/getToolGroupForViewport"));
|
|
16
16
|
const triggerAnnotationRender_1 = require("../utilities/triggerAnnotationRender");
|
|
17
|
+
const imageChangeEventListener_1 = __importDefault(require("../eventListeners/segmentation/imageChangeEventListener"));
|
|
17
18
|
const VIEWPORT_ELEMENT = 'viewport-element';
|
|
18
19
|
function removeEnabledElement(elementDisabledEvt) {
|
|
19
20
|
const { element, viewportId } = elementDisabledEvt.detail;
|
|
@@ -24,6 +25,7 @@ function removeEnabledElement(elementDisabledEvt) {
|
|
|
24
25
|
eventListeners_1.wheelEventListener.disable(element);
|
|
25
26
|
eventListeners_1.touchEventListeners.disable(element);
|
|
26
27
|
eventListeners_1.keyEventListener.disable(element);
|
|
28
|
+
imageChangeEventListener_1.default.disable(element);
|
|
27
29
|
eventDispatchers_1.imageRenderedEventDispatcher.disable(element);
|
|
28
30
|
eventDispatchers_1.cameraModifiedEventDispatcher.disable(element);
|
|
29
31
|
eventDispatchers_1.imageSpacingCalibratedEventDispatcher.disable(element);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removeEnabledElement.js","sourceRoot":"","sources":["../../../src/store/removeEnabledElement.ts"],"names":[],"mappings":";;;;;AAAA,8CAA+D;AAC/D,sDAK2B;AAC3B,0DAO6B;AAG7B,kHAA0F;AAC1F,mCAAgC;AAChC,2GAAmF;AACnF,oCAAqC;AACrC,wDAAsD;AACtD,oHAA4F;AAC5F,yGAAiF;AACjF,kFAAiF;
|
|
1
|
+
{"version":3,"file":"removeEnabledElement.js","sourceRoot":"","sources":["../../../src/store/removeEnabledElement.ts"],"names":[],"mappings":";;;;;AAAA,8CAA+D;AAC/D,sDAK2B;AAC3B,0DAO6B;AAG7B,kHAA0F;AAC1F,mCAAgC;AAChC,2GAAmF;AACnF,oCAAqC;AACrC,wDAAsD;AACtD,oHAA4F;AAC5F,yGAAiF;AACjF,kFAAiF;AACjF,uHAA+F;AAE/F,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAE5C,SAAS,oBAAoB,CAC3B,kBAAyD;IAGzD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAE1D,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC5B,cAAc,CAAC,OAAO,CAAC,CAAC;IAGxB,mDAAyB,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAGrE,oCAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,mCAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,oCAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,iCAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAGlC,kCAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAG1C,+CAA4B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,gDAA6B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,wDAAqC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvD,2CAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,8CAA2B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,2CAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAI1C,gCAAgC,CAAC,OAAO,CAAC,CAAC;IAC1C,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAGtC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,gCAAgC,GAAG,CAAC,OAAuB,EAAE,EAAE;IACnE,MAAM,cAAc,GAAG,IAAA,wBAAiB,EAAC,OAAO,CAAC,CAAC;IAElD,MAAM,aAAa,GAAG,IAAA,qCAA2B,EAC/C,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,iBAAiB,CACjC,CAAC;IACF,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,OAAuB,EAAE,EAAE;IAC/D,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,IAAA,wBAAiB,EAAC,OAAO,CAAC,CAAC;IAErE,MAAM,SAAS,GAAG,IAAA,iCAAuB,EAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IAEzE,IAAI,SAAS,EAAE;QACb,SAAS,CAAC,eAAe,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;KAC1D;AACH,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,UAAU,OAAO;IACjD,MAAM,KAAK,GAAG,IAAA,qCAA2B,EAAC,OAAO,EAAE;QACjD,iBAAS,CAAC,MAAM;QAChB,iBAAS,CAAC,OAAO;KAClB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,IAAA,8CAAoC,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC3E,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;QACxC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACjC,IAAA,kCAAgB,EAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,SAAS,kBAAkB,CAAC,OAAuB;IACjD,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GACtE,OAAO,CAAC,OAAO,CAAC;IAClB,MAAM,WAAW,GAAG,GAAG,UAAU,IAAI,iBAAiB,EAAE,CAAC;IAEzD,OAAO,aAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,cAAc,CAAC,OAAuB;IAC7C,MAAM,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,gBAAgB,EAAE,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,QAAQ,EAAE;QACZ,oBAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;KAC5C;AACH,CAAC;AAMD,MAAM,qBAAqB,GAAG,UAAU,OAAuB;IAC7D,MAAM,iBAAiB,GAAG,aAAK,CAAC,eAAe,CAAC,SAAS,CACvD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,CACvB,CAAC;IAEF,IAAI,iBAAiB,GAAG,CAAC,CAAC,EAAE;QAC1B,aAAK,CAAC,eAAe,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;KACpD;AACH,CAAC,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { Types } from '@cornerstonejs/core';
|
|
2
|
-
export default function areViewportsCoplanar(viewport1: Types.IStackViewport, viewport2: Types.IStackViewport): boolean;
|
|
2
|
+
export default function areViewportsCoplanar(viewport1: Types.IStackViewport | Types.IVolumeViewport, viewport2: Types.IStackViewport | Types.IVolumeViewport): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"areViewportsCoplanar .js","sourceRoot":"","sources":["../../../../src/synchronizers/callbacks/areViewportsCoplanar .ts"],"names":[],"mappings":";;AAAA,yCAAiC;AAGjC,SAAwB,oBAAoB,CAC1C,
|
|
1
|
+
{"version":3,"file":"areViewportsCoplanar .js","sourceRoot":"","sources":["../../../../src/synchronizers/callbacks/areViewportsCoplanar .ts"],"names":[],"mappings":";;AAAA,yCAAiC;AAGjC,SAAwB,oBAAoB,CAC1C,SAAuD,EACvD,SAAuD;IAEvD,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;IACpE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;IACpE,MAAM,WAAW,GAAG,gBAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC;AACrC,CAAC;AARD,uCAQC"}
|
package/dist/cjs/synchronizers/callbacks/{stackImageSyncCallback.d.ts → imageSliceSyncCallback.d.ts}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Types } from '@cornerstonejs/core';
|
|
2
2
|
import { Synchronizer } from '../../store';
|
|
3
|
-
export default function
|
|
3
|
+
export default function imageSliceSyncCallback(synchronizerInstance: Synchronizer, sourceViewport: Types.IViewportId, targetViewport: Types.IViewportId): Promise<void>;
|
package/dist/cjs/synchronizers/callbacks/{stackImageSyncCallback.js → imageSliceSyncCallback.js}
RENAMED
|
@@ -17,7 +17,7 @@ const core_1 = require("@cornerstonejs/core");
|
|
|
17
17
|
const utilities_1 = require("../../utilities");
|
|
18
18
|
const areViewportsCoplanar_1 = __importDefault(require("./areViewportsCoplanar "));
|
|
19
19
|
const getSpatialRegistration = (targetId, sourceId) => core_1.utilities.spatialRegistrationMetadataProvider.get('spatialRegistrationModule', targetId, sourceId);
|
|
20
|
-
function
|
|
20
|
+
function imageSliceSyncCallback(synchronizerInstance, sourceViewport, targetViewport) {
|
|
21
21
|
return __awaiter(this, void 0, void 0, function* () {
|
|
22
22
|
const renderingEngine = (0, core_1.getRenderingEngine)(targetViewport.renderingEngineId);
|
|
23
23
|
if (!renderingEngine) {
|
|
@@ -54,15 +54,19 @@ function stackImageSyncCallback(synchronizerInstance, sourceViewport, targetView
|
|
|
54
54
|
}
|
|
55
55
|
const targetImagePositionPatientWithRegistrationMatrix = gl_matrix_1.vec3.transformMat4(gl_matrix_1.vec3.create(), sourceImagePositionPatient, registrationMatrixMat4);
|
|
56
56
|
const closestImageIdIndex2 = _getClosestImageIdIndex(targetImagePositionPatientWithRegistrationMatrix, targetImageIds);
|
|
57
|
+
let imageIndexToSet = closestImageIdIndex2.index;
|
|
58
|
+
if (tViewport instanceof core_1.VolumeViewport) {
|
|
59
|
+
imageIndexToSet = targetImageIds.length - closestImageIdIndex2.index - 1;
|
|
60
|
+
}
|
|
57
61
|
if (closestImageIdIndex2.index !== -1 &&
|
|
58
62
|
tViewport.getCurrentImageIdIndex() !== closestImageIdIndex2.index) {
|
|
59
63
|
yield (0, utilities_1.jumpToSlice)(tViewport.element, {
|
|
60
|
-
imageIndex:
|
|
64
|
+
imageIndex: imageIndexToSet,
|
|
61
65
|
});
|
|
62
66
|
}
|
|
63
67
|
});
|
|
64
68
|
}
|
|
65
|
-
exports.default =
|
|
69
|
+
exports.default = imageSliceSyncCallback;
|
|
66
70
|
function _getClosestImageIdIndex(targetPoint, imageIds) {
|
|
67
71
|
return imageIds.reduce((closestImageIdIndex, imageId, index) => {
|
|
68
72
|
const { imagePositionPatient } = core_1.metaData.get('imagePlaneModule', imageId);
|
|
@@ -79,4 +83,4 @@ function _getClosestImageIdIndex(targetPoint, imageIds) {
|
|
|
79
83
|
index: -1,
|
|
80
84
|
});
|
|
81
85
|
}
|
|
82
|
-
//# sourceMappingURL=
|
|
86
|
+
//# sourceMappingURL=imageSliceSyncCallback.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"imageSliceSyncCallback.js","sourceRoot":"","sources":["../../../../src/synchronizers/callbacks/imageSliceSyncCallback.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import createCameraPositionSynchronizer from './synchronizers/createCameraPositionSynchronizer';
|
|
2
2
|
import createVOISynchronizer from './synchronizers/createVOISynchronizer';
|
|
3
3
|
import createZoomPanSynchronizer from './synchronizers/createZoomPanSynchronizer';
|
|
4
|
-
import
|
|
5
|
-
|
|
4
|
+
import createImageSliceSynchronizer from './synchronizers/createImageSliceSynchronizer';
|
|
5
|
+
declare const createStackImageSynchronizer: typeof createImageSliceSynchronizer;
|
|
6
|
+
export { createCameraPositionSynchronizer, createVOISynchronizer, createZoomPanSynchronizer, createImageSliceSynchronizer, createStackImageSynchronizer, };
|
|
@@ -3,13 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createStackImageSynchronizer = exports.createZoomPanSynchronizer = exports.createVOISynchronizer = exports.createCameraPositionSynchronizer = void 0;
|
|
6
|
+
exports.createStackImageSynchronizer = exports.createImageSliceSynchronizer = exports.createZoomPanSynchronizer = exports.createVOISynchronizer = exports.createCameraPositionSynchronizer = void 0;
|
|
7
7
|
const createCameraPositionSynchronizer_1 = __importDefault(require("./synchronizers/createCameraPositionSynchronizer"));
|
|
8
8
|
exports.createCameraPositionSynchronizer = createCameraPositionSynchronizer_1.default;
|
|
9
9
|
const createVOISynchronizer_1 = __importDefault(require("./synchronizers/createVOISynchronizer"));
|
|
10
10
|
exports.createVOISynchronizer = createVOISynchronizer_1.default;
|
|
11
11
|
const createZoomPanSynchronizer_1 = __importDefault(require("./synchronizers/createZoomPanSynchronizer"));
|
|
12
12
|
exports.createZoomPanSynchronizer = createZoomPanSynchronizer_1.default;
|
|
13
|
-
const
|
|
14
|
-
exports.
|
|
13
|
+
const createImageSliceSynchronizer_1 = __importDefault(require("./synchronizers/createImageSliceSynchronizer"));
|
|
14
|
+
exports.createImageSliceSynchronizer = createImageSliceSynchronizer_1.default;
|
|
15
|
+
const createStackImageSynchronizer = createImageSliceSynchronizer_1.default;
|
|
16
|
+
exports.createStackImageSynchronizer = createStackImageSynchronizer;
|
|
15
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/synchronizers/index.ts"],"names":[],"mappings":";;;;;;AAAA,wHAAgG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/synchronizers/index.ts"],"names":[],"mappings":";;;;;;AAAA,wHAAgG;AAS9F,2CATK,0CAAgC,CASL;AARlC,kGAA0E;AASxE,gCATK,+BAAqB,CASL;AARvB,0GAAkF;AAShF,oCATK,mCAAyB,CASL;AAR3B,gHAAwF;AAStF,uCATK,sCAA4B,CASL;AAN9B,MAAM,4BAA4B,GAAG,sCAA4B,CAAC;AAOhE,oEAA4B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import Synchronizer from '../../store/SynchronizerManager/Synchronizer';
|
|
2
|
-
export default function
|
|
2
|
+
export default function createImageSliceSynchronizer(synchronizerName: string): Synchronizer;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const SynchronizerManager_1 = require("../../store/SynchronizerManager");
|
|
7
|
+
const core_1 = require("@cornerstonejs/core");
|
|
8
|
+
const imageSliceSyncCallback_1 = __importDefault(require("../callbacks/imageSliceSyncCallback"));
|
|
9
|
+
const { STACK_NEW_IMAGE, VOLUME_NEW_IMAGE } = core_1.Enums.Events;
|
|
10
|
+
function createImageSliceSynchronizer(synchronizerName) {
|
|
11
|
+
const stackImageSynchronizer = (0, SynchronizerManager_1.createSynchronizer)(synchronizerName, STACK_NEW_IMAGE, imageSliceSyncCallback_1.default, {
|
|
12
|
+
auxiliaryEventNames: [VOLUME_NEW_IMAGE],
|
|
13
|
+
});
|
|
14
|
+
return stackImageSynchronizer;
|
|
15
|
+
}
|
|
16
|
+
exports.default = createImageSliceSynchronizer;
|
|
17
|
+
//# sourceMappingURL=createImageSliceSynchronizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createImageSliceSynchronizer.js","sourceRoot":"","sources":["../../../../src/synchronizers/synchronizers/createImageSliceSynchronizer.ts"],"names":[],"mappings":";;;;;AAAA,yEAAqE;AACrE,8CAA4C;AAC5C,iGAAyE;AAGzE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,YAAK,CAAC,MAAM,CAAC;AAS3D,SAAwB,4BAA4B,CAClD,gBAAwB;IAExB,MAAM,sBAAsB,GAAG,IAAA,wCAAkB,EAC/C,gBAAgB,EAChB,eAAe,EACf,gCAAsB,EACtB;QACE,mBAAmB,EAAE,CAAC,gBAAgB,CAAC;KACxC,CACF,CAAC;IAEF,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAbD,+CAaC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import createCameraPositionSynchronizer from './createCameraPositionSynchronizer';
|
|
2
2
|
import createVOISynchronizer from './createVOISynchronizer';
|
|
3
3
|
import createZoomPanSynchronizer from './createZoomPanSynchronizer';
|
|
4
|
-
import
|
|
5
|
-
|
|
4
|
+
import createImageSliceSynchronizer from './createImageSliceSynchronizer';
|
|
5
|
+
declare const createStackImageSynchronizer: typeof createImageSliceSynchronizer;
|
|
6
|
+
export { createCameraPositionSynchronizer, createVOISynchronizer, createZoomPanSynchronizer, createImageSliceSynchronizer, createStackImageSynchronizer, };
|