@cornerstonejs/tools 1.41.0 → 1.42.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyDown.js +2 -1
- package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyDown.js.map +1 -1
- package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.js +18 -5
- package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.js.map +1 -1
- package/dist/cjs/stateManagement/annotation/annotationState.js +3 -0
- package/dist/cjs/stateManagement/annotation/annotationState.js.map +1 -1
- package/dist/cjs/stateManagement/segmentation/convertStackToVolumeSegmentation.d.ts +10 -0
- package/dist/cjs/stateManagement/segmentation/convertStackToVolumeSegmentation.js +65 -0
- package/dist/cjs/stateManagement/segmentation/convertStackToVolumeSegmentation.js.map +1 -0
- package/dist/cjs/stateManagement/segmentation/convertVolumeToStackSegmentation.d.ts +8 -0
- package/dist/cjs/stateManagement/segmentation/convertVolumeToStackSegmentation.js +92 -0
- package/dist/cjs/stateManagement/segmentation/convertVolumeToStackSegmentation.js.map +1 -0
- package/dist/cjs/stateManagement/segmentation/index.d.ts +3 -1
- package/dist/cjs/stateManagement/segmentation/index.js +5 -1
- package/dist/cjs/stateManagement/segmentation/index.js.map +1 -1
- package/dist/cjs/stateManagement/segmentation/segmentationState.d.ts +2 -1
- package/dist/cjs/stateManagement/segmentation/segmentationState.js +8 -1
- package/dist/cjs/stateManagement/segmentation/segmentationState.js.map +1 -1
- package/dist/cjs/store/ToolGroupManager/ToolGroup.js +3 -0
- package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
- package/dist/cjs/tools/annotation/AngleTool.js +2 -2
- package/dist/cjs/tools/annotation/AngleTool.js.map +1 -1
- package/dist/cjs/tools/annotation/BidirectionalTool.js +8 -7
- package/dist/cjs/tools/annotation/BidirectionalTool.js.map +1 -1
- package/dist/cjs/tools/annotation/CircleROITool.js +8 -8
- package/dist/cjs/tools/annotation/CircleROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/EllipticalROITool.js +7 -7
- package/dist/cjs/tools/annotation/EllipticalROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/LengthTool.js +2 -2
- package/dist/cjs/tools/annotation/LengthTool.js.map +1 -1
- package/dist/cjs/tools/annotation/PlanarFreehandROITool.js +5 -5
- package/dist/cjs/tools/annotation/PlanarFreehandROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/ProbeTool.js +3 -3
- package/dist/cjs/tools/annotation/ProbeTool.js.map +1 -1
- package/dist/cjs/tools/annotation/RectangleROITool.js +7 -7
- package/dist/cjs/tools/annotation/RectangleROITool.js.map +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js +10 -0
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
- package/dist/cjs/tools/segmentation/BrushTool.js +8 -4
- package/dist/cjs/tools/segmentation/BrushTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/fillCircle.js +4 -6
- package/dist/cjs/tools/segmentation/strategies/fillCircle.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +1 -1
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -1
- package/dist/cjs/types/index.d.ts +2 -1
- package/dist/cjs/utilities/contours/AnnotationToPointData.d.ts +11 -0
- package/dist/cjs/utilities/contours/AnnotationToPointData.js +44 -0
- package/dist/cjs/utilities/contours/AnnotationToPointData.js.map +1 -0
- package/dist/cjs/utilities/contours/RectangleROIStartEndThreshold.d.ts +6 -0
- package/dist/cjs/utilities/contours/RectangleROIStartEndThreshold.js +43 -0
- package/dist/cjs/utilities/contours/RectangleROIStartEndThreshold.js.map +1 -0
- package/dist/cjs/utilities/contours/contourFinder.d.ts +7 -0
- package/dist/cjs/utilities/contours/contourFinder.js +68 -0
- package/dist/cjs/utilities/contours/contourFinder.js.map +1 -0
- package/dist/cjs/utilities/contours/detectContourHoles.d.ts +5 -0
- package/dist/cjs/utilities/contours/detectContourHoles.js +78 -0
- package/dist/cjs/utilities/contours/detectContourHoles.js.map +1 -0
- package/dist/cjs/utilities/contours/generateContourSetsFromLabelmap.d.ts +4 -0
- package/dist/cjs/utilities/contours/generateContourSetsFromLabelmap.js +124 -0
- package/dist/cjs/utilities/contours/generateContourSetsFromLabelmap.js.map +1 -0
- package/dist/cjs/utilities/contours/index.d.ts +6 -0
- package/dist/cjs/utilities/contours/index.js +17 -0
- package/dist/cjs/utilities/contours/index.js.map +1 -0
- package/dist/cjs/utilities/contours/mergePoints.d.ts +8 -0
- package/dist/cjs/utilities/contours/mergePoints.js +77 -0
- package/dist/cjs/utilities/contours/mergePoints.js.map +1 -0
- package/dist/cjs/utilities/index.d.ts +4 -2
- package/dist/cjs/utilities/index.js +8 -5
- package/dist/cjs/utilities/index.js.map +1 -1
- package/dist/cjs/utilities/segmentation/contourAndFindLargestBidirectional.d.ts +1 -0
- package/dist/cjs/utilities/segmentation/contourAndFindLargestBidirectional.js +31 -0
- package/dist/cjs/utilities/segmentation/contourAndFindLargestBidirectional.js.map +1 -0
- package/dist/cjs/utilities/segmentation/createBidirectionalToolData.d.ts +14 -0
- package/dist/cjs/utilities/segmentation/createBidirectionalToolData.js +43 -0
- package/dist/cjs/utilities/segmentation/createBidirectionalToolData.js.map +1 -0
- package/dist/cjs/utilities/segmentation/createImageIdReferenceMap.d.ts +2 -0
- package/dist/cjs/utilities/segmentation/createImageIdReferenceMap.js +11 -0
- package/dist/cjs/utilities/segmentation/createImageIdReferenceMap.js.map +1 -0
- package/dist/cjs/utilities/segmentation/findLargestBidirectional.d.ts +1 -0
- package/dist/cjs/utilities/segmentation/findLargestBidirectional.js +94 -0
- package/dist/cjs/utilities/segmentation/findLargestBidirectional.js.map +1 -0
- package/dist/cjs/utilities/segmentation/index.d.ts +5 -1
- package/dist/cjs/utilities/segmentation/index.js +9 -1
- package/dist/cjs/utilities/segmentation/index.js.map +1 -1
- package/dist/cjs/utilities/segmentation/isLineInSegment.d.ts +9 -0
- package/dist/cjs/utilities/segmentation/isLineInSegment.js +55 -0
- package/dist/cjs/utilities/segmentation/isLineInSegment.js.map +1 -0
- package/dist/cjs/utilities/segmentation/segmentContourAction.d.ts +17 -0
- package/dist/cjs/utilities/segmentation/segmentContourAction.js +122 -0
- package/dist/cjs/utilities/segmentation/segmentContourAction.js.map +1 -0
- package/dist/cjs/utilities/segmentation/thresholdSegmentationByRange.js.map +1 -1
- package/dist/cjs/utilities/segmentation/triggerSegmentationRender.js +8 -4
- package/dist/cjs/utilities/segmentation/triggerSegmentationRender.js.map +1 -1
- package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js +2 -5
- package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -1
- package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js +2 -1
- package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -1
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js +2 -1
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js.map +1 -1
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +18 -5
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js.map +1 -1
- package/dist/esm/stateManagement/annotation/annotationState.js +3 -0
- package/dist/esm/stateManagement/annotation/annotationState.js.map +1 -1
- package/dist/esm/stateManagement/segmentation/convertStackToVolumeSegmentation.js +47 -0
- package/dist/esm/stateManagement/segmentation/convertStackToVolumeSegmentation.js.map +1 -0
- package/dist/esm/stateManagement/segmentation/convertVolumeToStackSegmentation.js +72 -0
- package/dist/esm/stateManagement/segmentation/convertVolumeToStackSegmentation.js.map +1 -0
- package/dist/esm/stateManagement/segmentation/index.js +3 -1
- package/dist/esm/stateManagement/segmentation/index.js.map +1 -1
- package/dist/esm/stateManagement/segmentation/segmentationState.js +7 -1
- package/dist/esm/stateManagement/segmentation/segmentationState.js.map +1 -1
- package/dist/esm/store/ToolGroupManager/ToolGroup.js +3 -0
- package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
- package/dist/esm/tools/annotation/AngleTool.js +1 -1
- package/dist/esm/tools/annotation/AngleTool.js.map +1 -1
- package/dist/esm/tools/annotation/BidirectionalTool.js +8 -7
- package/dist/esm/tools/annotation/BidirectionalTool.js.map +1 -1
- package/dist/esm/tools/annotation/CircleROITool.js +1 -1
- 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/annotation/LengthTool.js +1 -1
- package/dist/esm/tools/annotation/LengthTool.js.map +1 -1
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js +1 -1
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js.map +1 -1
- package/dist/esm/tools/annotation/ProbeTool.js +1 -1
- package/dist/esm/tools/annotation/ProbeTool.js.map +1 -1
- package/dist/esm/tools/annotation/RectangleROITool.js +1 -1
- package/dist/esm/tools/annotation/RectangleROITool.js.map +1 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +11 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
- package/dist/esm/tools/segmentation/BrushTool.js +8 -4
- package/dist/esm/tools/segmentation/BrushTool.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/fillCircle.js +4 -6
- package/dist/esm/tools/segmentation/strategies/fillCircle.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -1
- package/dist/esm/utilities/contours/AnnotationToPointData.js +39 -0
- package/dist/esm/utilities/contours/AnnotationToPointData.js.map +1 -0
- package/dist/esm/utilities/contours/RectangleROIStartEndThreshold.js +41 -0
- package/dist/esm/utilities/contours/RectangleROIStartEndThreshold.js.map +1 -0
- package/dist/esm/utilities/contours/contourFinder.js +63 -0
- package/dist/esm/utilities/contours/contourFinder.js.map +1 -0
- package/dist/esm/utilities/contours/detectContourHoles.js +74 -0
- package/dist/esm/utilities/contours/detectContourHoles.js.map +1 -0
- package/dist/esm/utilities/contours/generateContourSetsFromLabelmap.js +117 -0
- package/dist/esm/utilities/contours/generateContourSetsFromLabelmap.js.map +1 -0
- package/dist/esm/utilities/contours/index.js +7 -0
- package/dist/esm/utilities/contours/index.js.map +1 -0
- package/dist/esm/utilities/contours/mergePoints.js +73 -0
- package/dist/esm/utilities/contours/mergePoints.js.map +1 -0
- package/dist/esm/utilities/index.js +4 -2
- package/dist/esm/utilities/index.js.map +1 -1
- package/dist/esm/utilities/segmentation/contourAndFindLargestBidirectional.js +25 -0
- package/dist/esm/utilities/segmentation/contourAndFindLargestBidirectional.js.map +1 -0
- package/dist/esm/utilities/segmentation/createBidirectionalToolData.js +40 -0
- package/dist/esm/utilities/segmentation/createBidirectionalToolData.js.map +1 -0
- package/dist/esm/utilities/segmentation/createImageIdReferenceMap.js +8 -0
- package/dist/esm/utilities/segmentation/createImageIdReferenceMap.js.map +1 -0
- package/dist/esm/utilities/segmentation/findLargestBidirectional.js +96 -0
- package/dist/esm/utilities/segmentation/findLargestBidirectional.js.map +1 -0
- package/dist/esm/utilities/segmentation/index.js +5 -1
- package/dist/esm/utilities/segmentation/index.js.map +1 -1
- package/dist/esm/utilities/segmentation/isLineInSegment.js +50 -0
- package/dist/esm/utilities/segmentation/isLineInSegment.js.map +1 -0
- package/dist/esm/utilities/segmentation/segmentContourAction.js +98 -0
- package/dist/esm/utilities/segmentation/segmentContourAction.js.map +1 -0
- package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.js.map +1 -1
- package/dist/esm/utilities/segmentation/triggerSegmentationRender.js +8 -4
- package/dist/esm/utilities/segmentation/triggerSegmentationRender.js.map +1 -1
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +1 -1
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -1
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +2 -1
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -1
- package/dist/types/eventDispatchers/keyboardEventHandlers/keyDown.d.ts.map +1 -1
- package/dist/types/eventListeners/segmentation/imageChangeEventListener.d.ts.map +1 -1
- package/dist/types/stateManagement/annotation/annotationState.d.ts.map +1 -1
- package/dist/types/stateManagement/segmentation/convertStackToVolumeSegmentation.d.ts +11 -0
- package/dist/types/stateManagement/segmentation/convertStackToVolumeSegmentation.d.ts.map +1 -0
- package/dist/types/stateManagement/segmentation/convertVolumeToStackSegmentation.d.ts +9 -0
- package/dist/types/stateManagement/segmentation/convertVolumeToStackSegmentation.d.ts.map +1 -0
- package/dist/types/stateManagement/segmentation/index.d.ts +3 -1
- package/dist/types/stateManagement/segmentation/index.d.ts.map +1 -1
- package/dist/types/stateManagement/segmentation/segmentationState.d.ts +2 -1
- package/dist/types/stateManagement/segmentation/segmentationState.d.ts.map +1 -1
- package/dist/types/store/ToolGroupManager/ToolGroup.d.ts.map +1 -1
- package/dist/types/tools/annotation/AngleTool.d.ts.map +1 -1
- package/dist/types/tools/annotation/BidirectionalTool.d.ts.map +1 -1
- package/dist/types/tools/annotation/PlanarFreehandROITool.d.ts.map +1 -1
- package/dist/types/tools/displayTools/Labelmap/labelmapDisplay.d.ts.map +1 -1
- package/dist/types/tools/segmentation/BrushTool.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/fillCircle.d.ts.map +1 -1
- package/dist/types/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +1 -1
- package/dist/types/tools/segmentation/strategies/utils/isWithinThreshold.d.ts.map +1 -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/contours/AnnotationToPointData.d.ts +12 -0
- package/dist/types/utilities/contours/AnnotationToPointData.d.ts.map +1 -0
- package/dist/types/utilities/contours/RectangleROIStartEndThreshold.d.ts +7 -0
- package/dist/types/utilities/contours/RectangleROIStartEndThreshold.d.ts.map +1 -0
- package/dist/types/utilities/contours/contourFinder.d.ts +8 -0
- package/dist/types/utilities/contours/contourFinder.d.ts.map +1 -0
- package/dist/types/utilities/contours/detectContourHoles.d.ts +6 -0
- package/dist/types/utilities/contours/detectContourHoles.d.ts.map +1 -0
- package/dist/types/utilities/contours/generateContourSetsFromLabelmap.d.ts +5 -0
- package/dist/types/utilities/contours/generateContourSetsFromLabelmap.d.ts.map +1 -0
- package/dist/types/utilities/contours/index.d.ts +7 -0
- package/dist/types/utilities/contours/index.d.ts.map +1 -0
- package/dist/types/utilities/contours/mergePoints.d.ts +9 -0
- package/dist/types/utilities/contours/mergePoints.d.ts.map +1 -0
- package/dist/types/utilities/index.d.ts +4 -2
- package/dist/types/utilities/index.d.ts.map +1 -1
- package/dist/types/utilities/segmentation/contourAndFindLargestBidirectional.d.ts +2 -0
- package/dist/types/utilities/segmentation/contourAndFindLargestBidirectional.d.ts.map +1 -0
- package/dist/types/utilities/segmentation/createBidirectionalToolData.d.ts +15 -0
- package/dist/types/utilities/segmentation/createBidirectionalToolData.d.ts.map +1 -0
- package/dist/types/utilities/segmentation/createImageIdReferenceMap.d.ts +3 -0
- package/dist/types/utilities/segmentation/createImageIdReferenceMap.d.ts.map +1 -0
- package/dist/types/utilities/segmentation/findLargestBidirectional.d.ts +2 -0
- package/dist/types/utilities/segmentation/findLargestBidirectional.d.ts.map +1 -0
- package/dist/types/utilities/segmentation/index.d.ts +5 -1
- package/dist/types/utilities/segmentation/index.d.ts.map +1 -1
- package/dist/types/utilities/segmentation/isLineInSegment.d.ts +10 -0
- package/dist/types/utilities/segmentation/isLineInSegment.d.ts.map +1 -0
- package/dist/types/utilities/segmentation/segmentContourAction.d.ts +18 -0
- package/dist/types/utilities/segmentation/segmentContourAction.d.ts.map +1 -0
- package/dist/types/utilities/segmentation/triggerSegmentationRender.d.ts.map +1 -1
- package/dist/types/utilities/stackPrefetch/stackPrefetchUtils.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/eventDispatchers/keyboardEventHandlers/keyDown.ts +7 -1
- package/src/eventListeners/segmentation/imageChangeEventListener.ts +42 -6
- package/src/stateManagement/annotation/annotationState.ts +3 -0
- package/src/stateManagement/segmentation/convertStackToVolumeSegmentation.ts +98 -0
- package/src/stateManagement/segmentation/convertVolumeToStackSegmentation.ts +153 -0
- package/src/stateManagement/segmentation/index.ts +4 -0
- package/src/stateManagement/segmentation/segmentationState.ts +17 -0
- package/src/store/ToolGroupManager/ToolGroup.ts +4 -0
- package/src/tools/annotation/AngleTool.ts +1 -2
- package/src/tools/annotation/BidirectionalTool.ts +10 -6
- package/src/tools/annotation/CircleROITool.ts +1 -1
- package/src/tools/annotation/EllipticalROITool.ts +1 -1
- package/src/tools/annotation/LengthTool.ts +1 -1
- package/src/tools/annotation/PlanarFreehandROITool.ts +1 -2
- package/src/tools/annotation/ProbeTool.ts +1 -1
- package/src/tools/annotation/RectangleROITool.ts +1 -1
- package/src/tools/displayTools/Labelmap/labelmapDisplay.ts +16 -2
- package/src/tools/segmentation/BrushTool.ts +11 -7
- package/src/tools/segmentation/strategies/fillCircle.ts +4 -7
- package/src/tools/segmentation/strategies/utils/isWithinThreshold.ts +1 -1
- package/src/types/LabelmapTypes.ts +2 -5
- package/src/types/index.ts +2 -0
- package/src/utilities/contours/AnnotationToPointData.ts +61 -0
- package/src/utilities/contours/RectangleROIStartEndThreshold.ts +60 -0
- package/src/utilities/contours/contourFinder.ts +78 -0
- package/src/utilities/contours/detectContourHoles.ts +147 -0
- package/src/utilities/contours/generateContourSetsFromLabelmap.ts +160 -0
- package/src/utilities/contours/index.ts +14 -0
- package/src/utilities/contours/mergePoints.ts +108 -0
- package/src/utilities/index.ts +6 -1
- package/src/utilities/segmentation/contourAndFindLargestBidirectional.ts +46 -0
- package/src/utilities/segmentation/createBidirectionalToolData.ts +68 -0
- package/src/utilities/segmentation/createImageIdReferenceMap.ts +23 -0
- package/src/utilities/segmentation/findLargestBidirectional.ts +159 -0
- package/src/utilities/segmentation/index.ts +8 -0
- package/src/utilities/segmentation/isLineInSegment.ts +84 -0
- package/src/utilities/segmentation/segmentContourAction.ts +169 -0
- package/src/utilities/segmentation/thresholdSegmentationByRange.ts +2 -2
- package/src/utilities/segmentation/triggerSegmentationRender.ts +15 -10
- package/src/utilities/stackPrefetch/stackContextPrefetch.ts +1 -1
- package/src/utilities/stackPrefetch/stackPrefetchUtils.ts +5 -1
- package/dist/cjs/utilities/roundNumber.d.ts +0 -2
- package/dist/cjs/utilities/roundNumber.js +0 -30
- package/dist/cjs/utilities/roundNumber.js.map +0 -1
- package/dist/esm/utilities/roundNumber.js +0 -28
- package/dist/esm/utilities/roundNumber.js.map +0 -1
- package/dist/types/utilities/roundNumber.d.ts +0 -3
- package/dist/types/utilities/roundNumber.d.ts.map +0 -1
- package/src/utilities/roundNumber.ts +0 -44
|
@@ -0,0 +1,122 @@
|
|
|
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
|
+
exports.defaultGetSegment = void 0;
|
|
30
|
+
const core_1 = require("@cornerstonejs/core");
|
|
31
|
+
const segmentation = __importStar(require("../../stateManagement/segmentation"));
|
|
32
|
+
const annotation_1 = require("../../stateManagement/annotation");
|
|
33
|
+
const viewport_1 = require("../viewport");
|
|
34
|
+
const contourAndFindLargestBidirectional_1 = __importDefault(require("./contourAndFindLargestBidirectional"));
|
|
35
|
+
const createBidirectionalToolData_1 = __importDefault(require("./createBidirectionalToolData"));
|
|
36
|
+
const BidirectionalTool_1 = __importDefault(require("../../tools/annotation/BidirectionalTool"));
|
|
37
|
+
function segmentContourAction(element, configuration) {
|
|
38
|
+
const { data: configurationData } = configuration;
|
|
39
|
+
const enabledElement = (0, core_1.getEnabledElement)(element);
|
|
40
|
+
const segment = (configurationData.getSegment || defaultGetSegment)(enabledElement, configurationData);
|
|
41
|
+
if (!segment) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const FrameOfReferenceUID = enabledElement.viewport.getFrameOfReferenceUID();
|
|
45
|
+
const segmentationsList = segmentation.state.getSegmentations();
|
|
46
|
+
const { segmentIndex, segmentationId } = segment;
|
|
47
|
+
const bidirectionals = annotation_1.state.getAnnotations(this.toolName || BidirectionalTool_1.default.toolName, FrameOfReferenceUID);
|
|
48
|
+
let hasExistingActiveSegment = false;
|
|
49
|
+
const existingLargestBidirectionals = bidirectionals.filter((existingBidirectionalItem) => {
|
|
50
|
+
const { segment } = existingBidirectionalItem.data;
|
|
51
|
+
if (!segment) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
if (segment.segmentationId === segmentationId &&
|
|
55
|
+
segment.segmentIndex === segmentIndex) {
|
|
56
|
+
hasExistingActiveSegment = true;
|
|
57
|
+
existingBidirectionalItem.data.segment = segment;
|
|
58
|
+
}
|
|
59
|
+
return !!segment;
|
|
60
|
+
});
|
|
61
|
+
if (!hasExistingActiveSegment) {
|
|
62
|
+
existingLargestBidirectionals.push({
|
|
63
|
+
data: { segment },
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
let newBidirectional;
|
|
67
|
+
existingLargestBidirectionals.forEach((existingLargestBidirectional) => {
|
|
68
|
+
const segments = [];
|
|
69
|
+
const { segment: updateSegment } = existingLargestBidirectional.data;
|
|
70
|
+
const { segmentIndex, segmentationId } = updateSegment;
|
|
71
|
+
segments[segmentIndex] = updateSegment;
|
|
72
|
+
annotation_1.state.removeAnnotation(existingLargestBidirectional.annotationUID);
|
|
73
|
+
const bidirectionalData = (0, contourAndFindLargestBidirectional_1.default)(Object.assign(Object.assign({}, segmentationsList.find((segmentation) => segmentation.segmentationId === segmentationId)), { segments }));
|
|
74
|
+
if (!bidirectionalData) {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
const bidirectionalToolData = (0, createBidirectionalToolData_1.default)(bidirectionalData, enabledElement.viewport);
|
|
78
|
+
bidirectionalToolData.annotationUID =
|
|
79
|
+
existingLargestBidirectional.annotationUID;
|
|
80
|
+
bidirectionalToolData.data.segment = updateSegment;
|
|
81
|
+
const annotationUID = annotation_1.state.addAnnotation(bidirectionalToolData, FrameOfReferenceUID);
|
|
82
|
+
if (updateSegment.segmentIndex === segment.segmentIndex &&
|
|
83
|
+
updateSegment.segmentationId === segment.segmentationId) {
|
|
84
|
+
newBidirectional = bidirectionalData;
|
|
85
|
+
const { style } = segment;
|
|
86
|
+
if (style) {
|
|
87
|
+
annotation_1.config.style.setAnnotationStyles(annotationUID, style);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
if (newBidirectional) {
|
|
92
|
+
const { referencedImageId } = newBidirectional;
|
|
93
|
+
const imageIds = enabledElement.viewport.getImageIds();
|
|
94
|
+
const imageIndex = imageIds.findIndex((imageId) => imageId === referencedImageId);
|
|
95
|
+
(0, viewport_1.jumpToSlice)(element, {
|
|
96
|
+
imageIndex: imageIds.length - 1 - imageIndex,
|
|
97
|
+
});
|
|
98
|
+
enabledElement.viewport.render();
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
console.warn('No bidirectional found');
|
|
102
|
+
}
|
|
103
|
+
return newBidirectional;
|
|
104
|
+
}
|
|
105
|
+
exports.default = segmentContourAction;
|
|
106
|
+
function defaultGetSegment(enabledElement, configuration) {
|
|
107
|
+
var _a, _b;
|
|
108
|
+
const segmentationsList = segmentation.state.getSegmentations();
|
|
109
|
+
if (!segmentationsList.length) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
const segmentationId = configuration.segmentationId || segmentationsList[0].segmentationId;
|
|
113
|
+
const segmentIndex = (_a = configuration.segmentIndex) !== null && _a !== void 0 ? _a : segmentation.segmentIndex.getActiveSegmentIndex(segmentationId);
|
|
114
|
+
if (!segmentIndex) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
const segmentData = (_b = configuration.segmentData) === null || _b === void 0 ? void 0 : _b.get(segmentIndex);
|
|
118
|
+
return Object.assign({ label: `Segment ${segmentIndex}`, segmentIndex,
|
|
119
|
+
segmentationId }, segmentData);
|
|
120
|
+
}
|
|
121
|
+
exports.defaultGetSegment = defaultGetSegment;
|
|
122
|
+
//# sourceMappingURL=segmentContourAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"segmentContourAction.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/segmentContourAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thresholdSegmentationByRange.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/thresholdSegmentationByRange.ts"],"names":[],"mappings":";;AACA,+CAAuD;AACvD,4GAA+G;AAC/G,2CAIqB;AAarB,SAAS,4BAA4B,CACnC,kBAAsC,EACtC,iBAAyB,EACzB,0BAAkD,EAClD,WAAmB;IAEnB,MAAM,UAAU,GAAG,kBAAkB,CAAC,aAAa,EAAE,CAAC;IAGtD,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,IAAA,0BAAc,EACtD,kBAAkB,EAClB,0BAA0B,CAC3B,CAAC;IAWF,cAAc,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QACpC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC;QAElC,IAAI,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE;YACpC,qBAAqB,CAAC,UAAU,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;SAClE;aAAM;YACL,0BAA0B,CACxB,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,CACZ,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,IAAA,2DAA+B,EAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAE7D,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,SAAS,0BAA0B,CACjC,
|
|
1
|
+
{"version":3,"file":"thresholdSegmentationByRange.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/thresholdSegmentationByRange.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,15 +60,19 @@ class SegmentationRenderingEngine {
|
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
62
62
|
const { viewportsInfo } = toolGroup;
|
|
63
|
-
const viewports =
|
|
64
|
-
|
|
63
|
+
const viewports = viewportsInfo
|
|
64
|
+
.map(({ viewportId, renderingEngineId }) => {
|
|
65
65
|
const renderingEngine = (0, core_1.getRenderingEngine)(renderingEngineId);
|
|
66
66
|
if (!renderingEngine) {
|
|
67
67
|
console.warn('rendering Engine has been destroyed');
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
const viewport = renderingEngine.getViewport(viewportId);
|
|
71
|
+
if (viewport) {
|
|
72
|
+
return viewport;
|
|
73
|
+
}
|
|
74
|
+
})
|
|
75
|
+
.filter(Boolean);
|
|
72
76
|
const segmentationDisplayToolInstance = toolGroup.getToolInstance(SegmentationDisplayTool_1.default.toolName);
|
|
73
77
|
if (!segmentationDisplayToolInstance) {
|
|
74
78
|
console.warn('No segmentation tool found inside', toolGroupId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"triggerSegmentationRender.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/triggerSegmentationRender.ts"],"names":[],"mappings":";;;;;;AAAA,8CAM6B;AAC7B,uCAAsD;AACtD,mEAGsC;AAEtC,+GAAuF;AAcvF,MAAM,2BAA2B;IAAjC;QACU,iBAAY,GAAgB,IAAI,GAAG,EAAE,CAAC;QACtC,uBAAkB,GAAG,KAAK,CAAC;QAC3B,0BAAqB,GAAkB,IAAI,CAAC;QAuD5C,6BAAwB,GAAG,GAAG,EAAE;YACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAGzB,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;YAE5D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;gBACtC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBAGjC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAItC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE;oBAChC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAChC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;oBAClC,OAAO;iBACR;aACF;QACH,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"triggerSegmentationRender.js","sourceRoot":"","sources":["../../../../src/utilities/segmentation/triggerSegmentationRender.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
const core_1 = require("@cornerstonejs/core");
|
|
7
4
|
const state_1 = require("./state");
|
|
8
5
|
const stackPrefetchUtils_1 = require("./stackPrefetchUtils");
|
|
9
|
-
const
|
|
6
|
+
const utilities_1 = require("../../utilities");
|
|
10
7
|
let configuration = {
|
|
11
8
|
maxImagesToPrefetch: Infinity,
|
|
12
9
|
minBefore: 2,
|
|
@@ -100,7 +97,7 @@ function prefetch(element) {
|
|
|
100
97
|
stats.fillTime = Date.now() - stats.start;
|
|
101
98
|
const { size } = stats.imageIds;
|
|
102
99
|
stats.fillSize = size;
|
|
103
|
-
console.log('Done cache fill', stats.fillTime, 'ms', size, 'items', 'average total time', (0,
|
|
100
|
+
console.log('Done cache fill', stats.fillTime, 'ms', size, 'items', 'average total time', (0, utilities_1.roundNumber)(stats.fillTime / size), 'ms', 'average load', (0, utilities_1.roundNumber)(stats.loadTimeInMS / size), 'ms', 'average decode', (0, utilities_1.roundNumber)(stats.decodeTimeInMS / size), 'ms');
|
|
104
101
|
}
|
|
105
102
|
}
|
|
106
103
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stackContextPrefetch.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackContextPrefetch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stackContextPrefetch.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackContextPrefetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,8 @@ function getStackData(element) {
|
|
|
40
40
|
}
|
|
41
41
|
const { viewport } = enabledElement;
|
|
42
42
|
if (!(viewport instanceof core_1.StackViewport)) {
|
|
43
|
-
|
|
43
|
+
console.warn('stackPrefetch: element must be a StackViewport, VolumeViewport stackPrefetch not yet implemented');
|
|
44
|
+
return null;
|
|
44
45
|
}
|
|
45
46
|
return {
|
|
46
47
|
currentImageIdIndex: viewport.getCurrentImageIdIndex(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stackPrefetchUtils.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetchUtils.ts"],"names":[],"mappings":";;;AAAA,8CAA8E;AAC9E,mCAAuC;AAE1B,QAAA,WAAW,GAAG,YAAK,CAAC,WAAW,CAAC,QAAQ,CAAC;AACzC,QAAA,QAAQ,GAAG,CAAC,CAAC;AAE1B,SAAgB,KAAK,CAAC,MAAM,EAAE,OAAO;IAGnC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,IAAI,CAAC,GAAG,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC;IAE7B,IAAI,CAAC,IAAI,CAAC,EAAE;QACV,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,CAAC,EAAE,EAAE;QACV,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC;KACpB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAlBD,sBAkBC;AAED,SAAgB,YAAY,CAAC,GAAG,EAAE,CAAC;IAGjC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAE1B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACrB,IAAI,CAAC,GAAG,CAAC,EAAE;YACT,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SAC1B;aAAM,IAAI,CAAC,GAAG,CAAC,EAAE;YAChB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAC5B;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AACvB,CAAC;AAfD,oCAeC;AAED,SAAgB,YAAY,CAAC,OAAO;IAClC,MAAM,cAAc,GAAG,IAAA,wBAAiB,EAAC,OAAO,CAAC,CAAC;IAElD,IAAI,CAAC,cAAc,EAAE;QAEnB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IAEpC,IAAI,CAAC,CAAC,QAAQ,YAAY,oBAAa,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"stackPrefetchUtils.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetchUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,8 @@ export default function keyDown(evt) {
|
|
|
18
18
|
if (activeToolsWithEventBinding?.size) {
|
|
19
19
|
const { element } = evt.detail;
|
|
20
20
|
for (const [key, value] of [...activeToolsWithEventBinding.entries()]) {
|
|
21
|
-
key[value.method]
|
|
21
|
+
const method = typeof value.method === 'function' ? value.method : key[value.method];
|
|
22
|
+
method.call(key, element, value);
|
|
22
23
|
}
|
|
23
24
|
}
|
|
24
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyDown.js","sourceRoot":"","sources":["../../../../src/eventDispatchers/keyboardEventHandlers/keyDown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,6BAA6B,MAAM,yCAAyC,CAAC;AACpF,OAAO,mCAAmC,MAAM,gDAAgD,CAAC;AAEjG,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAO9C,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,GAAqB;IAEnD,MAAM,UAAU,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;IAEtD,IAAI,UAAU,EAAE;QACd,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAErD,MAAM,SAAS,GAAG,gBAAgB,CAAC,uBAAuB,CACxD,UAAU,EACV,iBAAiB,CAClB,CAAC;QAEF,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACzD,SAAS,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;SAClD;KACF;IAED,MAAM,2BAA2B,GAAG,mCAAmC,CAAC,GAAG,EAAE;QAC3E,SAAS,CAAC,MAAM;KACjB,CAAC,CAAC;IAEH,IAAI,2BAA2B,EAAE,IAAI,EAAE;QACrC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,2BAA2B,CAAC,OAAO,EAAE,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"keyDown.js","sourceRoot":"","sources":["../../../../src/eventDispatchers/keyboardEventHandlers/keyDown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,6BAA6B,MAAM,yCAAyC,CAAC;AACpF,OAAO,mCAAmC,MAAM,gDAAgD,CAAC;AAEjG,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAO9C,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,GAAqB;IAEnD,MAAM,UAAU,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;IAEtD,IAAI,UAAU,EAAE;QACd,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAErD,MAAM,SAAS,GAAG,gBAAgB,CAAC,uBAAuB,CACxD,UAAU,EACV,iBAAiB,CAClB,CAAC;QAEF,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACzD,SAAS,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;SAClD;KACF;IAED,MAAM,2BAA2B,GAAG,mCAAmC,CAAC,GAAG,EAAE;QAC3E,SAAS,CAAC,MAAM;KACjB,CAAC,CAAC;IAEH,IAAI,2BAA2B,EAAE,IAAI,EAAE;QACrC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,2BAA2B,CAAC,OAAO,EAAE,CAAC,EAAE;YAKrE,MAAM,MAAM,GACV,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACxE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;SAClC;KACF;AACH,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import vtkDataArray from '@kitware/vtk.js/Common/Core/DataArray';
|
|
2
|
+
import vtkImageData from '@kitware/vtk.js/Common/DataModel/ImageData';
|
|
1
3
|
import { StackViewport, getEnabledElement, Enums, getEnabledElementByIds, cache, utilities, } from '@cornerstonejs/core';
|
|
2
4
|
import { getToolGroupForViewport } from '../../store/ToolGroupManager';
|
|
3
5
|
import Representations from '../../enums/SegmentationRepresentations';
|
|
4
6
|
import * as SegmentationState from '../../stateManagement/segmentation/segmentationState';
|
|
5
7
|
import { isVolumeSegmentation } from '../../tools/segmentation/strategies/utils/stackVolumeCheck';
|
|
6
|
-
import vtkDataArray from '@kitware/vtk.js/Common/Core/DataArray';
|
|
7
|
-
import vtkImageData from '@kitware/vtk.js/Common/DataModel/ImageData';
|
|
8
8
|
import triggerSegmentationRender from '../../utilities/segmentation/triggerSegmentationRender';
|
|
9
9
|
const enable = function (element) {
|
|
10
10
|
const { viewport } = getEnabledElement(element);
|
|
@@ -55,6 +55,16 @@ function _imageChangeEventListener(evt) {
|
|
|
55
55
|
const representationList = Object.keys(segmentationRepresentations);
|
|
56
56
|
const currentImageId = viewport.getCurrentImageId();
|
|
57
57
|
const actors = viewport.getActors();
|
|
58
|
+
const segmentationFound = actors.find((actor) => {
|
|
59
|
+
if (!representationList.includes(actor.uid)) {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
return true;
|
|
63
|
+
});
|
|
64
|
+
if (!segmentationFound) {
|
|
65
|
+
triggerSegmentationRender(toolGroup.id);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
58
68
|
actors.forEach((actor) => {
|
|
59
69
|
if (!representationList.includes(actor.uid)) {
|
|
60
70
|
return;
|
|
@@ -75,8 +85,11 @@ function _imageChangeEventListener(evt) {
|
|
|
75
85
|
return;
|
|
76
86
|
}
|
|
77
87
|
const derivedImage = cache.getImage(derivedImageId);
|
|
78
|
-
const {
|
|
79
|
-
|
|
88
|
+
const { dimensions, spacing, direction } = viewport.getImageDataMetadata(derivedImage);
|
|
89
|
+
const currentImage = cache.getImage(currentImageId);
|
|
90
|
+
const { origin: currentOrigin } = viewport.getImageDataMetadata(currentImage);
|
|
91
|
+
const originToUse = currentOrigin;
|
|
92
|
+
segmentationImageData.setOrigin(originToUse);
|
|
80
93
|
segmentationImageData.modified();
|
|
81
94
|
if (segmentationImageData.getDimensions()[0] !== dimensions[0] ||
|
|
82
95
|
segmentationImageData.getDimensions()[1] !== dimensions[1]) {
|
|
@@ -95,7 +108,7 @@ function _imageChangeEventListener(evt) {
|
|
|
95
108
|
imageData.setDimensions(dimensions[0], dimensions[1], 1);
|
|
96
109
|
imageData.setSpacing(spacing);
|
|
97
110
|
imageData.setDirection(direction);
|
|
98
|
-
imageData.setOrigin(
|
|
111
|
+
imageData.setOrigin(originToUse);
|
|
99
112
|
imageData.getPointData().setScalars(scalarArray);
|
|
100
113
|
imageActor.getMapper().setInputData(imageData);
|
|
101
114
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imageChangeEventListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/imageChangeEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,KAAK,EACL,sBAAsB,EACtB,KAAK,EACL,SAAS,
|
|
1
|
+
{"version":3,"file":"imageChangeEventListener.js","sourceRoot":"","sources":["../../../../src/eventListeners/segmentation/imageChangeEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,uCAAuC,CAAC;AACjE,OAAO,YAAY,MAAM,4CAA4C,CAAC;AACtE,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,KAAK,EACL,sBAAsB,EACtB,KAAK,EACL,SAAS,GAEV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,eAAe,MAAM,yCAAyC,CAAC;AACtE,OAAO,KAAK,iBAAiB,MAAM,sDAAsD,CAAC;AAE1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAC;AAClG,OAAO,yBAAyB,MAAM,wDAAwD,CAAC;AAE/F,MAAM,MAAM,GAAG,UAAU,OAAuB;IAC9C,MAAM,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,CAAC,CAAC,QAAQ,YAAY,aAAa,CAAC,EAAE;QACxC,OAAO;KACR;IAED,OAAO,CAAC,gBAAgB,CACtB,KAAK,CAAC,MAAM,CAAC,eAAe,EAC5B,yBAA0C,CAC3C,CAAC;IAEF,OAAO,CAAC,gBAAgB,CACtB,KAAK,CAAC,MAAM,CAAC,cAAc,EAC3B,yBAA0C,CAC3C,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,UAAU,OAAuB;IAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEhD,IAAI,CAAC,CAAC,QAAQ,YAAY,aAAa,CAAC,EAAE;QACxC,OAAO;KACR;IAED,OAAO,CAAC,mBAAmB,CACzB,KAAK,CAAC,MAAM,CAAC,eAAe,EAC5B,yBAA0C,CAC3C,CAAC;IACF,OAAO,CAAC,mBAAmB,CACzB,KAAK,CAAC,MAAM,CAAC,cAAc,EAC3B,yBAA0C,CAC3C,CAAC;AACJ,CAAC,CAAC;AAYF,SAAS,yBAAyB,CAAC,GAAG;IACpC,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IAC7B,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IACpD,MAAM,EAAE,QAAQ,EAAE,GAAG,sBAAsB,CACzC,UAAU,EACV,iBAAiB,CACoB,CAAC;IAExC,MAAM,SAAS,GAAG,uBAAuB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IAEzE,IAAI,CAAC,SAAS,EAAE;QACd,OAAO;KACR;IAED,IAAI,oCAAoC,GACtC,iBAAiB,CAAC,8BAA8B,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IAEvE,oCAAoC;QAClC,oCAAoC,CAAC,MAAM,CACzC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ,CACrE,CAAC;IAEJ,IAAI,CAAC,oCAAoC,EAAE,MAAM,EAAE;QACjD,OAAO;KACR;IAED,MAAM,2BAA2B,GAAG,EAAE,CAAC;IACvC,oCAAoC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;QAC9D,MAAM,YAAY,GAAG,iBAAiB,CAAC,eAAe,CACpD,cAAc,CAAC,cAAc,CAC9B,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;SACR;QAED,MAAM,YAAY,GAChB,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAE5D,IAAI,oBAAoB,CAAC,YAAY,CAAC,EAAE;YACtC,OAAO;SACR;QAED,MAAM,EAAE,mBAAmB,EAAE,GAC3B,YAA6C,CAAC;QAEhD,2BAA2B,CAAC,cAAc,CAAC,6BAA6B,CAAC;YACvE;gBACE,mBAAmB;aACpB,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACpE,MAAM,cAAc,GAAG,QAAQ,CAAC,iBAAiB,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IAEpC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9C,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAC3C,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iBAAiB,EAAE;QAKtB,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAIxC,OAAO;KACR;IAED,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAC3C,OAAO;SACR;QACD,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC;QAEtC,MAAM,EAAE,mBAAmB,EAAE,GAAG,2BAA2B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAE/D,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,CAAC;QAE3E,IAAI,CAAC,cAAc,EAAE;YAInB,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;gBAC3C,IAAI,EAAE,QAAQ;gBACd,kBAAkB,EAAE,CAAC;gBACrB,MAAM,EAAE,IAAI,UAAU,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,CAAC;aAClE,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;YAC7C,SAAS,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACjD,iBAAiB,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACtD,OAAO;SACR;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAEpD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,GACtC,QAAQ,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAE9C,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QACpD,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAC7B,QAAQ,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAa9C,MAAM,WAAW,GAAG,aAAa,CAAC;QAElC,qBAAqB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC7C,qBAAqB,CAAC,QAAQ,EAAE,CAAC;QAEjC,IACE,qBAAqB,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC;YAC1D,qBAAqB,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAC1D;YAKA,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACnC,QAAQ,CAAC,SAAS,CAChB;gBACE;oBACE,OAAO,EAAE,cAAc;oBACvB,QAAQ,EAAE,KAAK,CAAC,GAAG;oBACnB,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;wBAC3B,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;4BAC3C,IAAI,EAAE,QAAQ;4BACd,kBAAkB,EAAE,CAAC;4BACrB,MAAM,EAAE,CAAC,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;yBACzC,CAAC,CAAC;wBAEH,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;wBAE7C,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACzD,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;wBAC9B,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;wBAClC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBACjC,SAAS,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;wBAEjD,UAAU,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;oBACjD,CAAC;iBACF;aACF,EACD,IAAI,EACJ,KAAK,CACN,CAAC;YAEF,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACxC,OAAO;SACR;QAED,SAAS,CAAC,sCAAsC,CAC9C,qBAAqB,EACrB,YAAY,CACb,CAAC;QACF,QAAQ,CAAC,MAAM,EAAE,CAAC;QAKlB,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE;YAE5C,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAClC,KAAK,CAAC,MAAM,CAAC,cAAc,EAC3B,yBAA0C,CAC3C,CAAC;SACH;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,eAAe;IACb,MAAM;IACN,OAAO;CACR,CAAC"}
|
|
@@ -38,6 +38,9 @@ function getNumberOfAnnotations(toolName, annotationGroupSelector) {
|
|
|
38
38
|
return manager.getNumberOfAnnotations(groupKey, toolName);
|
|
39
39
|
}
|
|
40
40
|
function removeAnnotation(annotationUID) {
|
|
41
|
+
if (!annotationUID) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
41
44
|
const manager = getAnnotationManager();
|
|
42
45
|
const annotation = manager.getAnnotation(annotationUID);
|
|
43
46
|
if (!annotation) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotationState.js","sourceRoot":"","sources":["../../../../src/stateManagement/annotation/annotationState.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"annotationState.js","sourceRoot":"","sources":["../../../../src/stateManagement/annotation/annotationState.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,SAAS,IAAI,OAAO,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gDAAgD,EAAE,MAAM,6CAA6C,CAAC;AAI/G,OAAO,EACL,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC;AAGzB,IAAI,cAAc,GAAG,gDAAgD,CAAC;AAMtE,SAAS,oBAAoB;IAC3B,OAAO,cAAc,CAAC;AACxB,CAAC;AAMD,SAAS,oBAAoB,CAAC,iBAAiB;IAC7C,cAAc,GAAG,iBAAiB,CAAC;AACrC,CAAC;AAGD,SAAS,sBAAsB;IAC7B,cAAc,GAAG,gDAAgD,CAAC;AACpE,CAAC;AAeD,SAAS,cAAc,CACrB,QAAgB,EAChB,uBAAgD;IAEhD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAC9D,OAAO,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAgB,CAAC;AACnE,CAAC;AAcD,SAAS,aAAa,CACpB,UAAsB,EACtB,uBAAgD;IAEhD,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;QAC7B,UAAU,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,EAAY,CAAC;KACvD;IAED,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAE9D,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAI5C,IAAI,uBAAuB,YAAY,cAAc,EAAE;QACrD,gCAAgC,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;KACvE;SAAM;QAIL,4BAA4B,CAAC,UAAU,CAAC,CAAC;KAC1C;IAED,OAAO,UAAU,CAAC,aAAa,CAAC;AAClC,CAAC;AAeD,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,uBAAgD;IAEhD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAE9D,OAAO,OAAO,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC5D,CAAC;AAMD,SAAS,gBAAgB,CAAC,aAAqB;IAC7C,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO;KACR;IACD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAGxD,IAAI,CAAC,UAAU,EAAE;QACf,OAAO;KACR;IAED,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAGxC,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;IAE5C,MAAM,WAAW,GAAiC;QAChD,UAAU;QACV,oBAAoB,EAAE,OAAO,CAAC,GAAG;KAClC,CAAC;IAEF,YAAY,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC;AAMD,SAAS,aAAa,CAAC,aAAqB;IAC1C,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAExD,OAAO,UAAU,CAAC;AACpB,CAAC;AAKD,SAAS,oBAAoB;IAC3B,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,OAAO,CAAC,oBAAoB,EAAE,CAAC;AACjC,CAAC;AAED,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EAEpB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,GACvB,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { volumeLoader, utilities as csUtils, eventTarget, } from '@cornerstonejs/core';
|
|
2
|
+
import { Events, SegmentationRepresentations } from '../../enums';
|
|
3
|
+
import addSegmentations from './addSegmentations';
|
|
4
|
+
import addSegmentationRepresentations from './addSegmentationRepresentations';
|
|
5
|
+
import { triggerSegmentationRender } from '../../utilities/segmentation';
|
|
6
|
+
import { getSegmentation, removeSegmentation } from './segmentationState';
|
|
7
|
+
import { triggerSegmentationDataModified } from './triggerSegmentationEvents';
|
|
8
|
+
async function convertStackToVolumeSegmentation({ segmentationId, options, }) {
|
|
9
|
+
const segmentation = getSegmentation(segmentationId);
|
|
10
|
+
const { toolGroupId } = options;
|
|
11
|
+
const data = segmentation.representationData
|
|
12
|
+
.LABELMAP;
|
|
13
|
+
const imageIdReferenceMap = data.imageIdReferenceMap;
|
|
14
|
+
const segmentationImageIds = Array.from(imageIdReferenceMap.values());
|
|
15
|
+
const additionalDetails = {
|
|
16
|
+
imageIdReferenceMap,
|
|
17
|
+
};
|
|
18
|
+
const volumeId = options?.volumeId;
|
|
19
|
+
await volumeLoader.createAndCacheVolumeFromImages(volumeId, segmentationImageIds, {
|
|
20
|
+
additionalDetails,
|
|
21
|
+
});
|
|
22
|
+
const newSegmentationId = options?.newSegmentationId ?? csUtils.uuidv4();
|
|
23
|
+
if (options?.removeOriginal ?? true) {
|
|
24
|
+
removeSegmentation(segmentationId);
|
|
25
|
+
}
|
|
26
|
+
await addSegmentations([
|
|
27
|
+
{
|
|
28
|
+
segmentationId: newSegmentationId,
|
|
29
|
+
representation: {
|
|
30
|
+
type: SegmentationRepresentations.Labelmap,
|
|
31
|
+
data: {
|
|
32
|
+
volumeId,
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
]);
|
|
37
|
+
await addSegmentationRepresentations(toolGroupId, [
|
|
38
|
+
{
|
|
39
|
+
segmentationId: newSegmentationId,
|
|
40
|
+
type: SegmentationRepresentations.Labelmap,
|
|
41
|
+
},
|
|
42
|
+
]);
|
|
43
|
+
triggerSegmentationRender(toolGroupId);
|
|
44
|
+
eventTarget.addEventListenerOnce(Events.SEGMENTATION_RENDERED, () => triggerSegmentationDataModified(newSegmentationId));
|
|
45
|
+
}
|
|
46
|
+
export { convertStackToVolumeSegmentation };
|
|
47
|
+
//# sourceMappingURL=convertStackToVolumeSegmentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertStackToVolumeSegmentation.js","sourceRoot":"","sources":["../../../../src/stateManagement/segmentation/convertStackToVolumeSegmentation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,SAAS,IAAI,OAAO,EACpB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAe9E,KAAK,UAAU,gCAAgC,CAAC,EAC9C,cAAc,EACd,OAAO,GASR;IACC,MAAM,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,IAAI,GAAG,YAAY,CAAC,kBAAkB;SACzC,QAAyC,CAAC;IAE7C,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAGrD,MAAM,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtE,MAAM,iBAAiB,GAAG;QACxB,mBAAmB;KACpB,CAAC;IAIF,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,CAAC;IAEnC,MAAM,YAAY,CAAC,8BAA8B,CAC/C,QAAQ,EACR,oBAAoB,EACpB;QACE,iBAAiB;KAClB,CACF,CAAC;IAEF,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAEzE,IAAI,OAAO,EAAE,cAAc,IAAI,IAAI,EAAE;QACnC,kBAAkB,CAAC,cAAc,CAAC,CAAC;KACpC;IAED,MAAM,gBAAgB,CAAC;QACrB;YACE,cAAc,EAAE,iBAAiB;YACjC,cAAc,EAAE;gBACd,IAAI,EAAE,2BAA2B,CAAC,QAAQ;gBAC1C,IAAI,EAAE;oBACJ,QAAQ;iBACT;aACF;SACF;KACF,CAAC,CAAC;IAEH,MAAM,8BAA8B,CAAC,WAAW,EAAE;QAChD;YACE,cAAc,EAAE,iBAAiB;YACjC,IAAI,EAAE,2BAA2B,CAAC,QAAQ;SAC3C;KACF,CAAC,CAAC;IAEH,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAGvC,WAAW,CAAC,oBAAoB,CAAC,MAAM,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAClE,+BAA+B,CAAC,iBAAiB,CAAC,CACnD,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,gCAAgC,EAAE,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { cache, utilities as csUtils, eventTarget, } from '@cornerstonejs/core';
|
|
2
|
+
import { Events, SegmentationRepresentations } from '../../enums';
|
|
3
|
+
import addSegmentations from './addSegmentations';
|
|
4
|
+
import addSegmentationRepresentations from './addSegmentationRepresentations';
|
|
5
|
+
import { triggerSegmentationRender, createImageIdReferenceMap, } from '../../utilities/segmentation';
|
|
6
|
+
import { getSegmentation, removeSegmentation } from './segmentationState';
|
|
7
|
+
import { triggerSegmentationDataModified } from './triggerSegmentationEvents';
|
|
8
|
+
export async function convertVolumeToStackSegmentation({ segmentationId, options, }) {
|
|
9
|
+
const segmentation = getSegmentation(segmentationId);
|
|
10
|
+
const { toolGroupId } = options;
|
|
11
|
+
const data = segmentation.representationData
|
|
12
|
+
.LABELMAP;
|
|
13
|
+
const segmentationVolume = cache.getVolume(data.volumeId);
|
|
14
|
+
const imageIdReferenceMap = _getImageIdReferenceMapForStackSegmentation(segmentationVolume);
|
|
15
|
+
const newSegmentationId = options?.newSegmentationId ?? csUtils.uuidv4();
|
|
16
|
+
if (options?.removeOriginal ?? true) {
|
|
17
|
+
removeSegmentation(segmentationId);
|
|
18
|
+
}
|
|
19
|
+
await addSegmentations([
|
|
20
|
+
{
|
|
21
|
+
segmentationId: newSegmentationId,
|
|
22
|
+
representation: {
|
|
23
|
+
type: SegmentationRepresentations.Labelmap,
|
|
24
|
+
data: {
|
|
25
|
+
imageIdReferenceMap,
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
|
+
await addSegmentationRepresentations(toolGroupId, [
|
|
31
|
+
{
|
|
32
|
+
segmentationId: newSegmentationId,
|
|
33
|
+
type: SegmentationRepresentations.Labelmap,
|
|
34
|
+
},
|
|
35
|
+
]);
|
|
36
|
+
triggerSegmentationRender(toolGroupId);
|
|
37
|
+
eventTarget.addEventListenerOnce(Events.SEGMENTATION_RENDERED, () => triggerSegmentationDataModified(newSegmentationId));
|
|
38
|
+
}
|
|
39
|
+
function _getImageIdReferenceMapForStackSegmentation(segmentationVolume) {
|
|
40
|
+
const segmentationImageIds = segmentationVolume.imageIds;
|
|
41
|
+
if (segmentationVolume.additionalDetails?.imageIdReferenceMap) {
|
|
42
|
+
return segmentationVolume.additionalDetails.imageIdReferenceMap;
|
|
43
|
+
}
|
|
44
|
+
else if (segmentationVolume.referencedImageIds?.length &&
|
|
45
|
+
!segmentationVolume.referencedImageIds[0].startsWith('derived')) {
|
|
46
|
+
const referencedImageIds = segmentationVolume.referencedImageIds;
|
|
47
|
+
return createImageIdReferenceMap(referencedImageIds, segmentationImageIds);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
const referencedVolumeId = segmentationVolume.referencedVolumeId;
|
|
51
|
+
const referencedVolume = cache.getVolume(referencedVolumeId);
|
|
52
|
+
if (!referencedVolume) {
|
|
53
|
+
throw new Error('Cannot convert volumetric segmentation without referenced volume to stack segmentation yet');
|
|
54
|
+
}
|
|
55
|
+
if (!referencedVolume?.imageIds?.length) {
|
|
56
|
+
throw new Error('Cannot convert volumetric segmentation without imageIds to stack segmentation yet');
|
|
57
|
+
}
|
|
58
|
+
if (referencedVolume.imageIds?.[0].startsWith('derived')) {
|
|
59
|
+
throw new Error(`Cannot convert volume segmentation that is derived from another segmentation
|
|
60
|
+
to stack segmentation yet, include the additionalDetails.imageIdReferenceMap
|
|
61
|
+
in the volume segmentation in case you need it for the conversion`);
|
|
62
|
+
}
|
|
63
|
+
const referencedImageIds = referencedVolume.imageIds;
|
|
64
|
+
let segmentationImageIdsToUse = segmentationVolume.imageIds;
|
|
65
|
+
if (!segmentationImageIdsToUse?.length) {
|
|
66
|
+
segmentationImageIdsToUse =
|
|
67
|
+
segmentationVolume.convertToImageSlicesAndCache();
|
|
68
|
+
}
|
|
69
|
+
return createImageIdReferenceMap(referencedImageIds, segmentationImageIdsToUse);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=convertVolumeToStackSegmentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertVolumeToStackSegmentation.js","sourceRoot":"","sources":["../../../../src/stateManagement/segmentation/convertVolumeToStackSegmentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EACL,SAAS,IAAI,OAAO,EACpB,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAc9E,MAAM,CAAC,KAAK,UAAU,gCAAgC,CAAC,EACrD,cAAc,EACd,OAAO,GAQR;IACC,MAAM,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IAErD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,IAAI,GAAG,YAAY,CAAC,kBAAkB;SACzC,QAA0C,CAAC;IAE9C,MAAM,kBAAkB,GAAG,KAAK,CAAC,SAAS,CACxC,IAAI,CAAC,QAAQ,CACQ,CAAC;IAExB,MAAM,mBAAmB,GACvB,2CAA2C,CAAC,kBAAkB,CAAC,CAAC;IAElE,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAEzE,IAAI,OAAO,EAAE,cAAc,IAAI,IAAI,EAAE;QACnC,kBAAkB,CAAC,cAAc,CAAC,CAAC;KACpC;IAED,MAAM,gBAAgB,CAAC;QACrB;YACE,cAAc,EAAE,iBAAiB;YACjC,cAAc,EAAE;gBACd,IAAI,EAAE,2BAA2B,CAAC,QAAQ;gBAC1C,IAAI,EAAE;oBACJ,mBAAmB;iBACpB;aACF;SACF;KACF,CAAC,CAAC;IAEH,MAAM,8BAA8B,CAAC,WAAW,EAAE;QAChD;YACE,cAAc,EAAE,iBAAiB;YACjC,IAAI,EAAE,2BAA2B,CAAC,QAAQ;SAC3C;KACF,CAAC,CAAC;IAEH,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAGvC,WAAW,CAAC,oBAAoB,CAAC,MAAM,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAClE,+BAA+B,CAAC,iBAAiB,CAAC,CACnD,CAAC;AACJ,CAAC;AAED,SAAS,2CAA2C,CAClD,kBAAsC;IAMtC,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,QAAQ,CAAC;IAEzD,IAAI,kBAAkB,CAAC,iBAAiB,EAAE,mBAAmB,EAAE;QAG7D,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;KACjE;SAAM,IACL,kBAAkB,CAAC,kBAAkB,EAAE,MAAM;QAC7C,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAC/D;QAGA,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,kBAAkB,CAAC;QAEjE,OAAO,yBAAyB,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;KAC5E;SAAM;QAGL,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,kBAAkB,CAAC;QACjE,MAAM,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAE7D,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,4FAA4F,CAC7F,CAAC;SACH;QAED,IAAI,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE;YACvC,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAC;SACH;QAED,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YACxD,MAAM,IAAI,KAAK,CACb;;2EAEmE,CACpE,CAAC;SACH;QAID,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QAErD,IAAI,yBAAyB,GAAG,kBAAkB,CAAC,QAAQ,CAAC;QAC5D,IAAI,CAAC,yBAAyB,EAAE,MAAM,EAAE;YAItC,yBAAyB;gBACvB,kBAAkB,CAAC,4BAA4B,EAAE,CAAC;SACrD;QAED,OAAO,yBAAyB,CAC9B,kBAAkB,EAClB,yBAAyB,CAC1B,CAAC;KACH;AACH,CAAC"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import removeSegmentationsFromToolGroup from './removeSegmentationsFromToolGroup';
|
|
2
2
|
import addSegmentations from './addSegmentations';
|
|
3
3
|
import addSegmentationRepresentations from './addSegmentationRepresentations';
|
|
4
|
+
import { convertStackToVolumeSegmentation } from './convertStackToVolumeSegmentation';
|
|
5
|
+
import { convertVolumeToStackSegmentation } from './convertVolumeToStackSegmentation';
|
|
4
6
|
import * as activeSegmentation from './activeSegmentation';
|
|
5
7
|
import * as segmentLocking from './segmentLocking';
|
|
6
8
|
import * as state from './segmentationState';
|
|
7
9
|
import * as config from './config';
|
|
8
10
|
import * as segmentIndex from './segmentIndex';
|
|
9
11
|
import * as triggerSegmentationEvents from './triggerSegmentationEvents';
|
|
10
|
-
export { state, addSegmentations, activeSegmentation, addSegmentationRepresentations, removeSegmentationsFromToolGroup, segmentLocking, config, segmentIndex, triggerSegmentationEvents, };
|
|
12
|
+
export { state, addSegmentations, activeSegmentation, addSegmentationRepresentations, removeSegmentationsFromToolGroup, segmentLocking, config, segmentIndex, triggerSegmentationEvents, convertStackToVolumeSegmentation, convertVolumeToStackSegmentation, };
|
|
11
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/stateManagement/segmentation/index.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/stateManagement/segmentation/index.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAEtF,OAAO,KAAK,kBAAkB,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,cAAc,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,KAAK,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,yBAAyB,MAAM,6BAA6B,CAAC;AAEzE,OAAO,EACL,KAAK,EACL,gBAAgB,EAChB,kBAAkB,EAClB,8BAA8B,EAC9B,gCAAgC,EAChC,cAAc,EACd,MAAM,EACN,YAAY,EACZ,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,GACjC,CAAC"}
|
|
@@ -112,6 +112,12 @@ function removeSegmentationRepresentation(toolGroupId, segmentationRepresentatio
|
|
|
112
112
|
segmentationStateManager.removeSegmentationRepresentation(toolGroupId, segmentationRepresentationUID);
|
|
113
113
|
triggerSegmentationRepresentationRemoved(toolGroupId, segmentationRepresentationUID);
|
|
114
114
|
}
|
|
115
|
+
function removeSegmentationRepresentations(toolGroupId) {
|
|
116
|
+
const segmentationRepresentations = getSegmentationRepresentations(toolGroupId) || [];
|
|
117
|
+
segmentationRepresentations.forEach((representation) => {
|
|
118
|
+
removeSegmentationRepresentation(toolGroupId, representation.segmentationRepresentationUID);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
115
121
|
function removeColorLUT(colorLUTIndex) {
|
|
116
122
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
117
123
|
segmentationStateManager.removeColorLUT(colorLUTIndex);
|
|
@@ -128,5 +134,5 @@ function addColorLUT(colorLUT, index) {
|
|
|
128
134
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
129
135
|
segmentationStateManager.addColorLUT(colorLUT, index);
|
|
130
136
|
}
|
|
131
|
-
export { getDefaultSegmentationStateManager, getSegmentation, getSegmentations, addSegmentation, removeSegmentation, getSegmentationRepresentations, addSegmentationRepresentation, removeSegmentationRepresentation, getToolGroupSpecificConfig, setToolGroupSpecificConfig, getGlobalConfig, setGlobalConfig, getSegmentationRepresentationSpecificConfig, setSegmentationRepresentationSpecificConfig, getSegmentSpecificRepresentationConfig, setSegmentSpecificRepresentationConfig, getToolGroupIdsWithSegmentation, getAllSegmentationRepresentations, getSegmentationRepresentationByUID, addColorLUT, getColorLUT, getNextColorLUTIndex, removeColorLUT, };
|
|
137
|
+
export { getDefaultSegmentationStateManager, getSegmentation, getSegmentations, addSegmentation, removeSegmentation, getSegmentationRepresentations, addSegmentationRepresentation, removeSegmentationRepresentation, removeSegmentationRepresentations, getToolGroupSpecificConfig, setToolGroupSpecificConfig, getGlobalConfig, setGlobalConfig, getSegmentationRepresentationSpecificConfig, setSegmentationRepresentationSpecificConfig, getSegmentSpecificRepresentationConfig, setSegmentSpecificRepresentationConfig, getToolGroupIdsWithSegmentation, getAllSegmentationRepresentations, getSegmentationRepresentationByUID, addColorLUT, getColorLUT, getNextColorLUTIndex, removeColorLUT, };
|
|
132
138
|
//# sourceMappingURL=segmentationState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segmentationState.js","sourceRoot":"","sources":["../../../../src/stateManagement/segmentation/segmentationState.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"segmentationState.js","sourceRoot":"","sources":["../../../../src/stateManagement/segmentation/segmentationState.ts"],"names":[],"mappings":"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"}
|