@cornerstonejs/tools 2.0.0-beta.26 → 2.0.0-beta.28
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/esm/eventListeners/index.d.ts +2 -2
- package/dist/esm/eventListeners/index.js +2 -2
- package/dist/esm/eventListeners/mouse/mouseDownListener.js +8 -0
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +18 -12
- package/dist/esm/eventListeners/segmentation/index.d.ts +1 -3
- package/dist/esm/eventListeners/segmentation/index.js +1 -3
- package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.js +13 -10
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +2 -3
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/init.js +1 -5
- package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.d.ts +2 -0
- package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.js +6 -5
- package/dist/esm/stateManagement/annotation/annotationState.js +11 -2
- package/dist/esm/stateManagement/index.d.ts +1 -4
- package/dist/esm/stateManagement/index.js +1 -3
- package/dist/esm/stateManagement/segmentation/SegmentationRenderingEngine.js +9 -6
- package/dist/esm/stateManagement/segmentation/SegmentationStateManager.d.ts +43 -25
- package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js +207 -162
- package/dist/esm/stateManagement/segmentation/SegmentationStyle.d.ts +42 -0
- package/dist/esm/stateManagement/segmentation/SegmentationStyle.js +162 -0
- package/dist/esm/stateManagement/segmentation/activeSegmentation.d.ts +4 -5
- package/dist/esm/stateManagement/segmentation/activeSegmentation.js +10 -14
- package/dist/esm/stateManagement/segmentation/addColorLUT.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/addColorLUT.js +15 -1
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentationsToViewport.d.ts +15 -0
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentationsToViewport.js +49 -0
- package/dist/esm/stateManagement/segmentation/addSegmentations.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/addSegmentations.js +11 -7
- package/dist/esm/stateManagement/segmentation/config/index.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/config/index.js +2 -2
- package/dist/esm/stateManagement/segmentation/config/segmentationColor.d.ts +4 -4
- package/dist/esm/stateManagement/segmentation/config/segmentationColor.js +24 -24
- package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.d.ts +22 -7
- package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.js +29 -29
- package/dist/esm/stateManagement/segmentation/config/styleHelpers.d.ts +39 -0
- package/dist/esm/stateManagement/segmentation/config/styleHelpers.js +48 -0
- package/dist/esm/stateManagement/segmentation/getActiveSegmentation.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/{getGlobalConfig.js → getActiveSegmentation.js} +2 -2
- package/dist/esm/stateManagement/segmentation/getCurrentLabelmapImageIdForViewport.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/getGlobalStyle.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/getGlobalStyle.js +4 -0
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentation.d.ts +9 -1
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentation.js +10 -2
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationVisibility.d.ts +5 -1
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationVisibility.js +2 -2
- package/dist/esm/stateManagement/segmentation/getViewportIdsWithSegmentation.js +5 -5
- package/dist/esm/stateManagement/segmentation/getViewportSegmentations.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/getViewportSegmentations.js +15 -0
- package/dist/esm/stateManagement/segmentation/helpers/clearSegmentValue.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/helpers/clearSegmentValue.js +31 -0
- package/dist/esm/stateManagement/segmentation/helpers/clipAndCacheSurfacesForViewport.d.ts +1 -2
- package/dist/esm/stateManagement/segmentation/helpers/clipAndCacheSurfacesForViewport.js +4 -6
- package/dist/esm/stateManagement/segmentation/{convertVolumeToStackSegmentation.d.ts → helpers/computeStackLabelmapFromVolume.d.ts} +2 -2
- package/dist/esm/stateManagement/segmentation/{convertVolumeToStackSegmentation.js → helpers/computeStackLabelmapFromVolume.js} +8 -5
- package/dist/esm/stateManagement/segmentation/helpers/computeVolumeLabelmapFromStack.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/helpers/computeVolumeLabelmapFromStack.js +4 -0
- package/dist/esm/stateManagement/segmentation/helpers/convertStackToVolumeLabelmap.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/helpers/convertStackToVolumeLabelmap.js +7 -0
- package/dist/esm/stateManagement/segmentation/helpers/getSegmentationActor.d.ts +8 -0
- package/dist/esm/stateManagement/segmentation/helpers/getSegmentationActor.js +27 -0
- package/dist/esm/stateManagement/segmentation/helpers/index.d.ts +2 -1
- package/dist/esm/stateManagement/segmentation/helpers/index.js +2 -1
- package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.js +4 -6
- package/dist/esm/stateManagement/segmentation/helpers/updateStackSegmentationState.js +1 -1
- package/dist/esm/stateManagement/segmentation/index.d.ts +14 -7
- package/dist/esm/stateManagement/segmentation/index.js +14 -7
- package/dist/esm/stateManagement/segmentation/{addRepresentationData.d.ts → internalAddRepresentationData.d.ts} +2 -2
- package/dist/esm/stateManagement/segmentation/{addRepresentationData.js → internalAddRepresentationData.js} +5 -2
- package/dist/esm/stateManagement/segmentation/internalAddSegmentationRepresentation.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/internalAddSegmentationRepresentation.js +18 -58
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/contourComputationStrategies.js +9 -10
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/utils/extractContourData.js +8 -5
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/computeAndAddLabelmapRepresentation.js +9 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertContourToLabelmap.js +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.js +4 -6
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertLabelmapToSurface.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertLabelmapToSurface.js +4 -4
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.js +1 -7
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/surfaceComputationStrategies.js +1 -3
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/updateSurfaceData.js +9 -8
- package/dist/esm/stateManagement/segmentation/polySeg/canComputeRequestedRepresentation.d.ts +2 -1
- package/dist/esm/stateManagement/segmentation/polySeg/canComputeRequestedRepresentation.js +3 -9
- package/dist/esm/stateManagement/segmentation/polySeg/computeAndAddRepresentation.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/computeAndAddRepresentation.js +7 -5
- package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.d.ts +14 -2
- package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.js +69 -19
- package/dist/esm/stateManagement/segmentation/segmentationState.d.ts +6 -18
- package/dist/esm/stateManagement/segmentation/segmentationState.js +9 -18
- package/dist/esm/stateManagement/segmentation/setActiveSegmentation.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/setActiveSegmentation.js +5 -0
- package/dist/esm/stateManagement/segmentation/setGlobalStyle.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/setGlobalStyle.js +8 -0
- package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationVisibility.d.ts +5 -1
- package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationVisibility.js +2 -2
- package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.d.ts +1 -3
- package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.js +1 -3
- package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +2 -1
- package/dist/esm/store/ToolGroupManager/ToolGroup.js +23 -9
- package/dist/esm/store/ToolGroupManager/createToolGroup.d.ts +1 -1
- package/dist/esm/store/ToolGroupManager/createToolGroup.js +3 -3
- package/dist/esm/tools/AdvancedMagnifyTool.js +1 -1
- package/dist/esm/tools/CrosshairsTool.js +1 -2
- package/dist/esm/tools/MIPJumpToClickTool.js +1 -1
- package/dist/esm/tools/ReferenceLinesTool.js +5 -2
- package/dist/esm/tools/StackScrollTool.d.ts +4 -0
- package/dist/esm/tools/StackScrollTool.js +104 -15
- package/dist/esm/tools/WindowLevelTool.js +3 -2
- package/dist/esm/tools/annotation/AngleTool.js +1 -1
- package/dist/esm/tools/annotation/BidirectionalTool.js +1 -1
- package/dist/esm/tools/annotation/CircleROITool.js +1 -1
- package/dist/esm/tools/annotation/EllipticalROITool.js +1 -1
- package/dist/esm/tools/annotation/HeightTool.js +1 -1
- package/dist/esm/tools/annotation/LengthTool.js +1 -1
- package/dist/esm/tools/annotation/LivewireContourTool.js +3 -3
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js +1 -1
- package/dist/esm/tools/annotation/ProbeTool.js +2 -2
- package/dist/esm/tools/annotation/RectangleROITool.js +1 -1
- package/dist/esm/tools/annotation/SplineROITool.js +2 -3
- package/dist/esm/tools/annotation/UltrasoundDirectionalTool.js +1 -1
- package/dist/esm/tools/base/BaseTool.d.ts +1 -2
- package/dist/esm/tools/base/BaseTool.js +5 -18
- package/dist/esm/tools/base/ContourSegmentationBaseTool.js +28 -25
- package/dist/esm/tools/displayTools/Contour/contourConfig.d.ts +3 -3
- package/dist/esm/tools/displayTools/Contour/contourConfig.js +2 -2
- package/dist/esm/tools/displayTools/Contour/contourDisplay.d.ts +1 -1
- package/dist/esm/tools/displayTools/Contour/contourDisplay.js +4 -7
- package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.js +26 -57
- package/dist/esm/tools/displayTools/Contour/removeContourFromElement.d.ts +1 -1
- package/dist/esm/tools/displayTools/Contour/removeContourFromElement.js +2 -4
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +1 -1
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +39 -10
- package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.d.ts +3 -5
- package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.js +3 -16
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.d.ts +1 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +86 -90
- package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.d.ts +1 -1
- package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js +3 -2
- package/dist/esm/tools/displayTools/Surface/addOrUpdateSurfaceToElement.d.ts +1 -1
- package/dist/esm/tools/displayTools/Surface/addOrUpdateSurfaceToElement.js +3 -3
- package/dist/esm/tools/displayTools/Surface/removeSurfaceFromElement.d.ts +2 -2
- package/dist/esm/tools/displayTools/Surface/removeSurfaceFromElement.js +5 -3
- package/dist/esm/tools/displayTools/Surface/surfaceConfig.d.ts +3 -3
- package/dist/esm/tools/displayTools/Surface/surfaceConfig.js +2 -2
- package/dist/esm/tools/displayTools/Surface/surfaceDisplay.d.ts +1 -1
- package/dist/esm/tools/displayTools/Surface/surfaceDisplay.js +7 -8
- package/dist/esm/tools/index.d.ts +1 -2
- package/dist/esm/tools/index.js +1 -2
- package/dist/esm/tools/segmentation/BrushTool.d.ts +0 -4
- package/dist/esm/tools/segmentation/BrushTool.js +23 -22
- package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js +2 -2
- package/dist/esm/tools/segmentation/CircleScissorsTool.d.ts +1 -1
- package/dist/esm/tools/segmentation/CircleScissorsTool.js +11 -10
- package/dist/esm/tools/segmentation/PaintFillTool.js +5 -7
- package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js +2 -2
- package/dist/esm/tools/segmentation/RectangleScissorsTool.d.ts +0 -1
- package/dist/esm/tools/segmentation/RectangleScissorsTool.js +9 -10
- package/dist/esm/tools/segmentation/SegmentSelectTool.d.ts +2 -2
- package/dist/esm/tools/segmentation/SegmentSelectTool.js +17 -26
- package/dist/esm/tools/segmentation/SphereScissorsTool.d.ts +0 -1
- package/dist/esm/tools/segmentation/SphereScissorsTool.js +6 -9
- package/dist/esm/tools/segmentation/strategies/BrushStrategy.d.ts +2 -0
- package/dist/esm/tools/segmentation/strategies/BrushStrategy.js +2 -0
- package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.js +1 -2
- package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js +1 -1
- package/dist/esm/tools/segmentation/strategies/compositions/preview.js +3 -3
- package/dist/esm/tools/segmentation/strategies/compositions/regionFill.js +4 -4
- package/dist/esm/tools/segmentation/strategies/compositions/setValue.js +1 -1
- package/dist/esm/tools/segmentation/strategies/fillCircle.js +3 -3
- package/dist/esm/tools/segmentation/strategies/fillSphere.js +3 -3
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js +21 -6
- package/dist/esm/types/AnnotationGroupSelector.js +0 -1
- package/dist/esm/types/AnnotationRenderContext.js +0 -1
- package/dist/esm/types/AnnotationStyle.js +0 -1
- package/dist/esm/types/AnnotationTypes.js +0 -1
- package/dist/esm/types/BoundsIJK.js +0 -1
- package/dist/esm/types/CINETypes.js +0 -1
- package/dist/esm/types/CalculatorTypes.js +0 -1
- package/dist/esm/types/CardinalSplineProps.js +0 -1
- package/dist/esm/types/ClosestControlPoint.js +0 -1
- package/dist/esm/types/ClosestPoint.js +0 -1
- package/dist/esm/types/ClosestSplinePoint.js +0 -1
- package/dist/esm/types/ContourSegmentationAnnotation.js +0 -1
- package/dist/esm/types/ContourTypes.d.ts +1 -2
- package/dist/esm/types/ContourTypes.js +0 -1
- package/dist/esm/types/ControlPointInfo.js +0 -1
- package/dist/esm/types/CursorTypes.js +0 -1
- package/dist/esm/types/EventTypes.d.ts +2 -2
- package/dist/esm/types/EventTypes.js +0 -1
- package/dist/esm/types/FloodFillTypes.js +0 -1
- package/dist/esm/types/IAnnotationManager.js +0 -1
- package/dist/esm/types/IBaseTool.js +0 -1
- package/dist/esm/types/IDistance.js +0 -1
- package/dist/esm/types/IPoints.js +0 -1
- package/dist/esm/types/ISculptToolShape.js +0 -1
- package/dist/esm/types/ISetToolModeOptions.js +0 -1
- package/dist/esm/types/ISpline.js +0 -1
- package/dist/esm/types/ISynchronizerEventHandler.js +0 -1
- package/dist/esm/types/IToolClassReference.js +0 -1
- package/dist/esm/types/IToolGroup.js +0 -1
- package/dist/esm/types/ITouchPoints.js +0 -1
- package/dist/esm/types/InteractionTypes.js +0 -1
- package/dist/esm/types/InternalToolTypes.js +0 -1
- package/dist/esm/types/InterpolationTypes.js +0 -1
- package/dist/esm/types/JumpToSliceOptions.js +0 -1
- package/dist/esm/types/LabelmapToolOperationData.d.ts +0 -1
- package/dist/esm/types/LabelmapToolOperationData.js +0 -1
- package/dist/esm/types/LabelmapTypes.d.ts +3 -7
- package/dist/esm/types/LabelmapTypes.js +0 -1
- package/dist/esm/types/PlanarBoundingBox.js +0 -1
- package/dist/esm/types/PolySeg.d.ts +1 -1
- package/dist/esm/types/PolySeg.js +0 -1
- package/dist/esm/types/SVGDrawingHelper.js +0 -1
- package/dist/esm/types/ScrollOptions.js +0 -1
- package/dist/esm/types/SegmentationStateTypes.d.ts +35 -56
- package/dist/esm/types/SegmentationStateTypes.js +0 -1
- package/dist/esm/types/SplineCurveSegment.js +0 -1
- package/dist/esm/types/SplineLineSegment.js +0 -1
- package/dist/esm/types/SplineProps.js +0 -1
- package/dist/esm/types/SurfaceTypes.d.ts +1 -1
- package/dist/esm/types/SurfaceTypes.js +0 -1
- package/dist/esm/types/ToolAction.js +0 -1
- package/dist/esm/types/ToolHandle.js +0 -1
- package/dist/esm/types/ToolProps.js +0 -1
- package/dist/esm/types/ToolSpecificAnnotationTypes.js +0 -1
- package/dist/esm/types/index.d.ts +2 -2
- package/dist/esm/types/index.js +0 -1
- package/dist/esm/utilities/cine/playClip.js +1 -1
- package/dist/esm/utilities/contours/updateContourPolyline.js +3 -0
- package/dist/esm/utilities/index.d.ts +2 -1
- package/dist/esm/utilities/index.js +2 -1
- package/dist/esm/utilities/math/circle/_types.js +0 -1
- package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.js +0 -1
- package/dist/esm/utilities/pointInSurroundingSphereCallback.d.ts +8 -0
- package/dist/esm/utilities/pointInSurroundingSphereCallback.js +71 -0
- package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js +2 -2
- package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.js +10 -9
- package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.js +9 -8
- package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.js +14 -16
- package/dist/esm/utilities/segmentation/index.d.ts +1 -3
- package/dist/esm/utilities/segmentation/index.js +1 -3
- package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.js +3 -0
- package/dist/esm/utilities/voi/colorbar/ViewportColorbar.js +1 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarImageRange.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarSize.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksProps.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksStyle.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarVOIRange.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/ViewportColorbarProps.js +0 -1
- package/dist/esm/utilities/voi/colorbar/types/index.js +0 -1
- package/dist/esm/widgets/types/WidgetProps.js +0 -1
- package/dist/esm/widgets/types/WidgetSize.js +0 -1
- package/dist/esm/widgets/types/index.js +0 -1
- package/dist/esm/workers/polySegConverters.js +4 -3
- package/package.json +73 -20
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.d.ts +0 -3
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.js +0 -14
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.d.ts +0 -3
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js +0 -8
- package/dist/esm/stateManagement/segmentation/addSegmentation.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/addSegmentation.js +0 -11
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentationState.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentationState.js +0 -10
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.d.ts +0 -8
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.js +0 -19
- package/dist/esm/stateManagement/segmentation/config/segmentationConfig.d.ts +0 -14
- package/dist/esm/stateManagement/segmentation/config/segmentationConfig.js +0 -54
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationModified.d.ts +0 -1
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationModified.js +0 -8
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationRemoved.d.ts +0 -1
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationRemoved.js +0 -8
- package/dist/esm/stateManagement/segmentation/getActiveSegmentationRepresentation.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getActiveSegmentationRepresentation.js +0 -5
- package/dist/esm/stateManagement/segmentation/getAllSegmentationRepresentations.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getAllSegmentationRepresentations.js +0 -6
- package/dist/esm/stateManagement/segmentation/getGlobalConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getPerSegmentConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getPerSegmentConfig.js +0 -5
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationConfig.js +0 -5
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationViewportStates.d.ts +0 -7
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationViewportStates.js +0 -6
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentations.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentations.js +0 -12
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationsForSegmentation.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationsForSegmentation.js +0 -5
- package/dist/esm/stateManagement/segmentation/removeRepresentation.d.ts +0 -1
- package/dist/esm/stateManagement/segmentation/removeRepresentation.js +0 -9
- package/dist/esm/stateManagement/segmentation/setActiveSegmentationRepresentation.d.ts +0 -1
- package/dist/esm/stateManagement/segmentation/setActiveSegmentationRepresentation.js +0 -9
- package/dist/esm/stateManagement/segmentation/setGlobalConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/setGlobalConfig.js +0 -9
- package/dist/esm/stateManagement/segmentation/setPerSegmentConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/setPerSegmentConfig.js +0 -9
- package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationConfig.js +0 -9
- package/dist/esm/tools/VolumeRotateMouseWheelTool.d.ts +0 -9
- package/dist/esm/tools/VolumeRotateMouseWheelTool.js +0 -52
- package/dist/esm/tools/displayTools/Contour/contourHandler/contourConfigCache.d.ts +0 -9
- package/dist/esm/tools/displayTools/Contour/contourHandler/contourConfigCache.js +0 -10
- package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.d.ts +0 -5
- package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.js +0 -13
- package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.d.ts +0 -2
- package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.js +0 -11
- package/dist/esm/utilities/segmentation/isValidRepresentationConfig.d.ts +0 -2
- package/dist/esm/utilities/segmentation/isValidRepresentationConfig.js +0 -10
- package/dist/umd/17dd54813d5acc10bf8f.wasm +0 -0
- package/dist/umd/78.index.js +0 -3
- package/dist/umd/78.index.js.LICENSE.txt +0 -5
- package/dist/umd/78.index.js.map +0 -1
- package/dist/umd/985.index.js +0 -2
- package/dist/umd/985.index.js.map +0 -1
- package/dist/umd/index.js +0 -3
- package/dist/umd/index.js.LICENSE.txt +0 -6
- package/dist/umd/index.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cache, getEnabledElement } from '@cornerstonejs/core';
|
|
1
|
+
import { BaseVolumeViewport, cache, getEnabledElement, } from '@cornerstonejs/core';
|
|
2
2
|
import { BaseTool } from '../base';
|
|
3
3
|
import { fillInsideSphere } from './strategies/fillSphere';
|
|
4
4
|
import { eraseInsideSphere } from './strategies/eraseSphere';
|
|
@@ -8,7 +8,6 @@ import { resetElementCursor, hideElementCursor, } from '../../cursors/elementCur
|
|
|
8
8
|
import triggerAnnotationRenderForViewportIds from '../../utilities/triggerAnnotationRenderForViewportIds';
|
|
9
9
|
import { config as segmentationConfig, segmentLocking, segmentIndex as segmentIndexController, activeSegmentation, } from '../../stateManagement/segmentation';
|
|
10
10
|
import { getSegmentation } from '../../stateManagement/segmentation/segmentationState';
|
|
11
|
-
import { isVolumeSegmentation } from './strategies/utils/stackVolumeCheck';
|
|
12
11
|
class SphereScissorsTool extends BaseTool {
|
|
13
12
|
constructor(toolProps = {}, defaultToolProps = {
|
|
14
13
|
supportedInteractionTypes: ['Mouse', 'Touch'],
|
|
@@ -35,14 +34,14 @@ class SphereScissorsTool extends BaseTool {
|
|
|
35
34
|
this.isDrawing = true;
|
|
36
35
|
const camera = viewport.getCamera();
|
|
37
36
|
const { viewPlaneNormal, viewUp } = camera;
|
|
38
|
-
const activeSegmentationRepresentation = activeSegmentation.
|
|
37
|
+
const activeSegmentationRepresentation = activeSegmentation.getActiveSegmentation(viewport.id);
|
|
39
38
|
if (!activeSegmentationRepresentation) {
|
|
40
39
|
throw new Error('No active segmentation detected, create one before using scissors tool');
|
|
41
40
|
}
|
|
42
|
-
const {
|
|
41
|
+
const { segmentationId } = activeSegmentationRepresentation;
|
|
43
42
|
const segmentIndex = segmentIndexController.getActiveSegmentIndex(segmentationId);
|
|
44
43
|
const segmentsLocked = segmentLocking.getLockedSegmentIndices(segmentationId);
|
|
45
|
-
const segmentColor = segmentationConfig.color.getSegmentIndexColor(
|
|
44
|
+
const segmentColor = segmentationConfig.color.getSegmentIndexColor(viewport.id, segmentationId, segmentIndex);
|
|
46
45
|
this.isDrawing = true;
|
|
47
46
|
const annotation = {
|
|
48
47
|
metadata: {
|
|
@@ -72,7 +71,6 @@ class SphereScissorsTool extends BaseTool {
|
|
|
72
71
|
this.editData = {
|
|
73
72
|
annotation,
|
|
74
73
|
centerCanvas: canvasPos,
|
|
75
|
-
segmentationRepresentationUID,
|
|
76
74
|
segmentIndex,
|
|
77
75
|
segmentationId,
|
|
78
76
|
segmentsLocked,
|
|
@@ -89,7 +87,7 @@ class SphereScissorsTool extends BaseTool {
|
|
|
89
87
|
};
|
|
90
88
|
const { representationData } = getSegmentation(segmentationId);
|
|
91
89
|
const labelmapData = representationData[SegmentationRepresentations.Labelmap];
|
|
92
|
-
if (
|
|
90
|
+
if (viewport instanceof BaseVolumeViewport) {
|
|
93
91
|
const { volumeId } = labelmapData;
|
|
94
92
|
const segmentation = cache.getVolume(volumeId);
|
|
95
93
|
this.editData = {
|
|
@@ -149,7 +147,7 @@ class SphereScissorsTool extends BaseTool {
|
|
|
149
147
|
this._endCallback = (evt) => {
|
|
150
148
|
const eventDetail = evt.detail;
|
|
151
149
|
const { element } = eventDetail;
|
|
152
|
-
const { annotation, newAnnotation, hasMoved, segmentIndex,
|
|
150
|
+
const { annotation, newAnnotation, hasMoved, segmentIndex, segmentsLocked, } = this.editData;
|
|
153
151
|
const { data } = annotation;
|
|
154
152
|
const { viewPlaneNormal, viewUp } = annotation.metadata;
|
|
155
153
|
if (newAnnotation && !hasMoved) {
|
|
@@ -164,7 +162,6 @@ class SphereScissorsTool extends BaseTool {
|
|
|
164
162
|
...this.editData,
|
|
165
163
|
points: data.handles.points,
|
|
166
164
|
segmentIndex,
|
|
167
|
-
segmentationRepresentationUID,
|
|
168
165
|
segmentsLocked,
|
|
169
166
|
viewPlaneNormal,
|
|
170
167
|
viewUp,
|
|
@@ -7,6 +7,8 @@ export type InitializedOperationData = LabelmapToolOperationDataAny & {
|
|
|
7
7
|
enabledElement: Types.IEnabledElement;
|
|
8
8
|
centerIJK?: Types.Point3;
|
|
9
9
|
centerWorld: Types.Point3;
|
|
10
|
+
isInObject: (point: Types.Point3) => boolean;
|
|
11
|
+
isInObjectBoundsIJK: Types.BoundsIJK;
|
|
10
12
|
viewport: Types.IViewport;
|
|
11
13
|
imageVoxelManager: Types.IVoxelManager<number> | Types.IVoxelManager<Types.RGB>;
|
|
12
14
|
segmentationVoxelManager: Types.IVoxelManager<number>;
|
|
@@ -24,8 +24,7 @@ export default {
|
|
|
24
24
|
};
|
|
25
25
|
imageVoxelManager.forEach(callback, {
|
|
26
26
|
imageData: segmentationImageData,
|
|
27
|
-
isInObject:
|
|
28
|
-
boundsIJK: segmentationVoxelManager.boundsIJK,
|
|
27
|
+
isInObject: operationData.isInObject,
|
|
29
28
|
});
|
|
30
29
|
if (!hasSegmentIndex && !hasPreviewIndex) {
|
|
31
30
|
return;
|
|
@@ -11,7 +11,7 @@ export default {
|
|
|
11
11
|
operationName === StrategyCallbacks.OnInteractionEnd) {
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
14
|
-
const
|
|
14
|
+
const boundsIJK = segmentationVoxelManager.getBoundsIJK();
|
|
15
15
|
const { threshold: oldThreshold, dynamicRadius = 0 } = THRESHOLD;
|
|
16
16
|
const useDelta = oldThreshold ? 0 : dynamicRadius;
|
|
17
17
|
const nestedBounds = boundsIJK.map((ijk, idx) => {
|
|
@@ -29,7 +29,7 @@ export default {
|
|
|
29
29
|
return preview;
|
|
30
30
|
},
|
|
31
31
|
[StrategyCallbacks.Initialize]: (operationData) => {
|
|
32
|
-
const {
|
|
32
|
+
const { segmentIndex, previewSegmentIndex, previewColors, preview } = operationData;
|
|
33
33
|
if (previewColors === undefined) {
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
@@ -42,12 +42,12 @@ export default {
|
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
44
44
|
const configColor = previewColors?.[segmentIndex];
|
|
45
|
-
const segmentColor = getSegmentIndexColor(
|
|
45
|
+
const segmentColor = getSegmentIndexColor(operationData.viewport.id, operationData.segmentationId, segmentIndex);
|
|
46
46
|
if (!configColor && !segmentColor) {
|
|
47
47
|
return;
|
|
48
48
|
}
|
|
49
49
|
const previewColor = configColor || lightenColor(...segmentColor);
|
|
50
|
-
setSegmentIndexColor(
|
|
50
|
+
setSegmentIndexColor(operationData.viewport.id, operationData.segmentationId, previewSegmentIndex, previewColor);
|
|
51
51
|
},
|
|
52
52
|
[StrategyCallbacks.AcceptPreview]: (operationData) => {
|
|
53
53
|
const { segmentationVoxelManager, previewVoxelManager: previewVoxelManager, previewSegmentIndex, preview, } = operationData || {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import StrategyCallbacks from '../../../../enums/StrategyCallbacks';
|
|
2
2
|
export default {
|
|
3
3
|
[StrategyCallbacks.Fill]: (operationData) => {
|
|
4
|
-
const { segmentsLocked, segmentationImageData, segmentationVoxelManager, previewVoxelManager: previewVoxelManager,
|
|
4
|
+
const { segmentsLocked, segmentationImageData, segmentationVoxelManager, previewVoxelManager: previewVoxelManager, brushStrategy, centerIJK, } = operationData;
|
|
5
5
|
const isWithinThreshold = brushStrategy.createIsInThreshold?.(operationData);
|
|
6
6
|
const { setValue } = brushStrategy;
|
|
7
7
|
const callback = isWithinThreshold
|
|
@@ -13,10 +13,10 @@ export default {
|
|
|
13
13
|
setValue(operationData, data);
|
|
14
14
|
}
|
|
15
15
|
: (data) => setValue(operationData, data);
|
|
16
|
-
|
|
16
|
+
segmentationVoxelManager.forEach(callback, {
|
|
17
17
|
imageData: segmentationImageData,
|
|
18
|
-
isInObject:
|
|
19
|
-
boundsIJK:
|
|
18
|
+
isInObject: operationData.isInObject,
|
|
19
|
+
boundsIJK: operationData.isInObjectBoundsIJK,
|
|
20
20
|
});
|
|
21
21
|
previewVoxelManager.addPoint(centerIJK);
|
|
22
22
|
},
|
|
@@ -2,7 +2,7 @@ import StrategyCallbacks from '../../../../enums/StrategyCallbacks';
|
|
|
2
2
|
import { triggerEvent, eventTarget } from '@cornerstonejs/core';
|
|
3
3
|
export default {
|
|
4
4
|
[StrategyCallbacks.INTERNAL_setValue]: (operationData, { value, index }) => {
|
|
5
|
-
const { segmentsLocked, segmentIndex, previewVoxelManager, previewSegmentIndex, segmentationVoxelManager,
|
|
5
|
+
const { segmentsLocked, segmentIndex, previewVoxelManager, previewSegmentIndex, segmentationVoxelManager, } = operationData;
|
|
6
6
|
const existingValue = segmentationVoxelManager.getAtIndex(index);
|
|
7
7
|
let changed = false;
|
|
8
8
|
if (segmentIndex === null) {
|
|
@@ -9,7 +9,7 @@ import { pointInSphere } from '../../../utilities/math/sphere';
|
|
|
9
9
|
const { transformWorldToIndex, isEqual } = csUtils;
|
|
10
10
|
const initializeCircle = {
|
|
11
11
|
[StrategyCallbacks.Initialize]: (operationData) => {
|
|
12
|
-
const { points,
|
|
12
|
+
const { points, viewport, segmentationImageData, } = operationData;
|
|
13
13
|
if (!points) {
|
|
14
14
|
return;
|
|
15
15
|
}
|
|
@@ -28,12 +28,12 @@ const initializeCircle = {
|
|
|
28
28
|
return transformWorldToIndex(segmentationImageData, world);
|
|
29
29
|
});
|
|
30
30
|
const boundsIJK = getBoundingBoxAroundShapeIJK(circleCornersIJK, segmentationImageData.getDimensions());
|
|
31
|
-
|
|
32
|
-
imageVoxelManager.isInObject = createPointInEllipse({
|
|
31
|
+
operationData.isInObject = createPointInEllipse({
|
|
33
32
|
topLeftWorld,
|
|
34
33
|
bottomRightWorld,
|
|
35
34
|
center,
|
|
36
35
|
});
|
|
36
|
+
operationData.isInObjectBoundsIJK = boundsIJK;
|
|
37
37
|
},
|
|
38
38
|
};
|
|
39
39
|
function createPointInEllipse(worldInfo) {
|
|
@@ -8,7 +8,7 @@ const { transformWorldToIndex } = csUtils;
|
|
|
8
8
|
import { getSphereBoundsInfo } from '../../../utilities/getSphereBoundsInfo';
|
|
9
9
|
const sphereComposition = {
|
|
10
10
|
[StrategyCallbacks.Initialize]: (operationData) => {
|
|
11
|
-
const { points,
|
|
11
|
+
const { points, viewport, segmentationImageData } = operationData;
|
|
12
12
|
if (!points) {
|
|
13
13
|
return;
|
|
14
14
|
}
|
|
@@ -20,8 +20,8 @@ const sphereComposition = {
|
|
|
20
20
|
operationData.centerWorld = center;
|
|
21
21
|
operationData.centerIJK = transformWorldToIndex(segmentationImageData, center);
|
|
22
22
|
const { boundsIJK: newBoundsIJK, topLeftWorld, bottomRightWorld, } = getSphereBoundsInfo(points.slice(0, 2), segmentationImageData, viewport);
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
operationData.isInObjectBoundsIJK = newBoundsIJK;
|
|
24
|
+
operationData.isInObject = createEllipseInPoint({
|
|
25
25
|
topLeftWorld,
|
|
26
26
|
bottomRightWorld,
|
|
27
27
|
center,
|
|
@@ -1,12 +1,24 @@
|
|
|
1
|
-
import { cache } from '@cornerstonejs/core';
|
|
2
|
-
import { isVolumeSegmentation } from './stackVolumeCheck';
|
|
1
|
+
import { BaseVolumeViewport, cache, Enums, eventTarget, } from '@cornerstonejs/core';
|
|
3
2
|
import { getCurrentLabelmapImageIdForViewport } from '../../../../stateManagement/segmentation/segmentationState';
|
|
3
|
+
import { getSegmentationActor } from '../../../../stateManagement/segmentation/helpers';
|
|
4
|
+
import { SegmentationRepresentations } from '../../../../enums';
|
|
4
5
|
function getStrategyData({ operationData, viewport }) {
|
|
5
6
|
let segmentationImageData, segmentationScalarData, imageScalarData;
|
|
6
7
|
let imageVoxelManager;
|
|
7
8
|
let segmentationVoxelManager;
|
|
8
|
-
if (
|
|
9
|
+
if (viewport instanceof BaseVolumeViewport) {
|
|
9
10
|
const { volumeId, referencedVolumeId } = operationData;
|
|
11
|
+
if (!volumeId) {
|
|
12
|
+
const event = new CustomEvent(Enums.Events.ERROR_EVENT, {
|
|
13
|
+
detail: {
|
|
14
|
+
type: 'Segmentation',
|
|
15
|
+
message: 'No volume id found for the segmentation',
|
|
16
|
+
},
|
|
17
|
+
cancelable: true,
|
|
18
|
+
});
|
|
19
|
+
eventTarget.dispatchEvent(event);
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
10
22
|
const segmentationVolume = cache.getVolume(volumeId);
|
|
11
23
|
if (!segmentationVolume) {
|
|
12
24
|
return;
|
|
@@ -19,7 +31,7 @@ function getStrategyData({ operationData, viewport }) {
|
|
|
19
31
|
({ imageData: segmentationImageData } = segmentationVolume);
|
|
20
32
|
}
|
|
21
33
|
else {
|
|
22
|
-
const {
|
|
34
|
+
const { segmentationId } = operationData;
|
|
23
35
|
const labelmapImageId = getCurrentLabelmapImageIdForViewport(viewport.id, segmentationId);
|
|
24
36
|
if (!labelmapImageId) {
|
|
25
37
|
return;
|
|
@@ -28,12 +40,15 @@ function getStrategyData({ operationData, viewport }) {
|
|
|
28
40
|
if (!currentImageId) {
|
|
29
41
|
return;
|
|
30
42
|
}
|
|
31
|
-
const actor = viewport.
|
|
43
|
+
const actor = getSegmentationActor(viewport.id, {
|
|
44
|
+
segmentationId,
|
|
45
|
+
type: SegmentationRepresentations.Labelmap,
|
|
46
|
+
});
|
|
32
47
|
if (!actor) {
|
|
33
48
|
return;
|
|
34
49
|
}
|
|
35
50
|
const currentSegImage = cache.getImage(labelmapImageId);
|
|
36
|
-
segmentationImageData = actor.
|
|
51
|
+
segmentationImageData = actor.getMapper().getInputData();
|
|
37
52
|
segmentationVoxelManager = currentSegImage.voxelManager;
|
|
38
53
|
const currentSegmentationImageId = operationData.imageId;
|
|
39
54
|
const segmentationImage = cache.getImage(currentSegmentationImageId);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type
|
|
1
|
+
export type ContourStyle = {
|
|
2
2
|
outlineWidthAutoGenerated?: number;
|
|
3
3
|
outlineWidthActive?: number;
|
|
4
4
|
outlineWidthInactive?: number;
|
|
@@ -14,7 +14,6 @@ export type ContourConfig = {
|
|
|
14
14
|
fillAlphaInactive?: number;
|
|
15
15
|
fillAlphaAutoGenerated?: number;
|
|
16
16
|
};
|
|
17
|
-
export type ContourRenderingConfig = {};
|
|
18
17
|
export type ContourSegmentationData = {
|
|
19
18
|
geometryIds?: string[];
|
|
20
19
|
annotationUIDsMap?: Map<number, Set<string>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -113,13 +113,13 @@ type SegmentationRenderedEventDetail = {
|
|
|
113
113
|
viewportId: string;
|
|
114
114
|
};
|
|
115
115
|
type SegmentationRepresentationModifiedEventDetail = {
|
|
116
|
-
|
|
116
|
+
segmentationId: string;
|
|
117
117
|
};
|
|
118
118
|
type SegmentationRemovedEventDetail = {
|
|
119
119
|
segmentationId: string;
|
|
120
120
|
};
|
|
121
121
|
type SegmentationRepresentationRemovedEventDetail = {
|
|
122
|
-
|
|
122
|
+
segmentationId: string;
|
|
123
123
|
};
|
|
124
124
|
type SegmentationModifiedEventDetail = {
|
|
125
125
|
segmentationId: string;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type { vtkPiecewiseFunction } from '@kitware/vtk.js/Common/DataModel/PiecewiseFunction';
|
|
3
|
-
export type LabelmapConfig = {
|
|
1
|
+
export type LabelmapStyle = {
|
|
4
2
|
renderOutline?: boolean;
|
|
3
|
+
renderOutlineInactive?: boolean;
|
|
5
4
|
outlineWidthActive?: number;
|
|
6
5
|
outlineWidthInactive?: number;
|
|
7
6
|
activeSegmentOutlineWidthDelta?: number;
|
|
@@ -12,10 +11,6 @@ export type LabelmapConfig = {
|
|
|
12
11
|
outlineOpacity?: number;
|
|
13
12
|
outlineOpacityInactive?: number;
|
|
14
13
|
};
|
|
15
|
-
export type LabelmapRenderingConfig = {
|
|
16
|
-
cfun?: vtkColorTransferFunction;
|
|
17
|
-
ofun?: vtkPiecewiseFunction;
|
|
18
|
-
};
|
|
19
14
|
export type LabelmapSegmentationDataVolume = {
|
|
20
15
|
volumeId: string;
|
|
21
16
|
referencedVolumeId?: string;
|
|
@@ -26,5 +21,6 @@ export type LabelmapSegmentationDataStack = {
|
|
|
26
21
|
export type LabelmapSegmentationData = LabelmapSegmentationDataVolume | LabelmapSegmentationDataStack | {
|
|
27
22
|
volumeId?: string;
|
|
28
23
|
referencedVolumeId?: string;
|
|
24
|
+
referencedImageIds?: string[];
|
|
29
25
|
imageIds?: string[];
|
|
30
26
|
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,19 +1,10 @@
|
|
|
1
1
|
import type { Types } from '@cornerstonejs/core';
|
|
2
2
|
import type * as Enums from '../enums';
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
import type { SurfaceSegmentationData
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
[Enums.SegmentationRepresentations.Labelmap]?: LabelmapConfig;
|
|
9
|
-
[Enums.SegmentationRepresentations.Contour]?: ContourConfig;
|
|
10
|
-
[Enums.SegmentationRepresentations.Surface]?: SurfaceConfig;
|
|
11
|
-
};
|
|
12
|
-
export type RepresentationConfig = LabelmapConfig | ContourConfig | SurfaceConfig;
|
|
13
|
-
export type GlobalConfig = {
|
|
14
|
-
renderInactiveRepresentations: boolean;
|
|
15
|
-
representations: RepresentationsConfig;
|
|
16
|
-
};
|
|
3
|
+
import type { ContourSegmentationData } from './ContourTypes';
|
|
4
|
+
import type { LabelmapSegmentationData } from './LabelmapTypes';
|
|
5
|
+
import type { SurfaceSegmentationData } from './SurfaceTypes';
|
|
6
|
+
import type vtkColorTransferFunction from '@kitware/vtk.js/Rendering/Core/ColorTransferFunction';
|
|
7
|
+
import type vtkPiecewiseFunction from '@kitware/vtk.js/Common/DataModel/PiecewiseFunction';
|
|
17
8
|
export type RepresentationsData = {
|
|
18
9
|
[Enums.SegmentationRepresentations.Labelmap]?: LabelmapSegmentationData;
|
|
19
10
|
[Enums.SegmentationRepresentations.Contour]?: ContourSegmentationData;
|
|
@@ -22,7 +13,6 @@ export type RepresentationsData = {
|
|
|
22
13
|
export type RepresentationData = LabelmapSegmentationData | ContourSegmentationData | SurfaceSegmentationData;
|
|
23
14
|
export type Segmentation = {
|
|
24
15
|
segmentationId: string;
|
|
25
|
-
type: Enums.SegmentationRepresentations;
|
|
26
16
|
label: string;
|
|
27
17
|
activeSegmentIndex: number;
|
|
28
18
|
segmentsLocked: Set<number>;
|
|
@@ -34,45 +24,40 @@ export type Segmentation = {
|
|
|
34
24
|
};
|
|
35
25
|
representationData: RepresentationsData;
|
|
36
26
|
};
|
|
37
|
-
|
|
38
|
-
|
|
27
|
+
type BaseRenderingConfig = {
|
|
28
|
+
colorLUTIndex: number;
|
|
29
|
+
};
|
|
30
|
+
export type LabelmapRenderingConfig = BaseRenderingConfig & {
|
|
31
|
+
cfun: vtkColorTransferFunction;
|
|
32
|
+
ofun: vtkPiecewiseFunction;
|
|
33
|
+
};
|
|
34
|
+
export type ContourRenderingConfig = BaseRenderingConfig & {};
|
|
35
|
+
export type SurfaceRenderingConfig = BaseRenderingConfig & {};
|
|
36
|
+
export type RenderingConfig = LabelmapRenderingConfig | ContourRenderingConfig | SurfaceRenderingConfig;
|
|
37
|
+
type BaseSegmentationRepresentation = {
|
|
39
38
|
segmentationId: string;
|
|
40
39
|
type: Enums.SegmentationRepresentations;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
config:
|
|
47
|
-
allSegments?: RepresentationConfig;
|
|
48
|
-
perSegment?: RepresentationConfig;
|
|
49
|
-
};
|
|
40
|
+
visible: boolean;
|
|
41
|
+
active: boolean;
|
|
42
|
+
segmentsHidden: Set<number>;
|
|
43
|
+
};
|
|
44
|
+
export type SegmentationRepresentation = BaseSegmentationRepresentation & {
|
|
45
|
+
config: RenderingConfig;
|
|
50
46
|
};
|
|
51
|
-
export type LabelmapRepresentation =
|
|
52
|
-
|
|
47
|
+
export type LabelmapRepresentation = SegmentationRepresentation & {
|
|
48
|
+
config: LabelmapRenderingConfig;
|
|
53
49
|
};
|
|
54
|
-
export type ContourRepresentation =
|
|
55
|
-
|
|
50
|
+
export type ContourRepresentation = SegmentationRepresentation & {
|
|
51
|
+
config: ContourRenderingConfig;
|
|
56
52
|
};
|
|
57
|
-
export type SurfaceRepresentation =
|
|
58
|
-
|
|
53
|
+
export type SurfaceRepresentation = SegmentationRepresentation & {
|
|
54
|
+
config: SurfaceRenderingConfig;
|
|
59
55
|
};
|
|
60
|
-
export type SegmentationRepresentation = LabelmapRepresentation | ContourRepresentation | SurfaceRepresentation;
|
|
61
56
|
export type SegmentationState = {
|
|
62
57
|
colorLUT: Types.ColorLUT[];
|
|
63
58
|
segmentations: Segmentation[];
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
[key: string]: SegmentationRepresentation;
|
|
67
|
-
};
|
|
68
|
-
viewports: {
|
|
69
|
-
[viewportId: string]: {
|
|
70
|
-
[segRepresentationUID: string]: {
|
|
71
|
-
visible: boolean;
|
|
72
|
-
active: boolean;
|
|
73
|
-
segmentsHidden: Set<number>;
|
|
74
|
-
};
|
|
75
|
-
};
|
|
59
|
+
viewportSegRepresentations: {
|
|
60
|
+
[viewportId: string]: Array<SegmentationRepresentation>;
|
|
76
61
|
};
|
|
77
62
|
};
|
|
78
63
|
export type SegmentationPublicInput = {
|
|
@@ -82,17 +67,11 @@ export type SegmentationPublicInput = {
|
|
|
82
67
|
data?: RepresentationData;
|
|
83
68
|
};
|
|
84
69
|
};
|
|
85
|
-
export type RepresentationPublicInputOptions = {
|
|
86
|
-
segmentationRepresentationUID?: string;
|
|
87
|
-
colorLUTOrIndex?: Types.ColorLUT | number;
|
|
88
|
-
polySeg?: {
|
|
89
|
-
enabled: boolean;
|
|
90
|
-
options?: unknown;
|
|
91
|
-
};
|
|
92
|
-
};
|
|
93
70
|
export type RepresentationPublicInput = {
|
|
94
71
|
segmentationId: string;
|
|
95
|
-
type
|
|
96
|
-
|
|
97
|
-
|
|
72
|
+
type?: Enums.SegmentationRepresentations;
|
|
73
|
+
config?: {
|
|
74
|
+
colorLUT?: Types.ColorLUT[];
|
|
75
|
+
};
|
|
98
76
|
};
|
|
77
|
+
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|