@cornerstonejs/tools 2.0.0-beta.20 → 2.0.0-beta.21
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/cursors/SVGCursorDescriptor.d.ts +1 -1
- package/dist/esm/cursors/SVGCursorDescriptor.js +7 -0
- package/dist/esm/cursors/SVGMouseCursor.d.ts +1 -1
- package/dist/esm/drawingSvg/draw.d.ts +2 -1
- package/dist/esm/drawingSvg/drawArrow.d.ts +1 -1
- package/dist/esm/drawingSvg/drawCircle.d.ts +1 -1
- package/dist/esm/drawingSvg/drawEllipse.d.ts +1 -1
- package/dist/esm/drawingSvg/drawEllipse.js +1 -0
- package/dist/esm/drawingSvg/drawEllipseByCoordinates.d.ts +1 -1
- package/dist/esm/drawingSvg/drawHandle.d.ts +1 -1
- package/dist/esm/drawingSvg/drawHandles.d.ts +1 -1
- package/dist/esm/drawingSvg/drawHeight.d.ts +3 -0
- package/dist/esm/drawingSvg/drawHeight.js +42 -0
- package/dist/esm/drawingSvg/drawLine.d.ts +1 -1
- package/dist/esm/drawingSvg/drawLink.d.ts +1 -1
- package/dist/esm/drawingSvg/drawLinkedTextBox.d.ts +1 -1
- package/dist/esm/drawingSvg/drawPath.d.ts +1 -1
- package/dist/esm/drawingSvg/drawPolyline.d.ts +1 -1
- package/dist/esm/drawingSvg/drawRect.d.ts +1 -1
- package/dist/esm/drawingSvg/drawRect.js +1 -0
- package/dist/esm/drawingSvg/drawRectByCoordinates.d.ts +1 -1
- package/dist/esm/drawingSvg/drawRedactionRect.d.ts +3 -1
- package/dist/esm/drawingSvg/drawTextBox.d.ts +1 -1
- package/dist/esm/drawingSvg/getSvgDrawingHelper.d.ts +1 -1
- package/dist/esm/drawingSvg/getSvgDrawingHelper.js +1 -1
- package/dist/esm/drawingSvg/index.d.ts +2 -1
- package/dist/esm/drawingSvg/index.js +2 -1
- package/dist/esm/enums/ToolBindings.d.ts +3 -1
- package/dist/esm/enums/ToolBindings.js +2 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.d.ts +1 -1
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.d.ts +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.d.ts +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownActivate.d.ts +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.d.ts +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDrag.d.ts +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseMove.d.ts +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.d.ts +2 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.js +15 -2
- package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.d.ts +1 -1
- package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.d.ts +1 -1
- package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js +3 -4
- package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.d.ts +1 -1
- package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.js +1 -1
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForKeyboardEvents.d.ts +2 -2
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.d.ts +4 -3
- package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.d.ts +3 -3
- package/dist/esm/eventDispatchers/shared/getToolsWithModesForTouchEvent.d.ts +2 -2
- package/dist/esm/eventDispatchers/touchEventHandlers/touchDrag.d.ts +1 -1
- package/dist/esm/eventDispatchers/touchEventHandlers/touchStart.d.ts +1 -1
- package/dist/esm/eventDispatchers/touchEventHandlers/touchStartActivate.d.ts +1 -1
- package/dist/esm/eventListeners/annotations/annotationCompletedListener.d.ts +1 -1
- package/dist/esm/eventListeners/annotations/annotationRemovedListener.d.ts +1 -1
- package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts +3 -3
- package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +1 -1
- package/dist/esm/eventListeners/mouse/getMouseEventPoints.d.ts +1 -1
- package/dist/esm/eventListeners/mouse/getMouseEventPoints.js +4 -1
- package/dist/esm/eventListeners/mouse/mouseDownListener.js +9 -1
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +6 -6
- package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.d.ts +1 -1
- package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.js +3 -3
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.d.ts +1 -1
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +2 -2
- package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.d.ts +1 -1
- package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.js +3 -2
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.d.ts +1 -1
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.js +5 -5
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.d.ts +1 -1
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js +4 -2
- package/dist/esm/eventListeners/touch/getTouchEventPoints.d.ts +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/stateManagement/annotation/AnnotationRenderingEngine.d.ts +20 -0
- package/dist/esm/stateManagement/annotation/AnnotationRenderingEngine.js +112 -0
- package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.d.ts +3 -3
- package/dist/esm/stateManagement/annotation/annotationLocking.d.ts +1 -1
- package/dist/esm/stateManagement/annotation/annotationState.d.ts +2 -2
- package/dist/esm/stateManagement/annotation/annotationVisibility.d.ts +1 -1
- package/dist/esm/stateManagement/annotation/config/ToolStyle.d.ts +1 -1
- package/dist/esm/stateManagement/annotation/config/getFont.d.ts +2 -2
- package/dist/esm/stateManagement/annotation/config/getState.d.ts +1 -1
- package/dist/esm/stateManagement/annotation/config/helpers.d.ts +2 -2
- package/dist/esm/stateManagement/annotation/helpers/state.d.ts +2 -2
- package/dist/esm/stateManagement/annotation/utilities/defineProperties.d.ts +1 -1
- package/dist/esm/stateManagement/index.d.ts +3 -3
- package/dist/esm/stateManagement/index.js +2 -2
- package/dist/esm/{tools/displayTools → stateManagement/segmentation}/SegmentationRenderingEngine.d.ts +3 -3
- package/dist/esm/{tools/displayTools → stateManagement/segmentation}/SegmentationRenderingEngine.js +14 -17
- package/dist/esm/stateManagement/segmentation/SegmentationStateManager.d.ts +12 -12
- package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js +27 -19
- package/dist/esm/stateManagement/segmentation/activeSegmentation.d.ts +5 -4
- package/dist/esm/stateManagement/segmentation/activeSegmentation.js +12 -5
- package/dist/esm/stateManagement/segmentation/addRepresentationData.d.ts +3 -3
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentation.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/{addRepresentation.js → addSegmentationRepresentation.js} +6 -6
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.js +9 -0
- package/dist/esm/stateManagement/segmentation/addSegmentations.d.ts +1 -1
- 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.js +2 -2
- package/dist/esm/stateManagement/segmentation/config/segmentationConfig.d.ts +5 -5
- package/dist/esm/stateManagement/segmentation/config/segmentationConfig.js +5 -5
- package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.d.ts +5 -5
- package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.js +12 -12
- package/dist/esm/stateManagement/segmentation/convertStackToVolumeSegmentation.js +3 -7
- package/dist/esm/stateManagement/segmentation/convertVolumeToStackSegmentation.js +8 -53
- package/dist/esm/stateManagement/segmentation/helpers/clipAndCacheSurfacesForViewport.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/helpers/getSegmentationRepresentationRenderingConfig.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/helpers/{getRepresentationRenderingConfig.js → getSegmentationRepresentationRenderingConfig.js} +2 -2
- package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/index.d.ts +3 -3
- package/dist/esm/stateManagement/segmentation/index.js +3 -3
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/computeAndAddContourRepresentation.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/contourComputationStrategies.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/contourComputationStrategies.js +3 -3
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/utils/createAndAddContourSegmentationsFromClippedSurfaces.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Contour/utils/extractContourData.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/computeAndAddLabelmapRepresentation.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertContourToLabelmap.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertContourToLabelmap.js +12 -21
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertSurfaceToLabelmap.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertSurfaceToLabelmap.js +2 -6
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.js +8 -13
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/computeAndAddSurfaceRepresentation.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertContourToSurface.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertContourToSurface.js +2 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertLabelmapToSurface.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertLabelmapToSurface.js +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.js +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/surfaceComputationStrategies.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/polySeg/Surface/updateSurfaceData.js +4 -3
- package/dist/esm/stateManagement/segmentation/polySeg/canComputeRequestedRepresentation.js +2 -2
- package/dist/esm/stateManagement/segmentation/polySeg/computeAndAddRepresentation.d.ts +1 -1
- package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/{removeRepresentationsFromViewport.js → removeSegmentationRepresentations.js} +9 -6
- package/dist/esm/stateManagement/segmentation/segmentIndex.js +2 -2
- package/dist/esm/stateManagement/segmentation/segmentLocking.d.ts +2 -2
- package/dist/esm/stateManagement/segmentation/segmentLocking.js +2 -2
- package/dist/esm/stateManagement/segmentation/segmentationState.d.ts +16 -16
- package/dist/esm/stateManagement/segmentation/segmentationState.js +30 -30
- package/dist/esm/store/SynchronizerManager/Synchronizer.d.ts +7 -3
- package/dist/esm/store/SynchronizerManager/Synchronizer.js +2 -1
- package/dist/esm/store/SynchronizerManager/createSynchronizer.d.ts +3 -3
- package/dist/esm/store/SynchronizerManager/createSynchronizer.js +1 -1
- package/dist/esm/store/SynchronizerManager/getAllSynchronizers.d.ts +1 -1
- package/dist/esm/store/SynchronizerManager/getSynchronizer.d.ts +1 -1
- package/dist/esm/store/SynchronizerManager/getSynchronizersForViewport.d.ts +1 -1
- package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +3 -3
- package/dist/esm/store/ToolGroupManager/ToolGroup.js +5 -2
- package/dist/esm/store/ToolGroupManager/createToolGroup.d.ts +1 -1
- package/dist/esm/store/ToolGroupManager/destroyToolGroup.js +1 -0
- package/dist/esm/store/ToolGroupManager/getAllToolGroups.d.ts +1 -1
- package/dist/esm/store/ToolGroupManager/getToolGroup.d.ts +1 -1
- package/dist/esm/store/ToolGroupManager/getToolGroupForViewport.d.ts +1 -1
- package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.d.ts +1 -1
- package/dist/esm/store/addEnabledElement.d.ts +1 -1
- package/dist/esm/store/addEnabledElement.js +1 -1
- package/dist/esm/store/addTool.js +0 -3
- package/dist/esm/store/filterMoveableAnnotationTools.d.ts +1 -1
- package/dist/esm/store/filterToolsWithAnnotationsForElement.d.ts +1 -1
- package/dist/esm/store/filterToolsWithMoveableHandles.d.ts +1 -1
- package/dist/esm/store/removeEnabledElement.d.ts +1 -1
- package/dist/esm/store/removeEnabledElement.js +1 -1
- package/dist/esm/store/state.d.ts +4 -3
- package/dist/esm/store/state.js +1 -1
- package/dist/esm/synchronizers/callbacks/areViewportsCoplanar .d.ts +1 -1
- package/dist/esm/synchronizers/callbacks/cameraSyncCallback.d.ts +2 -2
- package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.d.ts +2 -2
- package/dist/esm/synchronizers/callbacks/presentationViewSyncCallback.d.ts +1 -1
- package/dist/esm/synchronizers/callbacks/slabThicknessSyncCallback.d.ts +1 -1
- package/dist/esm/synchronizers/callbacks/voiSyncCallback.d.ts +5 -2
- package/dist/esm/synchronizers/callbacks/zoomPanSyncCallback.d.ts +2 -2
- package/dist/esm/synchronizers/synchronizers/createCameraPositionSynchronizer.d.ts +1 -1
- package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.d.ts +1 -1
- package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.d.ts +2 -2
- package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.js +1 -1
- package/dist/esm/synchronizers/synchronizers/createSlabThicknessSynchronizer.d.ts +1 -1
- package/dist/esm/synchronizers/synchronizers/createVOISynchronizer.d.ts +1 -1
- package/dist/esm/synchronizers/synchronizers/createZoomPanSynchronizer.d.ts +1 -1
- package/dist/esm/tools/AdvancedMagnifyTool.d.ts +4 -6
- package/dist/esm/tools/AdvancedMagnifyViewport.js +1 -1
- package/dist/esm/tools/AdvancedMagnifyViewportManager.d.ts +3 -2
- package/dist/esm/tools/AdvancedMagnifyViewportManager.js +1 -1
- package/dist/esm/tools/AnnotationEraserTool.d.ts +1 -1
- package/dist/esm/tools/CrosshairsTool.d.ts +5 -5
- package/dist/esm/tools/CrosshairsTool.js +4 -3
- package/dist/esm/tools/MIPJumpToClickTool.d.ts +1 -2
- package/dist/esm/tools/MIPJumpToClickTool.js +2 -3
- package/dist/esm/tools/MagnifyTool.d.ts +2 -3
- package/dist/esm/tools/OrientationMarkerTool.d.ts +41 -58
- package/dist/esm/tools/OrientationMarkerTool.js +8 -7
- package/dist/esm/tools/OverlayGridTool.d.ts +2 -4
- package/dist/esm/tools/OverlayGridTool.js +1 -1
- package/dist/esm/tools/PanTool.d.ts +1 -1
- package/dist/esm/tools/PanTool.js +5 -0
- package/dist/esm/tools/PlanarRotateTool.d.ts +3 -1
- package/dist/esm/tools/PlanarRotateTool.js +18 -4
- package/dist/esm/tools/ReferenceCursors.d.ts +2 -5
- package/dist/esm/tools/ReferenceLinesTool.d.ts +4 -6
- package/dist/esm/tools/ReferenceLinesTool.js +1 -1
- package/dist/esm/tools/ScaleOverlayTool.d.ts +7 -9
- package/dist/esm/tools/ScaleOverlayTool.js +1 -2
- package/dist/esm/tools/SculptorTool/CircleSculptCursor.d.ts +4 -4
- package/dist/esm/tools/SculptorTool.d.ts +1 -1
- package/dist/esm/tools/SegmentationIntersectionTool.d.ts +2 -2
- package/dist/esm/tools/StackScrollTool.d.ts +2 -1
- package/dist/esm/tools/StackScrollTool.js +17 -3
- package/dist/esm/tools/StackScrollToolMouseWheelTool.d.ts +1 -2
- package/dist/esm/tools/StackScrollToolMouseWheelTool.js +1 -2
- package/dist/esm/tools/TrackballRotateTool.d.ts +1 -1
- package/dist/esm/tools/TrackballRotateTool.js +4 -0
- package/dist/esm/tools/VolumeRotateMouseWheelTool.d.ts +2 -3
- package/dist/esm/tools/WindowLevelRegionTool.d.ts +3 -3
- package/dist/esm/tools/WindowLevelRegionTool.js +1 -3
- package/dist/esm/tools/WindowLevelTool.d.ts +1 -1
- package/dist/esm/tools/WindowLevelTool.js +12 -7
- package/dist/esm/tools/ZoomTool.d.ts +2 -2
- package/dist/esm/tools/ZoomTool.js +2 -2
- package/dist/esm/tools/annotation/AngleTool.d.ts +5 -7
- package/dist/esm/tools/annotation/ArrowAnnotateTool.d.ts +5 -7
- package/dist/esm/tools/annotation/BidirectionalTool.d.ts +5 -7
- package/dist/esm/tools/annotation/CircleROITool.d.ts +5 -7
- package/dist/esm/tools/annotation/CircleROITool.js +8 -5
- package/dist/esm/tools/annotation/CobbAngleTool.d.ts +5 -7
- package/dist/esm/tools/annotation/DragProbeTool.d.ts +3 -5
- package/dist/esm/tools/annotation/DragProbeTool.js +0 -5
- package/dist/esm/tools/annotation/EllipticalROITool.d.ts +5 -7
- package/dist/esm/tools/annotation/EllipticalROITool.js +8 -3
- package/dist/esm/tools/annotation/HeightTool.d.ts +36 -0
- package/dist/esm/tools/annotation/HeightTool.js +435 -0
- package/dist/esm/tools/annotation/KeyImageTool.d.ts +4 -6
- package/dist/esm/tools/annotation/LengthTool.d.ts +5 -7
- package/dist/esm/tools/annotation/LengthTool.js +7 -5
- package/dist/esm/tools/annotation/LivewireContourTool.d.ts +3 -4
- package/dist/esm/tools/annotation/LivewireContourTool.js +2 -1
- package/dist/esm/tools/annotation/PlanarFreehandROITool.d.ts +21 -4
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js +155 -113
- package/dist/esm/tools/annotation/ProbeTool.d.ts +4 -6
- package/dist/esm/tools/annotation/ProbeTool.js +14 -29
- package/dist/esm/tools/annotation/RectangleROITool.d.ts +5 -5
- package/dist/esm/tools/annotation/RectangleROITool.js +7 -3
- package/dist/esm/tools/annotation/SplineContourSegmentationTool.d.ts +1 -1
- package/dist/esm/tools/annotation/SplineROITool.d.ts +1 -3
- package/dist/esm/tools/annotation/SplineROITool.js +2 -2
- package/dist/esm/tools/annotation/UltrasoundDirectionalTool.d.ts +5 -7
- package/dist/esm/tools/annotation/VideoRedactionTool.d.ts +4 -5
- package/dist/esm/tools/annotation/planarFreehandROITool/findOpenUShapedContourVectorToPeak.d.ts +1 -1
- package/dist/esm/tools/annotation/splines/CardinalSpline.d.ts +1 -1
- package/dist/esm/tools/annotation/splines/CubicSpline.d.ts +1 -1
- package/dist/esm/tools/annotation/splines/QuadraticSpline.d.ts +1 -1
- package/dist/esm/tools/annotation/splines/Spline.d.ts +1 -1
- package/dist/esm/tools/base/AnnotationDisplayTool.d.ts +3 -3
- package/dist/esm/tools/base/AnnotationDisplayTool.js +3 -9
- package/dist/esm/tools/base/AnnotationTool.d.ts +3 -14
- package/dist/esm/tools/base/BaseTool.d.ts +5 -5
- package/dist/esm/tools/base/BaseTool.js +1 -1
- package/dist/esm/tools/base/ContourBaseTool.d.ts +1 -1
- package/dist/esm/tools/base/ContourBaseTool.js +3 -3
- package/dist/esm/tools/base/ContourSegmentationBaseTool.js +10 -10
- package/dist/esm/tools/displayTools/Contour/contourConfig.d.ts +1 -1
- package/dist/esm/tools/displayTools/Contour/contourDisplay.d.ts +2 -2
- package/dist/esm/tools/displayTools/Contour/contourDisplay.js +2 -1
- package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.d.ts +2 -2
- package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.js +4 -4
- package/dist/esm/tools/displayTools/Contour/contourHandler/utils.d.ts +1 -1
- package/dist/esm/tools/displayTools/Contour/removeContourFromElement.js +2 -2
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +1 -1
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +3 -3
- package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.d.ts +1 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.d.ts +5 -5
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +10 -8
- package/dist/esm/tools/displayTools/Labelmap/validateLabelmap.d.ts +2 -2
- package/dist/esm/tools/displayTools/Surface/surfaceConfig.d.ts +1 -1
- package/dist/esm/tools/displayTools/Surface/surfaceDisplay.d.ts +2 -2
- package/dist/esm/tools/distancePointToContour.d.ts +1 -1
- package/dist/esm/tools/index.d.ts +2 -1
- package/dist/esm/tools/index.js +2 -1
- package/dist/esm/tools/segmentation/BrushTool.js +5 -5
- package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.d.ts +20 -15
- package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js +199 -67
- package/dist/esm/tools/segmentation/CircleScissorsTool.d.ts +3 -3
- package/dist/esm/tools/segmentation/CircleScissorsTool.js +10 -3
- package/dist/esm/tools/segmentation/PaintFillTool.d.ts +1 -1
- package/dist/esm/tools/segmentation/PaintFillTool.js +15 -14
- package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts +20 -10
- package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js +174 -55
- package/dist/esm/tools/segmentation/RectangleROIThresholdTool.d.ts +3 -3
- package/dist/esm/tools/segmentation/RectangleScissorsTool.d.ts +4 -3
- package/dist/esm/tools/segmentation/RectangleScissorsTool.js +8 -5
- package/dist/esm/tools/segmentation/SegmentSelectTool.d.ts +2 -2
- package/dist/esm/tools/segmentation/SegmentSelectTool.js +2 -2
- package/dist/esm/tools/segmentation/SphereScissorsTool.d.ts +3 -2
- package/dist/esm/tools/segmentation/SphereScissorsTool.js +12 -4
- package/dist/esm/tools/segmentation/strategies/BrushStrategy.d.ts +4 -5
- package/dist/esm/tools/segmentation/strategies/BrushStrategy.js +3 -1
- package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.js +6 -3
- package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js +1 -1
- package/dist/esm/tools/segmentation/strategies/compositions/islandRemoval.js +1 -1
- package/dist/esm/tools/segmentation/strategies/compositions/preview.js +2 -2
- package/dist/esm/tools/segmentation/strategies/compositions/regionFill.js +6 -3
- package/dist/esm/tools/segmentation/strategies/compositions/setValue.js +1 -1
- package/dist/esm/tools/segmentation/strategies/eraseRectangle.d.ts +1 -1
- package/dist/esm/tools/segmentation/strategies/fillCircle.js +1 -1
- package/dist/esm/tools/segmentation/strategies/fillRectangle.d.ts +1 -1
- package/dist/esm/tools/segmentation/strategies/fillRectangle.js +10 -7
- package/dist/esm/tools/segmentation/strategies/fillSphere.js +1 -1
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.d.ts +1 -1
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js +7 -24
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +9 -2
- package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.d.ts +3 -3
- package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.js +0 -3
- package/dist/esm/types/AnnotationGroupSelector.d.ts +1 -1
- package/dist/esm/types/AnnotationRenderContext.d.ts +3 -2
- package/dist/esm/types/AnnotationStyle.d.ts +2 -2
- package/dist/esm/types/AnnotationTypes.d.ts +3 -3
- package/dist/esm/types/BoundsIJK.d.ts +1 -1
- package/dist/esm/types/CINETypes.d.ts +1 -0
- package/dist/esm/types/CalculatorTypes.d.ts +1 -1
- package/dist/esm/types/CardinalSplineProps.d.ts +1 -1
- package/dist/esm/types/ClosestPoint.d.ts +1 -1
- package/dist/esm/types/ContourAnnotation.d.ts +1 -1
- package/dist/esm/types/ContourSegmentationAnnotation.d.ts +2 -2
- package/dist/esm/types/ControlPointInfo.d.ts +1 -1
- package/dist/esm/types/EventTypes.d.ts +13 -12
- package/dist/esm/types/FloodFillTypes.d.ts +2 -2
- package/dist/esm/types/IAnnotationManager.d.ts +3 -3
- package/dist/esm/types/IDistance.d.ts +1 -1
- package/dist/esm/types/IPoints.d.ts +2 -2
- package/dist/esm/types/ISetToolModeOptions.d.ts +2 -2
- package/dist/esm/types/ISpline.d.ts +1 -1
- package/dist/esm/types/ISynchronizerEventHandler.d.ts +3 -3
- package/dist/esm/types/IToolClassReference.d.ts +3 -3
- package/dist/esm/types/IToolGroup.d.ts +8 -8
- package/dist/esm/types/ITouchPoints.d.ts +2 -2
- package/dist/esm/types/InteractionTypes.d.ts +1 -1
- package/dist/esm/types/InternalToolTypes.d.ts +4 -4
- package/dist/esm/types/InterpolationTypes.d.ts +3 -3
- package/dist/esm/types/JumpToSliceOptions.d.ts +1 -1
- package/dist/esm/types/LabelmapToolOperationData.d.ts +3 -2
- package/dist/esm/types/PlanarBoundingBox.d.ts +1 -1
- package/dist/esm/types/SVGDrawingHelper.d.ts +1 -1
- package/dist/esm/types/ScrollOptions.d.ts +1 -1
- package/dist/esm/types/SegmentationStateTypes.d.ts +7 -6
- package/dist/esm/types/SplineCurveSegment.d.ts +1 -1
- package/dist/esm/types/SplineLineSegment.d.ts +1 -1
- package/dist/esm/types/ToolAction.d.ts +1 -1
- package/dist/esm/types/ToolHandle.d.ts +1 -1
- package/dist/esm/types/ToolProps.d.ts +1 -1
- package/dist/esm/types/ToolSpecificAnnotationTypes.d.ts +34 -12
- package/dist/esm/types/index.d.ts +2 -2
- package/dist/esm/utilities/annotationFrameRange.d.ts +1 -1
- package/dist/esm/utilities/annotationHydration.d.ts +3 -2
- package/dist/esm/utilities/cine/playClip.d.ts +6 -2
- package/dist/esm/utilities/cine/playClip.js +53 -6
- package/dist/esm/utilities/cine/state.d.ts +1 -1
- package/dist/esm/utilities/contourSegmentation/addContourSegmentationAnnotation.d.ts +1 -1
- package/dist/esm/utilities/contourSegmentation/areSameSegment.d.ts +1 -1
- package/dist/esm/utilities/contourSegmentation/isContourSegmentationAnnotation.d.ts +2 -2
- package/dist/esm/utilities/contourSegmentation/removeContourSegmentationAnnotation.d.ts +1 -1
- package/dist/esm/utilities/contours/AnnotationToPointData.d.ts +1 -1
- package/dist/esm/utilities/contours/areCoplanarContours.d.ts +1 -1
- package/dist/esm/utilities/contours/findHandlePolylineIndex.d.ts +1 -1
- package/dist/esm/utilities/contours/interpolation/createPolylineToolData.d.ts +1 -1
- package/dist/esm/utilities/contours/interpolation/getInterpolationData.d.ts +1 -1
- package/dist/esm/utilities/contours/interpolation/interpolate.d.ts +1 -1
- package/dist/esm/utilities/contours/reverseIfAntiClockwise.d.ts +1 -1
- package/dist/esm/utilities/contours/updateContourPolyline.d.ts +1 -1
- package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.d.ts +3 -2
- package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.js +31 -23
- package/dist/esm/utilities/dynamicVolume/getDataInTime.d.ts +1 -1
- package/dist/esm/utilities/dynamicVolume/getDataInTime.js +14 -9
- package/dist/esm/utilities/getAnnotationNearPoint.d.ts +1 -1
- package/dist/esm/utilities/getCalibratedUnits.d.ts +0 -6
- package/dist/esm/utilities/getCalibratedUnits.js +13 -4
- package/dist/esm/utilities/getPixelValueUnits.d.ts +2 -1
- package/dist/esm/utilities/getPixelValueUnits.js +1 -0
- package/dist/esm/utilities/getSphereBoundsInfo.d.ts +1 -1
- package/dist/esm/utilities/getToolsWithModesForElement.d.ts +1 -1
- package/dist/esm/utilities/getVOIMultipliers.d.ts +1 -1
- package/dist/esm/utilities/index.d.ts +1 -3
- package/dist/esm/utilities/index.js +1 -3
- package/dist/esm/utilities/livewire/LiveWirePath.d.ts +1 -1
- package/dist/esm/utilities/livewire/LivewireScissors.d.ts +1 -1
- package/dist/esm/utilities/math/aabb/distanceToPoint.d.ts +1 -1
- package/dist/esm/utilities/math/aabb/distanceToPointSquared.d.ts +1 -1
- package/dist/esm/utilities/math/aabb/intersectAABB.d.ts +1 -1
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.d.ts +2 -2
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.js +1 -1
- package/dist/esm/utilities/math/basic/Calculator.d.ts +1 -1
- package/dist/esm/utilities/math/circle/getCanvasCircleCorners.d.ts +1 -1
- package/dist/esm/utilities/math/circle/getCanvasCircleRadius.d.ts +1 -1
- package/dist/esm/utilities/math/line/distanceToPointSquared.d.ts +1 -1
- package/dist/esm/utilities/math/midPoint.d.ts +1 -1
- package/dist/esm/utilities/math/point/mirror.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/addCanvasPointsToArray.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/combinePolyline.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/getAABB.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/getLinesIntersection.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/getNormal2.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/getNormal3.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/intersectPolyline.d.ts +1 -1
- package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts +2 -2
- package/dist/esm/utilities/math/sphere/pointInSphere.d.ts +1 -1
- package/dist/esm/utilities/orientation/getOrientationStringLPS.d.ts +1 -1
- package/dist/esm/utilities/planar/filterAnnotationsForDisplay.d.ts +1 -1
- package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.d.ts +3 -0
- package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.js +26 -0
- package/dist/esm/utilities/planar/filterAnnotationsWithinSlice.d.ts +1 -1
- package/dist/esm/utilities/planar/index.d.ts +3 -1
- package/dist/esm/utilities/planar/index.js +3 -1
- package/dist/esm/utilities/planarFreehandROITool/interpolation/algorithms/bspline.d.ts +1 -1
- package/dist/esm/utilities/planarFreehandROITool/interpolation/interpolateSegmentPoints.d.ts +1 -1
- package/dist/esm/utilities/planarFreehandROITool/smoothAnnotation.d.ts +2 -2
- package/dist/esm/utilities/planarFreehandROITool/smoothPoints.d.ts +11 -3
- package/dist/esm/utilities/polyData/utils.d.ts +1 -1
- package/dist/esm/utilities/scroll.d.ts +4 -3
- package/dist/esm/utilities/scroll.js +3 -10
- package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.d.ts +1 -1
- package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.d.ts +2 -11
- package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js +1 -1
- package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.d.ts +1 -1
- package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.js +7 -7
- package/dist/esm/utilities/segmentation/floodFill.d.ts +1 -1
- package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.d.ts +1 -1
- package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.js +8 -5
- package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.d.ts +1 -1
- package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.js +7 -4
- package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.js +4 -5
- package/dist/esm/utilities/segmentation/index.d.ts +2 -2
- package/dist/esm/utilities/segmentation/index.js +2 -2
- package/dist/esm/utilities/segmentation/isValidRepresentationConfig.d.ts +1 -1
- package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.d.ts +1 -1
- package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.js +3 -2
- package/dist/esm/utilities/segmentation/segmentContourAction.d.ts +1 -1
- package/dist/esm/utilities/segmentation/segmentContourAction.js +4 -4
- package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.d.ts +2 -2
- package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.js +24 -17
- package/dist/esm/utilities/segmentation/thresholdVolumeByRange.d.ts +3 -3
- package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +21 -12
- package/dist/esm/utilities/segmentation/triggerSegmentationRender.d.ts +3 -3
- package/dist/esm/utilities/segmentation/triggerSegmentationRender.js +7 -5
- package/dist/esm/utilities/segmentation/utilities.d.ts +12 -2
- package/dist/esm/utilities/segmentation/utilities.js +5 -6
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +30 -25
- package/dist/esm/utilities/stackPrefetch/stackPrefetch.js +3 -8
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +2 -3
- package/dist/esm/utilities/stackPrefetch/state.d.ts +20 -1
- package/dist/esm/utilities/touch/index.d.ts +1 -1
- package/dist/esm/utilities/triggerAnnotationRender.d.ts +0 -20
- package/dist/esm/utilities/triggerAnnotationRender.js +1 -112
- package/dist/esm/utilities/viewport/isViewportPreScaled.d.ts +1 -1
- package/dist/esm/utilities/viewport/isViewportPreScaled.js +2 -5
- package/dist/esm/utilities/viewport/jumpToSlice.d.ts +1 -1
- package/dist/esm/utilities/viewport/jumpToSlice.js +4 -6
- package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.d.ts +2 -2
- package/dist/esm/utilities/voi/colorbar/ViewportColorbar.d.ts +1 -1
- package/dist/esm/utilities/voi/colorbar/ViewportColorbar.js +1 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.d.ts +1 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.d.ts +1 -1
- package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.d.ts +3 -3
- package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.d.ts +8 -0
- package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.js +4 -10
- package/dist/esm/widgets/types/index.d.ts +2 -2
- package/dist/esm/workers/polySegConverters.js +65 -32
- package/dist/umd/78.index.js +1 -1
- package/dist/umd/78.index.js.map +1 -1
- package/dist/umd/985.index.js +1 -1
- package/dist/umd/985.index.js.map +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +5 -7
- package/dist/esm/stateManagement/segmentation/addRepresentation.d.ts +0 -3
- package/dist/esm/stateManagement/segmentation/addRepresentations.d.ts +0 -3
- package/dist/esm/stateManagement/segmentation/addRepresentations.js +0 -9
- package/dist/esm/stateManagement/segmentation/helpers/getRepresentationRenderingConfig.d.ts +0 -2
- package/dist/esm/stateManagement/segmentation/removeRepresentationsFromViewport.d.ts +0 -2
- package/dist/esm/utilities/pointInShapeCallback.d.ts +0 -18
- package/dist/esm/utilities/pointInShapeCallback.js +0 -82
- package/dist/esm/utilities/pointInSurroundingSphereCallback.d.ts +0 -4
- package/dist/esm/utilities/pointInSurroundingSphereCallback.js +0 -63
- package/dist/esm/utilities/segmentation/triggerSegmentationRenderForViewports.d.ts +0 -3
- package/dist/esm/utilities/segmentation/triggerSegmentationRenderForViewports.js +0 -6
package/dist/esm/stateManagement/segmentation/polySeg/Contour/contourComputationStrategies.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { cache } from '@cornerstonejs/core';
|
|
2
2
|
import { getUniqueSegmentIndices } from '../../../../utilities/segmentation';
|
|
3
|
-
import { getSegmentation,
|
|
3
|
+
import { getSegmentation, setSegmentationRepresentationConfig, } from '../../segmentationState';
|
|
4
4
|
import { computeSurfaceFromLabelmapSegmentation } from '../Surface/surfaceComputationStrategies';
|
|
5
|
-
import { clipAndCacheSurfacesForViewport
|
|
5
|
+
import { clipAndCacheSurfacesForViewport } from '../../helpers/clipAndCacheSurfacesForViewport';
|
|
6
6
|
import { extractContourData } from './utils/extractContourData';
|
|
7
7
|
import { createAndAddContourSegmentationsFromClippedSurfaces } from './utils/createAndAddContourSegmentationsFromClippedSurfaces';
|
|
8
8
|
export async function computeContourData(segmentationId, options = {}) {
|
|
@@ -35,7 +35,7 @@ export async function computeContourData(segmentationId, options = {}) {
|
|
|
35
35
|
}
|
|
36
36
|
const { viewport, segmentationRepresentationUID } = options;
|
|
37
37
|
const annotationUIDsMap = createAndAddContourSegmentationsFromClippedSurfaces(rawContourData, viewport, segmentationId);
|
|
38
|
-
|
|
38
|
+
setSegmentationRepresentationConfig(segmentationRepresentationUID, {
|
|
39
39
|
CONTOUR: {
|
|
40
40
|
fillAlpha: 0,
|
|
41
41
|
},
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { RawContourData } from '../contourComputationStrategies';
|
|
1
|
+
import type { RawContourData } from '../contourComputationStrategies';
|
|
2
2
|
import { type Types } from '@cornerstonejs/core';
|
|
3
3
|
export declare function createAndAddContourSegmentationsFromClippedSurfaces(rawContourData: RawContourData, viewport: Types.IViewport, segmentationId: string): Map<number, Set<string>>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { PolyDataClipCacheType } from '../../../helpers/clipAndCacheSurfacesForViewport';
|
|
2
|
-
import { RawContourData } from '../contourComputationStrategies';
|
|
1
|
+
import type { PolyDataClipCacheType } from '../../../helpers/clipAndCacheSurfacesForViewport';
|
|
2
|
+
import type { RawContourData } from '../contourComputationStrategies';
|
|
3
3
|
export declare function extractContourData(polyDataCache: PolyDataClipCacheType, segmentIndexMap?: Map<string, number>): RawContourData;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { PolySegConversionOptions } from '../../../../types';
|
|
1
|
+
import type { PolySegConversionOptions } from '../../../../types';
|
|
2
2
|
export declare function computeAndAddLabelmapRepresentation(segmentationId: string, options?: PolySegConversionOptions): Promise<import("./labelmapComputationStrategies").RawLabelmapData>;
|
package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertContourToLabelmap.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ContourSegmentationData, PolySegConversionOptions } from '../../../../types';
|
|
1
|
+
import type { ContourSegmentationData, PolySegConversionOptions } from '../../../../types';
|
|
2
2
|
export declare function convertContourToVolumeLabelmap(contourRepresentationData: ContourSegmentationData, options?: PolySegConversionOptions): Promise<{
|
|
3
3
|
volumeId: string;
|
|
4
4
|
}>;
|
|
@@ -10,29 +10,23 @@ const triggerWorkerProgress = (eventTarget, progress) => {
|
|
|
10
10
|
});
|
|
11
11
|
};
|
|
12
12
|
export async function convertContourToVolumeLabelmap(contourRepresentationData, options = {}) {
|
|
13
|
-
const
|
|
13
|
+
const viewport = options.viewport;
|
|
14
|
+
const volumeId = viewport.getVolumeId();
|
|
14
15
|
const imageIds = utilities.getViewportImageIds(viewport);
|
|
15
16
|
if (!imageIds) {
|
|
16
17
|
throw new Error('No imageIds found, labelmap computation from contour requires viewports with imageIds');
|
|
17
18
|
}
|
|
18
19
|
const segmentationVolumeId = utilities.uuidv4();
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
origin,
|
|
24
|
-
direction,
|
|
25
|
-
spacing,
|
|
26
|
-
metadata,
|
|
27
|
-
imageIds: imageIds.map((imageId) => `generated://${imageId}`),
|
|
28
|
-
referencedImageIds: imageIds,
|
|
29
|
-
}, segmentationVolumeId);
|
|
20
|
+
const segmentationVolume = volumeLoader.createAndCacheDerivedSegmentationVolume(volumeId, {
|
|
21
|
+
volumeId: segmentationVolumeId,
|
|
22
|
+
});
|
|
23
|
+
const { dimensions, origin, direction, spacing, voxelManager } = segmentationVolume;
|
|
30
24
|
const { segmentIndices, annotationUIDsInSegmentMap } = _getAnnotationMapFromSegmentation(contourRepresentationData, options);
|
|
31
25
|
triggerWorkerProgress(eventTarget, 0);
|
|
32
26
|
const newScalarData = await workerManager.executeTask('polySeg', 'convertContourToVolumeLabelmap', {
|
|
33
27
|
segmentIndices,
|
|
34
28
|
dimensions,
|
|
35
|
-
scalarData,
|
|
29
|
+
scalarData: voxelManager.getCompleteScalarDataArray?.(),
|
|
36
30
|
origin,
|
|
37
31
|
direction,
|
|
38
32
|
spacing,
|
|
@@ -45,11 +39,7 @@ export async function convertContourToVolumeLabelmap(contourRepresentationData,
|
|
|
45
39
|
],
|
|
46
40
|
});
|
|
47
41
|
triggerWorkerProgress(eventTarget, 1);
|
|
48
|
-
|
|
49
|
-
.getPointData()
|
|
50
|
-
.getScalars()
|
|
51
|
-
.setData(newScalarData);
|
|
52
|
-
segmentationVolume.imageData.modified();
|
|
42
|
+
voxelManager.setCompleteScalarDataArray(newScalarData);
|
|
53
43
|
segmentationVolume.modified();
|
|
54
44
|
return {
|
|
55
45
|
volumeId: segmentationVolume.volumeId,
|
|
@@ -69,7 +59,8 @@ export async function convertContourToStackLabelmap(contourRepresentationData, o
|
|
|
69
59
|
throw new Error('ImageIds must be cached before converting contour to labelmap');
|
|
70
60
|
}
|
|
71
61
|
});
|
|
72
|
-
const
|
|
62
|
+
const segImages = await imageLoader.createAndCacheDerivedSegmentationImages(imageIds);
|
|
63
|
+
const segmentationImageIds = segImages.map((it) => it.imageId);
|
|
73
64
|
const { segmentIndices, annotationUIDsInSegmentMap } = _getAnnotationMapFromSegmentation(contourRepresentationData, options);
|
|
74
65
|
const segmentationsInfo = new Map();
|
|
75
66
|
segmentationImageIds.forEach((segImageId, index) => {
|
|
@@ -92,7 +83,7 @@ export async function convertContourToStackLabelmap(contourRepresentationData, o
|
|
|
92
83
|
direction,
|
|
93
84
|
spacing,
|
|
94
85
|
origin,
|
|
95
|
-
scalarData: segImage.
|
|
86
|
+
scalarData: segImage.voxelManager.getScalarData(),
|
|
96
87
|
imageId: segImageId,
|
|
97
88
|
dimensions: [segImage.width, segImage.height, 1],
|
|
98
89
|
});
|
|
@@ -115,7 +106,7 @@ export async function convertContourToStackLabelmap(contourRepresentationData, o
|
|
|
115
106
|
const segmentationInfo = segmentationsInfo.get(referencedImageId);
|
|
116
107
|
const { imageId: segImageId } = segmentationInfo;
|
|
117
108
|
const segImage = cache.getImage(segImageId);
|
|
118
|
-
segImage.
|
|
109
|
+
segImage.voxelManager.getScalarData().set(scalarData);
|
|
119
110
|
segImage.imageFrame?.pixelData?.set(scalarData);
|
|
120
111
|
segImageIds.push(segImageId);
|
|
121
112
|
});
|
package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertSurfaceToLabelmap.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Types } from '@cornerstonejs/core';
|
|
2
|
-
import { SurfaceSegmentationData } from '../../../../types/SurfaceTypes';
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
import type { SurfaceSegmentationData } from '../../../../types/SurfaceTypes';
|
|
3
3
|
export declare function convertSurfaceToVolumeLabelmap(surfaceRepresentationData: SurfaceSegmentationData, segmentationVolume: Types.IImageVolume): Promise<{
|
|
4
4
|
volumeId: string;
|
|
5
5
|
}>;
|
|
@@ -23,7 +23,7 @@ export async function convertSurfaceToVolumeLabelmap(surfaceRepresentationData,
|
|
|
23
23
|
polys,
|
|
24
24
|
});
|
|
25
25
|
});
|
|
26
|
-
const { dimensions, direction, origin, spacing } = segmentationVolume;
|
|
26
|
+
const { dimensions, direction, origin, spacing, voxelManager } = segmentationVolume;
|
|
27
27
|
triggerWorkerProgress(eventTarget, 0);
|
|
28
28
|
const newScalarData = await workerManager.executeTask('polySeg', 'convertSurfacesToVolumeLabelmap', {
|
|
29
29
|
segmentsInfo,
|
|
@@ -39,11 +39,7 @@ export async function convertSurfaceToVolumeLabelmap(surfaceRepresentationData,
|
|
|
39
39
|
],
|
|
40
40
|
});
|
|
41
41
|
triggerWorkerProgress(eventTarget, 1);
|
|
42
|
-
|
|
43
|
-
.getPointData()
|
|
44
|
-
.getScalars()
|
|
45
|
-
.setData(newScalarData);
|
|
46
|
-
segmentationVolume.imageData.modified();
|
|
42
|
+
voxelManager.setCompleteScalarDataArray(newScalarData);
|
|
47
43
|
segmentationVolume.modified();
|
|
48
44
|
return {
|
|
49
45
|
volumeId: segmentationVolume.volumeId,
|
package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { LabelmapSegmentationDataStack, LabelmapSegmentationDataVolume } from '../../../../types/LabelmapTypes';
|
|
2
|
-
import { PolySegConversionOptions } from '../../../../types';
|
|
1
|
+
import type { LabelmapSegmentationDataStack, LabelmapSegmentationDataVolume } from '../../../../types/LabelmapTypes';
|
|
2
|
+
import type { PolySegConversionOptions } from '../../../../types';
|
|
3
3
|
export type RawLabelmapData = LabelmapSegmentationDataVolume | LabelmapSegmentationDataStack;
|
|
4
4
|
export declare function computeLabelmapData(segmentationId: string, options?: PolySegConversionOptions): Promise<RawLabelmapData>;
|
|
5
5
|
declare function computeLabelmapFromContourSegmentation(segmentationId: any, options?: PolySegConversionOptions): Promise<LabelmapSegmentationDataVolume | LabelmapSegmentationDataStack>;
|
package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VolumeViewport, volumeLoader, utilities } from '@cornerstonejs/core';
|
|
1
|
+
import { VolumeViewport, volumeLoader, utilities, imageLoader, } from '@cornerstonejs/core';
|
|
2
2
|
import { getUniqueSegmentIndices } from '../../../../utilities/segmentation';
|
|
3
3
|
import { getSegmentation } from '../../segmentationState';
|
|
4
4
|
import { convertContourToStackLabelmap, convertContourToVolumeLabelmap, } from './convertContourToLabelmap';
|
|
@@ -55,7 +55,8 @@ async function computeLabelmapFromContourSegmentation(segmentationId, options =
|
|
|
55
55
|
return result;
|
|
56
56
|
}
|
|
57
57
|
async function computeLabelmapFromSurfaceSegmentation(segmentationId, options = {}) {
|
|
58
|
-
const
|
|
58
|
+
const { viewport } = options;
|
|
59
|
+
const isVolume = viewport instanceof VolumeViewport ?? true;
|
|
59
60
|
const segmentIndices = options.segmentIndices?.length
|
|
60
61
|
? options.segmentIndices
|
|
61
62
|
: getUniqueSegmentIndices(segmentationId);
|
|
@@ -67,26 +68,20 @@ async function computeLabelmapFromSurfaceSegmentation(segmentationId, options =
|
|
|
67
68
|
segmentsGeometryIds.set(segmentIndex, geometryId);
|
|
68
69
|
}
|
|
69
70
|
});
|
|
70
|
-
if (isVolume && !
|
|
71
|
+
if (isVolume && !viewport) {
|
|
71
72
|
throw new Error('Cannot compute labelmap from surface segmentation without providing the viewport');
|
|
72
73
|
}
|
|
73
74
|
let segmentationVolume;
|
|
74
75
|
if (isVolume) {
|
|
75
|
-
const
|
|
76
|
-
const { uid: volumeId } = defaultActor;
|
|
76
|
+
const volumeId = viewport.getVolumeId();
|
|
77
77
|
segmentationVolume =
|
|
78
78
|
await volumeLoader.createAndCacheDerivedSegmentationVolume(volumeId);
|
|
79
79
|
}
|
|
80
80
|
else {
|
|
81
81
|
const imageIds = options.viewport.getImageIds();
|
|
82
|
-
const
|
|
83
|
-
const
|
|
84
|
-
|
|
85
|
-
segmentationVolume = await volumeLoader.createLocalSegmentationVolume({
|
|
86
|
-
...volumeProps,
|
|
87
|
-
scalarData: volumeProps.scalarData,
|
|
88
|
-
referencedImageIds: imageIds,
|
|
89
|
-
}, volumeId);
|
|
82
|
+
const segImages = imageLoader.createAndCacheDerivedSegmentationImages(imageIds);
|
|
83
|
+
const segImageIds = segImages.map((image) => image.imageId);
|
|
84
|
+
segmentationVolume = await volumeLoader.createAndCacheVolumeFromImages('generatedSegmentationVolumeId', segImageIds);
|
|
90
85
|
}
|
|
91
86
|
const result = await convertSurfaceToVolumeLabelmap({ geometryIds: segmentsGeometryIds }, segmentationVolume);
|
|
92
87
|
if (isVolume) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PolySegConversionOptions } from '../../../../types';
|
|
1
|
+
import type { PolySegConversionOptions } from '../../../../types';
|
|
2
2
|
export declare function computeAndAddSurfaceRepresentation(segmentationId: string, options?: PolySegConversionOptions): Promise<{
|
|
3
3
|
geometryIds: Map<number, string>;
|
|
4
4
|
}>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Types } from '@cornerstonejs/core';
|
|
2
|
-
import { ContourSegmentationData } from '../../../../types';
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
import type { ContourSegmentationData } from '../../../../types';
|
|
3
3
|
export declare function convertContourToSurface(contourRepresentationData: ContourSegmentationData, segmentIndex: number): Promise<Types.SurfaceData>;
|
|
@@ -16,7 +16,8 @@ export async function convertContourToSurface(contourRepresentationData, segment
|
|
|
16
16
|
const annotationUIDs = annotationUIDsMap.get(segmentIndex);
|
|
17
17
|
for (const annotationUID of annotationUIDs) {
|
|
18
18
|
const annotation = getAnnotation(annotationUID);
|
|
19
|
-
const { polyline } = annotation.data
|
|
19
|
+
const { polyline } = annotation.data
|
|
20
|
+
.contour;
|
|
20
21
|
numPointsArray.push(polyline.length);
|
|
21
22
|
polyline.forEach((polyline) => polylines.push(...polyline));
|
|
22
23
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Types } from '@cornerstonejs/core';
|
|
2
|
-
import { LabelmapSegmentationData } from '../../../../types/LabelmapTypes';
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
import type { LabelmapSegmentationData } from '../../../../types/LabelmapTypes';
|
|
3
3
|
export declare function convertLabelmapToSurface(labelmapRepresentationData: LabelmapSegmentationData, segmentIndex: number, isVolume?: boolean): Promise<Types.SurfaceData>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cache, eventTarget, triggerEvent, Enums
|
|
1
|
+
import { cache, eventTarget, triggerEvent, Enums } from '@cornerstonejs/core';
|
|
2
2
|
import { getWebWorkerManager } from '@cornerstonejs/core';
|
|
3
3
|
import { computeVolumeSegmentationFromStack } from '../../convertStackToVolumeSegmentation';
|
|
4
4
|
import { WorkerTypes } from '../../../../enums';
|
|
@@ -22,7 +22,7 @@ export async function convertLabelmapToSurface(labelmapRepresentationData, segme
|
|
|
22
22
|
}));
|
|
23
23
|
}
|
|
24
24
|
const volume = cache.getVolume(volumeId);
|
|
25
|
-
const scalarData = volume.
|
|
25
|
+
const scalarData = volume.voxelManager.getCompleteScalarDataArray();
|
|
26
26
|
const { dimensions, spacing, origin, direction } = volume;
|
|
27
27
|
triggerWorkerProgress(eventTarget, 0);
|
|
28
28
|
const results = await workerManager.executeTask('polySeg', 'convertLabelmapToSurface', {
|
package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { RawSurfacesData } from './surfaceComputationStrategies';
|
|
2
|
-
import { PolySegConversionOptions } from '../../../../types';
|
|
1
|
+
import type { RawSurfacesData } from './surfaceComputationStrategies';
|
|
2
|
+
import type { PolySegConversionOptions } from '../../../../types';
|
|
3
3
|
export declare function createAndCacheSurfacesFromRaw(segmentationId: string, rawSurfacesData: RawSurfacesData, options?: PolySegConversionOptions): Promise<{
|
|
4
4
|
geometryIds: Map<number, string>;
|
|
5
5
|
}>;
|
package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Enums, geometryLoader } from '@cornerstonejs/core';
|
|
2
2
|
import { getSegmentIndexColor } from '../../config/segmentationColor';
|
|
3
|
-
import {
|
|
3
|
+
import { getSegmentationRepresentation, getSegmentation, } from '../../segmentationState';
|
|
4
4
|
export async function createAndCacheSurfacesFromRaw(segmentationId, rawSurfacesData, options = {}) {
|
|
5
5
|
let segmentationRepresentation;
|
|
6
6
|
if (options.segmentationRepresentationUID) {
|
|
7
|
-
segmentationRepresentation =
|
|
7
|
+
segmentationRepresentation = getSegmentationRepresentation(options.segmentationRepresentationUID);
|
|
8
8
|
}
|
|
9
9
|
const segmentation = getSegmentation(segmentationId);
|
|
10
10
|
const geometryIds = new Map();
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { cache } from '@cornerstonejs/core';
|
|
2
2
|
import { getUniqueSegmentIndices } from '../../../../utilities/segmentation';
|
|
3
|
-
import { getSegmentation,
|
|
3
|
+
import { getSegmentation, getAllSegmentationRepresentations, getSegmentationRepresentations, getViewportIdsWithSegmentation, } from '../../segmentationState';
|
|
4
4
|
import { triggerSegmentationModified } from '../../triggerSegmentationEvents';
|
|
5
5
|
import { SegmentationRepresentations } from '../../../../enums';
|
|
6
6
|
import { computeSurfaceFromLabelmapSegmentation } from './surfaceComputationStrategies';
|
|
7
7
|
import { createAndCacheSurfacesFromRaw } from './createAndCacheSurfacesFromRaw';
|
|
8
|
+
import { viewport } from '../../../../utilities';
|
|
8
9
|
export async function updateSurfaceData(segmentationId) {
|
|
9
10
|
const surfacesObj = await computeSurfaceFromLabelmapSegmentation(segmentationId);
|
|
10
11
|
if (!surfacesObj) {
|
|
@@ -27,9 +28,9 @@ export async function updateSurfaceData(segmentationId) {
|
|
|
27
28
|
const geometryId = `segmentation_${segmentationId}_surface_${segmentIndex}`;
|
|
28
29
|
const geometry = cache.getGeometry(geometryId);
|
|
29
30
|
if (!geometry) {
|
|
30
|
-
const viewportIds =
|
|
31
|
+
const viewportIds = getViewportIdsWithSegmentation(segmentationId);
|
|
31
32
|
return viewportIds.map((viewportId) => {
|
|
32
|
-
const segmentationRepresentations =
|
|
33
|
+
const segmentationRepresentations = getSegmentationRepresentations(viewportId);
|
|
33
34
|
return segmentationRepresentations.map((segmentationRepresentation) => {
|
|
34
35
|
if (segmentationRepresentation.type !==
|
|
35
36
|
SegmentationRepresentations.Surface) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SegmentationRepresentations } from '../../../enums';
|
|
2
2
|
import { validateLabelmap } from '../../../tools/displayTools/Labelmap';
|
|
3
|
-
import {
|
|
3
|
+
import { getSegmentationRepresentation, getSegmentation, } from '../segmentationState';
|
|
4
4
|
const conversionPaths = new Map([
|
|
5
5
|
[
|
|
6
6
|
SegmentationRepresentations.Labelmap,
|
|
@@ -22,7 +22,7 @@ const conversionPaths = new Map([
|
|
|
22
22
|
],
|
|
23
23
|
]);
|
|
24
24
|
function canComputeRequestedRepresentation(segmentationRepresentationUID) {
|
|
25
|
-
const segmentationRepresentation =
|
|
25
|
+
const segmentationRepresentation = getSegmentationRepresentation(segmentationRepresentationUID);
|
|
26
26
|
const { type: representationType, polySeg } = segmentationRepresentation;
|
|
27
27
|
if (!polySeg || !polySeg.enabled) {
|
|
28
28
|
return false;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { SegmentationRepresentations } from '../../../enums';
|
|
1
|
+
import type { SegmentationRepresentations } from '../../../enums';
|
|
2
2
|
declare function computeAndAddRepresentation<T>(segmentationId: string, representationType: SegmentationRepresentations, computeFunction: () => Promise<T>, updateFunction?: () => void): Promise<T>;
|
|
3
3
|
export { computeAndAddRepresentation };
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import SegmentationRepresentations from '../../enums/SegmentationRepresentations';
|
|
2
2
|
import { labelmapDisplay } from '../../tools/displayTools/Labelmap';
|
|
3
3
|
import { contourDisplay } from '../../tools/displayTools/Contour';
|
|
4
|
-
import {
|
|
5
|
-
function
|
|
4
|
+
import { getSegmentationRepresentation } from './segmentationState';
|
|
5
|
+
function removeSegmentationRepresentations(viewportId, segmentationRepresentationUIDs, immediate) {
|
|
6
|
+
if (!segmentationRepresentationUIDs) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
6
9
|
segmentationRepresentationUIDs.forEach((segmentationDataUID) => {
|
|
7
|
-
|
|
10
|
+
_removeRepresentation(viewportId, segmentationDataUID, immediate);
|
|
8
11
|
});
|
|
9
12
|
}
|
|
10
|
-
function
|
|
11
|
-
const segmentationRepresentation =
|
|
13
|
+
function _removeRepresentation(viewportId, segmentationRepresentationUID, immediate) {
|
|
14
|
+
const segmentationRepresentation = getSegmentationRepresentation(segmentationRepresentationUID);
|
|
12
15
|
const { type } = segmentationRepresentation;
|
|
13
16
|
if (type === SegmentationRepresentations.Labelmap) {
|
|
14
17
|
labelmapDisplay.removeRepresentation(viewportId, segmentationRepresentationUID, immediate);
|
|
@@ -20,4 +23,4 @@ function _removeSegmentation(viewportId, segmentationRepresentationUID, immediat
|
|
|
20
23
|
throw new Error(`The representation ${type} is not supported yet`);
|
|
21
24
|
}
|
|
22
25
|
}
|
|
23
|
-
export default
|
|
26
|
+
export default removeSegmentationRepresentations;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getToolGroupForViewport } from '../../store/ToolGroupManager';
|
|
2
2
|
import { invalidateBrushCursor } from '../../utilities/segmentation/';
|
|
3
|
-
import { getSegmentation,
|
|
3
|
+
import { getSegmentation, getViewportIdsWithSegmentation, } from './segmentationState';
|
|
4
4
|
import { triggerSegmentationModified } from './triggerSegmentationEvents';
|
|
5
5
|
function setActiveSegmentIndex(segmentationId, segmentIndex) {
|
|
6
6
|
const segmentation = getSegmentation(segmentationId);
|
|
@@ -12,7 +12,7 @@ function setActiveSegmentIndex(segmentationId, segmentIndex) {
|
|
|
12
12
|
segmentation.activeSegmentIndex = segmentIndex;
|
|
13
13
|
triggerSegmentationModified(segmentationId);
|
|
14
14
|
}
|
|
15
|
-
const viewportIds =
|
|
15
|
+
const viewportIds = getViewportIdsWithSegmentation(segmentationId);
|
|
16
16
|
viewportIds.forEach((viewportId) => {
|
|
17
17
|
const toolGroup = getToolGroupForViewport(viewportId);
|
|
18
18
|
invalidateBrushCursor(toolGroup.id);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
declare function isSegmentIndexLocked(segmentationId: string, segmentIndex: number): boolean;
|
|
2
2
|
declare function setSegmentIndexLocked(segmentationId: string, segmentIndex: number, locked?: boolean): void;
|
|
3
|
-
declare function
|
|
4
|
-
export { isSegmentIndexLocked, setSegmentIndexLocked,
|
|
3
|
+
declare function getLockedSegmentIndices(segmentationId: string): number[] | [];
|
|
4
|
+
export { isSegmentIndexLocked, setSegmentIndexLocked, getLockedSegmentIndices };
|
|
@@ -22,7 +22,7 @@ function setSegmentIndexLocked(segmentationId, segmentIndex, locked = true) {
|
|
|
22
22
|
}
|
|
23
23
|
triggerSegmentationModified(segmentationId);
|
|
24
24
|
}
|
|
25
|
-
function
|
|
25
|
+
function getLockedSegmentIndices(segmentationId) {
|
|
26
26
|
const segmentation = getSegmentation(segmentationId);
|
|
27
27
|
if (!segmentation) {
|
|
28
28
|
throw new Error(`No segmentation state found for ${segmentationId}`);
|
|
@@ -30,4 +30,4 @@ function getLockedSegments(segmentationId) {
|
|
|
30
30
|
const { segmentsLocked } = segmentation;
|
|
31
31
|
return Array.from(segmentsLocked);
|
|
32
32
|
}
|
|
33
|
-
export { isSegmentIndexLocked, setSegmentIndexLocked,
|
|
33
|
+
export { isSegmentIndexLocked, setSegmentIndexLocked, getLockedSegmentIndices };
|
|
@@ -4,23 +4,23 @@ declare function getDefaultSegmentationStateManager(): import("./SegmentationSta
|
|
|
4
4
|
declare function getSegmentation(segmentationId: string): Segmentation | undefined;
|
|
5
5
|
declare function getSegmentations(): Segmentation[] | [];
|
|
6
6
|
declare function addSegmentation(segmentationInput: SegmentationPublicInput, suppressEvents?: boolean): void;
|
|
7
|
-
declare function
|
|
8
|
-
declare function
|
|
9
|
-
declare function
|
|
10
|
-
declare function
|
|
11
|
-
declare function
|
|
7
|
+
declare function getAllSegmentationRepresentations(): SegmentationRepresentation[];
|
|
8
|
+
declare function getSegmentationRepresentation(segmentationRepresentationUID: string): SegmentationRepresentation | undefined;
|
|
9
|
+
declare function getSegmentationRepresentationsForSegmentation(segmentationId: string): SegmentationRepresentation[];
|
|
10
|
+
declare function getSegmentationRepresentationConfig(segmentationRepresentationUID: string): RepresentationConfig;
|
|
11
|
+
declare function setSegmentationRepresentationConfig(segmentationRepresentationUID: string, config: RepresentationConfig, suppressEvents?: boolean): void;
|
|
12
12
|
declare function getPerSegmentConfig(segmentationRepresentationUID: string): SegmentRepresentationConfig;
|
|
13
13
|
declare function setPerSegmentConfig(segmentationRepresentationUID: string, config: SegmentRepresentationConfig, suppressEvents?: boolean): void;
|
|
14
|
-
declare function
|
|
15
|
-
declare function
|
|
16
|
-
declare function
|
|
14
|
+
declare function getViewportIdsWithSegmentation(segmentationId: string): string[];
|
|
15
|
+
declare function getSegmentationRepresentations(viewportId: string): SegmentationRepresentation[] | [];
|
|
16
|
+
declare function getSegmentationRepresentationViewportStates(viewportId: string): {
|
|
17
17
|
[segRepUID: string]: {
|
|
18
18
|
visible: boolean;
|
|
19
19
|
segmentsHidden: Set<number>;
|
|
20
20
|
active: boolean;
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
|
-
declare function
|
|
23
|
+
declare function addSegmentationRepresentation(viewportId: string, segmentationRepresentation: SegmentationRepresentation, suppressEvents?: boolean): void;
|
|
24
24
|
declare function getGlobalConfig(): SegmentationRepresentationConfig;
|
|
25
25
|
declare function setGlobalConfig(config: SegmentationRepresentationConfig, suppressEvents?: boolean): void;
|
|
26
26
|
declare function removeSegmentation(segmentationId: string): void;
|
|
@@ -29,10 +29,10 @@ declare function removeColorLUT(colorLUTIndex: number): void;
|
|
|
29
29
|
declare function getColorLUT(index: number): Types.ColorLUT | undefined;
|
|
30
30
|
declare function getNextColorLUTIndex(): number;
|
|
31
31
|
declare function addColorLUT(colorLUT: Types.ColorLUT, index: number): void;
|
|
32
|
-
declare function
|
|
33
|
-
declare function
|
|
34
|
-
declare function
|
|
35
|
-
declare function
|
|
36
|
-
declare function
|
|
37
|
-
declare function
|
|
38
|
-
export { getDefaultSegmentationStateManager, getSegmentation, getSegmentations, addSegmentation, removeSegmentation,
|
|
32
|
+
declare function getSegmentationRepresentationVisibility(viewportId: string, segmentationRepresentationUID: string): boolean;
|
|
33
|
+
declare function setSegmentationRepresentationVisibility(viewportId: string, segmentationRepresentationUID: string, visible: boolean): void;
|
|
34
|
+
declare function getActiveSegmentationRepresentation(viewportId: string): SegmentationRepresentation | undefined;
|
|
35
|
+
declare function setActiveSegmentationRepresentation(viewportId: string, segmentationRepresentationUID: string, suppressEvents?: boolean): void;
|
|
36
|
+
declare function getCurrentLabelmapImageIdForViewport(viewportId: string, segmentationId?: string): string;
|
|
37
|
+
declare function updateLabelmapSegmentationImageReferences(viewportId: string, segmentationId: string): void;
|
|
38
|
+
export { getDefaultSegmentationStateManager, getSegmentation, getSegmentations, addSegmentation, removeSegmentation, getAllSegmentationRepresentations, getSegmentationRepresentation, removeRepresentation, getGlobalConfig, setGlobalConfig, getSegmentationRepresentationConfig, setSegmentationRepresentationConfig, getPerSegmentConfig, setPerSegmentConfig, getSegmentationRepresentations, addSegmentationRepresentation, getSegmentationRepresentationViewportStates, addColorLUT, getColorLUT, getNextColorLUTIndex, removeColorLUT, getSegmentationRepresentationsForSegmentation, getSegmentationRepresentationVisibility, setSegmentationRepresentationVisibility, getViewportIdsWithSegmentation, getActiveSegmentationRepresentation, setActiveSegmentationRepresentation, getCurrentLabelmapImageIdForViewport, updateLabelmapSegmentationImageReferences, };
|
|
@@ -21,26 +21,26 @@ function addSegmentation(segmentationInput, suppressEvents) {
|
|
|
21
21
|
triggerSegmentationModified(segmentation.segmentationId);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
function
|
|
24
|
+
function getAllSegmentationRepresentations() {
|
|
25
25
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
26
26
|
const state = segmentationStateManager.getState();
|
|
27
27
|
return Object.values(state.representations);
|
|
28
28
|
}
|
|
29
|
-
function
|
|
29
|
+
function getSegmentationRepresentation(segmentationRepresentationUID) {
|
|
30
30
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
31
|
-
return segmentationStateManager.
|
|
31
|
+
return segmentationStateManager.getSegmentationRepresentation(segmentationRepresentationUID);
|
|
32
32
|
}
|
|
33
|
-
function
|
|
34
|
-
const allRepresentations =
|
|
33
|
+
function getSegmentationRepresentationsForSegmentation(segmentationId) {
|
|
34
|
+
const allRepresentations = getAllSegmentationRepresentations();
|
|
35
35
|
return allRepresentations.filter((representation) => representation.segmentationId === segmentationId);
|
|
36
36
|
}
|
|
37
|
-
function
|
|
37
|
+
function getSegmentationRepresentationConfig(segmentationRepresentationUID) {
|
|
38
38
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
39
|
-
return segmentationStateManager.
|
|
39
|
+
return segmentationStateManager.getSegmentationRepresentationConfig(segmentationRepresentationUID);
|
|
40
40
|
}
|
|
41
|
-
function
|
|
41
|
+
function setSegmentationRepresentationConfig(segmentationRepresentationUID, config, suppressEvents) {
|
|
42
42
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
43
|
-
segmentationStateManager.
|
|
43
|
+
segmentationStateManager.setSegmentationRepresentationConfig(segmentationRepresentationUID, config);
|
|
44
44
|
if (!suppressEvents) {
|
|
45
45
|
triggerSegmentationRepresentationModified(segmentationRepresentationUID);
|
|
46
46
|
}
|
|
@@ -56,7 +56,7 @@ function setPerSegmentConfig(segmentationRepresentationUID, config, suppressEven
|
|
|
56
56
|
triggerSegmentationRepresentationModified(segmentationRepresentationUID);
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
function
|
|
59
|
+
function getViewportIdsWithSegmentation(segmentationId) {
|
|
60
60
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
61
61
|
const state = segmentationStateManager.getState();
|
|
62
62
|
const viewports = state.viewports;
|
|
@@ -65,25 +65,25 @@ function getViewportIdsWithSegmentationId(segmentationId) {
|
|
|
65
65
|
return Object.keys(viewport).some((segRepUID) => state.representations[segRepUID].segmentationId === segmentationId);
|
|
66
66
|
});
|
|
67
67
|
}
|
|
68
|
-
function
|
|
69
|
-
const viewportRenderingState =
|
|
68
|
+
function getSegmentationRepresentations(viewportId) {
|
|
69
|
+
const viewportRenderingState = getSegmentationRepresentationViewportStates(viewportId);
|
|
70
70
|
if (!viewportRenderingState) {
|
|
71
71
|
return [];
|
|
72
72
|
}
|
|
73
73
|
const segRepUIDs = Object.keys(viewportRenderingState);
|
|
74
74
|
return segRepUIDs
|
|
75
|
-
.map((segRepUID) =>
|
|
75
|
+
.map((segRepUID) => getSegmentationRepresentation(segRepUID))
|
|
76
76
|
.filter(Boolean);
|
|
77
77
|
}
|
|
78
|
-
function
|
|
78
|
+
function getSegmentationRepresentationViewportStates(viewportId) {
|
|
79
79
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
80
80
|
const state = segmentationStateManager.getState();
|
|
81
81
|
return state.viewports?.[viewportId] || {};
|
|
82
82
|
}
|
|
83
|
-
function
|
|
83
|
+
function addSegmentationRepresentation(viewportId, segmentationRepresentation, suppressEvents) {
|
|
84
84
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
85
|
-
segmentationStateManager.
|
|
86
|
-
segmentationStateManager.
|
|
85
|
+
segmentationStateManager.addSegmentationRepresentationState(segmentationRepresentation);
|
|
86
|
+
segmentationStateManager.addSegmentationRepresentationToViewport(viewportId, segmentationRepresentation.segmentationRepresentationUID);
|
|
87
87
|
if (!suppressEvents) {
|
|
88
88
|
triggerSegmentationRepresentationModified(segmentationRepresentation.segmentationRepresentationUID);
|
|
89
89
|
}
|
|
@@ -127,31 +127,31 @@ function addColorLUT(colorLUT, index) {
|
|
|
127
127
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
128
128
|
segmentationStateManager.addColorLUT(colorLUT, index);
|
|
129
129
|
}
|
|
130
|
-
function
|
|
130
|
+
function getSegmentationRepresentationVisibility(viewportId, segmentationRepresentationUID) {
|
|
131
131
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
132
|
-
return segmentationStateManager.
|
|
132
|
+
return segmentationStateManager.getSegmentationRepresentationVisibility(viewportId, segmentationRepresentationUID);
|
|
133
133
|
}
|
|
134
|
-
function
|
|
134
|
+
function setSegmentationRepresentationVisibility(viewportId, segmentationRepresentationUID, visible) {
|
|
135
135
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
136
|
-
segmentationStateManager.
|
|
136
|
+
segmentationStateManager.setSegmentationRepresentationVisibility(viewportId, segmentationRepresentationUID, visible);
|
|
137
137
|
}
|
|
138
|
-
function
|
|
138
|
+
function getActiveSegmentationRepresentation(viewportId) {
|
|
139
139
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
140
|
-
return segmentationStateManager.
|
|
140
|
+
return segmentationStateManager.getActiveSegmentationRepresentation(viewportId);
|
|
141
141
|
}
|
|
142
|
-
function
|
|
142
|
+
function setActiveSegmentationRepresentation(viewportId, segmentationRepresentationUID, suppressEvents) {
|
|
143
143
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
144
|
-
segmentationStateManager.
|
|
144
|
+
segmentationStateManager.setActiveSegmentationRepresentation(viewportId, segmentationRepresentationUID);
|
|
145
145
|
if (!suppressEvents) {
|
|
146
146
|
triggerSegmentationRepresentationModified(segmentationRepresentationUID);
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
|
-
function
|
|
149
|
+
function getCurrentLabelmapImageIdForViewport(viewportId, segmentationId) {
|
|
150
150
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
151
|
-
return segmentationStateManager.
|
|
151
|
+
return segmentationStateManager.getCurrentLabelmapImageIdForViewport(viewportId, segmentationId);
|
|
152
152
|
}
|
|
153
|
-
function
|
|
153
|
+
function updateLabelmapSegmentationImageReferences(viewportId, segmentationId) {
|
|
154
154
|
const segmentationStateManager = getDefaultSegmentationStateManager();
|
|
155
|
-
segmentationStateManager.
|
|
155
|
+
segmentationStateManager.updateLabelmapSegmentationImageReferences(viewportId, segmentationId);
|
|
156
156
|
}
|
|
157
|
-
export { getDefaultSegmentationStateManager, getSegmentation, getSegmentations, addSegmentation, removeSegmentation,
|
|
157
|
+
export { getDefaultSegmentationStateManager, getSegmentation, getSegmentations, addSegmentation, removeSegmentation, getAllSegmentationRepresentations, getSegmentationRepresentation, removeRepresentation, getGlobalConfig, setGlobalConfig, getSegmentationRepresentationConfig, setSegmentationRepresentationConfig, getPerSegmentConfig, setPerSegmentConfig, getSegmentationRepresentations, addSegmentationRepresentation, getSegmentationRepresentationViewportStates, addColorLUT, getColorLUT, getNextColorLUTIndex, removeColorLUT, getSegmentationRepresentationsForSegmentation, getSegmentationRepresentationVisibility, setSegmentationRepresentationVisibility, getViewportIdsWithSegmentation, getActiveSegmentationRepresentation, setActiveSegmentationRepresentation, getCurrentLabelmapImageIdForViewport, updateLabelmapSegmentationImageReferences, };
|