@cornerstonejs/tools 3.0.2 → 3.0.3
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/LICENSE +2 -2
- package/README.md +4 -183
- package/dist/esm/config.d.ts +30 -0
- package/dist/esm/config.js +23 -0
- package/dist/esm/constants/COLOR_LUT.d.ts +3 -0
- package/dist/esm/constants/COLOR_LUT.js +258 -0
- package/dist/esm/constants/index.d.ts +2 -0
- package/dist/esm/constants/index.js +2 -0
- package/dist/esm/cursors/ImageMouseCursor.d.ts +9 -0
- package/dist/esm/cursors/ImageMouseCursor.js +22 -0
- package/dist/esm/cursors/MouseCursor.d.ts +12 -0
- package/dist/esm/cursors/MouseCursor.js +88 -0
- package/dist/esm/cursors/SVGCursorDescriptor.d.ts +9 -0
- package/dist/esm/cursors/SVGCursorDescriptor.js +442 -0
- package/dist/esm/cursors/SVGMouseCursor.d.ts +6 -0
- package/dist/esm/cursors/SVGMouseCursor.js +74 -0
- package/dist/esm/cursors/elementCursor.d.ts +6 -0
- package/dist/esm/cursors/elementCursor.js +36 -0
- package/dist/esm/cursors/index.d.ts +8 -0
- package/dist/esm/cursors/index.js +8 -0
- package/dist/esm/cursors/setCursorForElement.d.ts +2 -0
- package/dist/esm/cursors/setCursorForElement.js +15 -0
- package/dist/esm/drawingSvg/_getHash.d.ts +2 -0
- package/dist/esm/drawingSvg/_getHash.js +4 -0
- package/dist/esm/drawingSvg/clearByToolType.d.ts +2 -0
- package/dist/esm/drawingSvg/clearByToolType.js +13 -0
- package/dist/esm/drawingSvg/draw.d.ts +3 -0
- package/dist/esm/drawingSvg/draw.js +7 -0
- package/dist/esm/drawingSvg/drawArrow.d.ts +3 -0
- package/dist/esm/drawingSvg/drawArrow.js +79 -0
- package/dist/esm/drawingSvg/drawCircle.d.ts +4 -0
- package/dist/esm/drawingSvg/drawCircle.js +42 -0
- package/dist/esm/drawingSvg/drawEllipse.d.ts +4 -0
- package/dist/esm/drawingSvg/drawEllipse.js +10 -0
- package/dist/esm/drawingSvg/drawEllipseByCoordinates.d.ts +4 -0
- package/dist/esm/drawingSvg/drawEllipseByCoordinates.js +46 -0
- package/dist/esm/drawingSvg/drawHandle.d.ts +4 -0
- package/dist/esm/drawingSvg/drawHandle.js +60 -0
- package/dist/esm/drawingSvg/drawHandles.d.ts +4 -0
- package/dist/esm/drawingSvg/drawHandles.js +7 -0
- package/dist/esm/drawingSvg/drawHeight.d.ts +3 -0
- package/dist/esm/drawingSvg/drawHeight.js +45 -0
- package/dist/esm/drawingSvg/drawLine.d.ts +3 -0
- package/dist/esm/drawingSvg/drawLine.js +39 -0
- package/dist/esm/drawingSvg/drawLink.d.ts +4 -0
- package/dist/esm/drawingSvg/drawLink.js +26 -0
- package/dist/esm/drawingSvg/drawLinkedTextBox.d.ts +4 -0
- package/dist/esm/drawingSvg/drawLinkedTextBox.js +15 -0
- package/dist/esm/drawingSvg/drawPath.d.ts +11 -0
- package/dist/esm/drawingSvg/drawPath.js +48 -0
- package/dist/esm/drawingSvg/drawPolyline.d.ts +13 -0
- package/dist/esm/drawingSvg/drawPolyline.js +40 -0
- package/dist/esm/drawingSvg/drawRect.d.ts +3 -0
- package/dist/esm/drawingSvg/drawRect.js +9 -0
- package/dist/esm/drawingSvg/drawRectByCoordinates.d.ts +3 -0
- package/dist/esm/drawingSvg/drawRectByCoordinates.js +52 -0
- package/dist/esm/drawingSvg/drawRedactionRect.d.ts +3 -0
- package/dist/esm/drawingSvg/drawRedactionRect.js +37 -0
- package/dist/esm/drawingSvg/drawTextBox.d.ts +4 -0
- package/dist/esm/drawingSvg/drawTextBox.js +123 -0
- package/dist/esm/drawingSvg/getSvgDrawingHelper.d.ts +3 -0
- package/dist/esm/drawingSvg/getSvgDrawingHelper.js +65 -0
- package/dist/esm/drawingSvg/index.d.ts +19 -0
- package/dist/esm/drawingSvg/index.js +19 -0
- package/dist/esm/drawingSvg/setAttributesIfNecessary.d.ts +2 -0
- package/dist/esm/drawingSvg/setAttributesIfNecessary.js +13 -0
- package/dist/esm/drawingSvg/setNewAttributesIfValid.d.ts +2 -0
- package/dist/esm/drawingSvg/setNewAttributesIfValid.js +9 -0
- package/dist/esm/enums/AnnotationStyleStates.d.ts +8 -0
- package/dist/esm/enums/AnnotationStyleStates.js +9 -0
- package/dist/esm/enums/ChangeTypes.d.ts +11 -0
- package/dist/esm/enums/ChangeTypes.js +12 -0
- package/dist/esm/enums/Events.d.ts +42 -0
- package/dist/esm/enums/Events.js +43 -0
- package/dist/esm/enums/SegmentationRepresentations.d.ts +6 -0
- package/dist/esm/enums/SegmentationRepresentations.js +7 -0
- package/dist/esm/enums/StrategyCallbacks.d.ts +19 -0
- package/dist/esm/enums/StrategyCallbacks.js +20 -0
- package/dist/esm/enums/ToolBindings.d.ts +26 -0
- package/dist/esm/enums/ToolBindings.js +28 -0
- package/dist/esm/enums/ToolModes.d.ts +7 -0
- package/dist/esm/enums/ToolModes.js +8 -0
- package/dist/esm/enums/Touch.d.ts +7 -0
- package/dist/esm/enums/Touch.js +8 -0
- package/dist/esm/enums/WorkerTypes.d.ts +10 -0
- package/dist/esm/enums/WorkerTypes.js +11 -0
- package/dist/esm/enums/index.d.ts +11 -0
- package/dist/esm/enums/index.js +10 -0
- package/dist/esm/eventDispatchers/annotationInterpolationEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/annotationInterpolationEventDispatcher.js +17 -0
- package/dist/esm/eventDispatchers/annotationModifiedEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/annotationModifiedEventDispatcher.js +18 -0
- package/dist/esm/eventDispatchers/cameraModifiedEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/cameraModifiedEventDispatcher.js +26 -0
- package/dist/esm/eventDispatchers/cameraResetEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/cameraResetEventDispatcher.js +26 -0
- package/dist/esm/eventDispatchers/imageRenderedEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/imageRenderedEventDispatcher.js +15 -0
- package/dist/esm/eventDispatchers/imageSpacingCalibratedEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/imageSpacingCalibratedEventDispatcher.js +26 -0
- package/dist/esm/eventDispatchers/index.d.ts +9 -0
- package/dist/esm/eventDispatchers/index.js +9 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/index.d.ts +3 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/index.js +3 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.d.ts +2 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js +25 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.d.ts +2 -0
- package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.js +16 -0
- package/dist/esm/eventDispatchers/keyboardToolEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/keyboardToolEventDispatcher.js +15 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/index.d.ts +9 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/index.js +9 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseClick.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseClick.js +3 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDoubleClick.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDoubleClick.js +3 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.js +90 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownActivate.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownActivate.js +19 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.js +34 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDrag.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDrag.js +13 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseMove.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseMove.js +37 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseUp.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseUp.js +3 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.d.ts +3 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.js +16 -0
- package/dist/esm/eventDispatchers/mouseToolEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/mouseToolEventDispatcher.js +27 -0
- package/dist/esm/eventDispatchers/shared/customCallbackHandler.d.ts +1 -0
- package/dist/esm/eventDispatchers/shared/customCallbackHandler.js +30 -0
- package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.d.ts +2 -0
- package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.js +29 -0
- package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.d.ts +2 -0
- package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js +28 -0
- package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.d.ts +2 -0
- package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.js +29 -0
- package/dist/esm/eventDispatchers/shared/getMouseModifier.d.ts +3 -0
- package/dist/esm/eventDispatchers/shared/getMouseModifier.js +32 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForKeyboardEvents.d.ts +3 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForKeyboardEvents.js +28 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.d.ts +4 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.js +32 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.d.ts +5 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.js +23 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithModesForTouchEvent.d.ts +5 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithModesForTouchEvent.js +23 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/index.d.ts +7 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/index.js +7 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchDrag.d.ts +2 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchDrag.js +13 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchEnd.d.ts +2 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchEnd.js +3 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchPress.d.ts +2 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchPress.js +3 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchStart.d.ts +2 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchStart.js +79 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchStartActivate.d.ts +2 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchStartActivate.js +19 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchTap.d.ts +2 -0
- package/dist/esm/eventDispatchers/touchEventHandlers/touchTap.js +3 -0
- package/dist/esm/eventDispatchers/touchToolEventDispatcher.d.ts +5 -0
- package/dist/esm/eventDispatchers/touchToolEventDispatcher.js +22 -0
- package/dist/esm/eventListeners/annotations/annotationCompletedListener.d.ts +2 -0
- package/dist/esm/eventListeners/annotations/annotationCompletedListener.js +8 -0
- package/dist/esm/eventListeners/annotations/annotationModifiedListener.d.ts +2 -0
- package/dist/esm/eventListeners/annotations/annotationModifiedListener.js +6 -0
- package/dist/esm/eventListeners/annotations/annotationRemovedListener.d.ts +2 -0
- package/dist/esm/eventListeners/annotations/annotationRemovedListener.js +8 -0
- package/dist/esm/eventListeners/annotations/annotationSelectionListener.d.ts +2 -0
- package/dist/esm/eventListeners/annotations/annotationSelectionListener.js +15 -0
- package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts +5 -0
- package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +233 -0
- package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.d.ts +2 -0
- package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.js +5 -0
- package/dist/esm/eventListeners/annotations/contourSegmentation/index.d.ts +2 -0
- package/dist/esm/eventListeners/annotations/contourSegmentation/index.js +2 -0
- package/dist/esm/eventListeners/annotations/index.d.ts +5 -0
- package/dist/esm/eventListeners/annotations/index.js +5 -0
- package/dist/esm/eventListeners/index.d.ts +7 -0
- package/dist/esm/eventListeners/index.js +7 -0
- package/dist/esm/eventListeners/keyboard/index.d.ts +9 -0
- package/dist/esm/eventListeners/keyboard/index.js +13 -0
- package/dist/esm/eventListeners/keyboard/keyDownListener.d.ts +4 -0
- package/dist/esm/eventListeners/keyboard/keyDownListener.js +64 -0
- package/dist/esm/eventListeners/mouse/getMouseEventPoints.d.ts +2 -0
- package/dist/esm/eventListeners/mouse/getMouseEventPoints.js +31 -0
- package/dist/esm/eventListeners/mouse/index.d.ts +7 -0
- package/dist/esm/eventListeners/mouse/index.js +24 -0
- package/dist/esm/eventListeners/mouse/mouseDoubleClickListener.d.ts +2 -0
- package/dist/esm/eventListeners/mouse/mouseDoubleClickListener.js +32 -0
- package/dist/esm/eventListeners/mouse/mouseDownListener.d.ts +4 -0
- package/dist/esm/eventListeners/mouse/mouseDownListener.js +266 -0
- package/dist/esm/eventListeners/mouse/mouseMoveListener.d.ts +2 -0
- package/dist/esm/eventListeners/mouse/mouseMoveListener.js +28 -0
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.d.ts +5 -0
- package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +128 -0
- package/dist/esm/eventListeners/segmentation/index.d.ts +4 -0
- package/dist/esm/eventListeners/segmentation/index.js +4 -0
- package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.d.ts +3 -0
- package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.js +83 -0
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.d.ts +3 -0
- package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +12 -0
- package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.d.ts +3 -0
- package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.js +6 -0
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedListener.d.ts +3 -0
- package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedListener.js +6 -0
- package/dist/esm/eventListeners/touch/getTouchEventPoints.d.ts +2 -0
- package/dist/esm/eventListeners/touch/getTouchEventPoints.js +38 -0
- package/dist/esm/eventListeners/touch/index.d.ts +7 -0
- package/dist/esm/eventListeners/touch/index.js +17 -0
- package/dist/esm/eventListeners/touch/preventGhostClick.d.ts +7 -0
- package/dist/esm/eventListeners/touch/preventGhostClick.js +47 -0
- package/dist/esm/eventListeners/touch/touchStartListener.d.ts +2 -0
- package/dist/esm/eventListeners/touch/touchStartListener.js +282 -0
- package/dist/esm/eventListeners/wheel/index.d.ts +7 -0
- package/dist/esm/eventListeners/wheel/index.js +12 -0
- package/dist/esm/eventListeners/wheel/normalizeWheel.d.ts +6 -0
- package/dist/esm/eventListeners/wheel/normalizeWheel.js +48 -0
- package/dist/esm/eventListeners/wheel/wheelListener.d.ts +2 -0
- package/dist/esm/eventListeners/wheel/wheelListener.js +34 -0
- package/dist/esm/index.d.ts +17 -0
- package/dist/esm/index.js +17 -0
- package/dist/esm/init.d.ts +4 -0
- package/dist/esm/init.js +70 -0
- package/dist/esm/stateManagement/annotation/AnnotationGroup.d.ts +18 -0
- package/dist/esm/stateManagement/annotation/AnnotationGroup.js +69 -0
- 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 +27 -0
- package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.js +210 -0
- package/dist/esm/stateManagement/annotation/annotationLocking.d.ts +7 -0
- package/dist/esm/stateManagement/annotation/annotationLocking.js +73 -0
- package/dist/esm/stateManagement/annotation/annotationSelection.d.ts +7 -0
- package/dist/esm/stateManagement/annotation/annotationSelection.js +85 -0
- package/dist/esm/stateManagement/annotation/annotationState.d.ts +18 -0
- package/dist/esm/stateManagement/annotation/annotationState.js +118 -0
- package/dist/esm/stateManagement/annotation/annotationVisibility.d.ts +5 -0
- package/dist/esm/stateManagement/annotation/annotationVisibility.js +65 -0
- package/dist/esm/stateManagement/annotation/config/ToolStyle.d.ts +18 -0
- package/dist/esm/stateManagement/annotation/config/ToolStyle.js +135 -0
- package/dist/esm/stateManagement/annotation/config/getFont.d.ts +4 -0
- package/dist/esm/stateManagement/annotation/config/getFont.js +7 -0
- package/dist/esm/stateManagement/annotation/config/getState.d.ts +4 -0
- package/dist/esm/stateManagement/annotation/config/getState.js +21 -0
- package/dist/esm/stateManagement/annotation/config/helpers.d.ts +4 -0
- package/dist/esm/stateManagement/annotation/config/helpers.js +21 -0
- package/dist/esm/stateManagement/annotation/config/index.d.ts +4 -0
- package/dist/esm/stateManagement/annotation/config/index.js +4 -0
- package/dist/esm/stateManagement/annotation/helpers/state.d.ts +10 -0
- package/dist/esm/stateManagement/annotation/helpers/state.js +76 -0
- package/dist/esm/stateManagement/annotation/index.d.ts +34 -0
- package/dist/esm/stateManagement/annotation/index.js +15 -0
- package/dist/esm/stateManagement/annotation/resetAnnotationManager.d.ts +1 -0
- package/dist/esm/stateManagement/annotation/resetAnnotationManager.js +21 -0
- package/dist/esm/stateManagement/annotation/utilities/defineProperties.d.ts +4 -0
- package/dist/esm/stateManagement/annotation/utilities/defineProperties.js +22 -0
- package/dist/esm/stateManagement/index.d.ts +18 -0
- package/dist/esm/stateManagement/index.js +6 -0
- package/dist/esm/stateManagement/segmentation/SegmentationRenderingEngine.d.ts +20 -0
- package/dist/esm/stateManagement/segmentation/SegmentationRenderingEngine.js +153 -0
- package/dist/esm/stateManagement/segmentation/SegmentationStateManager.d.ts +91 -0
- package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js +470 -0
- package/dist/esm/stateManagement/segmentation/SegmentationStyle.d.ts +39 -0
- package/dist/esm/stateManagement/segmentation/SegmentationStyle.js +223 -0
- package/dist/esm/stateManagement/segmentation/activeSegmentation.d.ts +4 -0
- package/dist/esm/stateManagement/segmentation/activeSegmentation.js +9 -0
- package/dist/esm/stateManagement/segmentation/addColorLUT.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/addColorLUT.js +25 -0
- 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 +3 -0
- package/dist/esm/stateManagement/segmentation/addSegmentations.js +14 -0
- package/dist/esm/stateManagement/segmentation/config/index.d.ts +4 -0
- package/dist/esm/stateManagement/segmentation/config/index.js +4 -0
- package/dist/esm/stateManagement/segmentation/config/segmentationColor.d.ts +6 -0
- package/dist/esm/stateManagement/segmentation/config/segmentationColor.js +50 -0
- package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.d.ts +22 -0
- package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.js +49 -0
- package/dist/esm/stateManagement/segmentation/config/styleHelpers.d.ts +25 -0
- package/dist/esm/stateManagement/segmentation/config/styleHelpers.js +37 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationAdded.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationAdded.js +8 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationDataModified.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationDataModified.js +12 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationModified.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationModified.js +8 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRemoved.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRemoved.js +8 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationModified.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationModified.js +10 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationRemoved.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationRemoved.js +10 -0
- package/dist/esm/stateManagement/segmentation/getActiveSegmentIndex.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/getActiveSegmentIndex.js +9 -0
- package/dist/esm/stateManagement/segmentation/getActiveSegmentation.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/getActiveSegmentation.js +5 -0
- package/dist/esm/stateManagement/segmentation/getColorLUT.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/getColorLUT.js +5 -0
- package/dist/esm/stateManagement/segmentation/getCurrentLabelmapImageIdForViewport.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/getCurrentLabelmapImageIdForViewport.js +5 -0
- package/dist/esm/stateManagement/segmentation/getGlobalStyle.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/getGlobalStyle.js +4 -0
- package/dist/esm/stateManagement/segmentation/getLabelmapImageIds.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/getLabelmapImageIds.js +7 -0
- package/dist/esm/stateManagement/segmentation/getNextColorLUTIndex.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/getNextColorLUTIndex.js +5 -0
- package/dist/esm/stateManagement/segmentation/getSegmentation.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/getSegmentation.js +5 -0
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentation.d.ts +14 -0
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentation.js +17 -0
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationVisibility.d.ts +5 -0
- package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationVisibility.js +5 -0
- package/dist/esm/stateManagement/segmentation/getSegmentations.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/getSegmentations.js +6 -0
- package/dist/esm/stateManagement/segmentation/getStackSegmentationImageIdsForViewport.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/getStackSegmentationImageIdsForViewport.js +5 -0
- package/dist/esm/stateManagement/segmentation/getViewportIdsWithSegmentation.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/getViewportIdsWithSegmentation.js +10 -0
- 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 +30 -0
- package/dist/esm/stateManagement/segmentation/helpers/computeStackLabelmapFromVolume.d.ts +13 -0
- package/dist/esm/stateManagement/segmentation/helpers/computeStackLabelmapFromVolume.js +22 -0
- 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 +6 -0
- package/dist/esm/stateManagement/segmentation/helpers/getSegmentationActor.js +34 -0
- package/dist/esm/stateManagement/segmentation/helpers/index.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/helpers/index.js +3 -0
- package/dist/esm/stateManagement/segmentation/helpers/internalGetHiddenSegmentIndices.d.ts +5 -0
- package/dist/esm/stateManagement/segmentation/helpers/internalGetHiddenSegmentIndices.js +14 -0
- package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.js +71 -0
- package/dist/esm/stateManagement/segmentation/helpers/updateStackSegmentationState.d.ts +8 -0
- package/dist/esm/stateManagement/segmentation/helpers/updateStackSegmentationState.js +31 -0
- package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.js +20 -0
- package/dist/esm/stateManagement/segmentation/index.d.ts +28 -0
- package/dist/esm/stateManagement/segmentation/index.js +28 -0
- package/dist/esm/stateManagement/segmentation/internalAddRepresentationData.d.ts +12 -0
- package/dist/esm/stateManagement/segmentation/internalAddRepresentationData.js +32 -0
- package/dist/esm/stateManagement/segmentation/internalAddSegmentationRepresentation.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/internalAddSegmentationRepresentation.js +38 -0
- package/dist/esm/stateManagement/segmentation/removeColorLUT.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/removeColorLUT.js +5 -0
- package/dist/esm/stateManagement/segmentation/removeSegment.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/removeSegment.js +50 -0
- package/dist/esm/stateManagement/segmentation/removeSegmentation.d.ts +2 -0
- package/dist/esm/stateManagement/segmentation/removeSegmentation.js +24 -0
- package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.d.ts +20 -0
- package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.js +73 -0
- package/dist/esm/stateManagement/segmentation/segmentIndex.d.ts +3 -0
- package/dist/esm/stateManagement/segmentation/segmentIndex.js +48 -0
- package/dist/esm/stateManagement/segmentation/segmentLocking.d.ts +4 -0
- package/dist/esm/stateManagement/segmentation/segmentLocking.js +29 -0
- package/dist/esm/stateManagement/segmentation/segmentationState.d.ts +17 -0
- package/dist/esm/stateManagement/segmentation/segmentationState.js +20 -0
- 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 -0
- package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationVisibility.js +5 -0
- package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.d.ts +6 -0
- package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.js +6 -0
- package/dist/esm/stateManagement/segmentation/updateLabelmapSegmentationImageReferences.d.ts +1 -0
- package/dist/esm/stateManagement/segmentation/updateLabelmapSegmentationImageReferences.js +5 -0
- package/dist/esm/stateManagement/segmentation/updateSegmentations.d.ts +5 -0
- package/dist/esm/stateManagement/segmentation/updateSegmentations.js +11 -0
- package/dist/esm/store/SynchronizerManager/Synchronizer.d.ts +48 -0
- package/dist/esm/store/SynchronizerManager/Synchronizer.js +221 -0
- package/dist/esm/store/SynchronizerManager/createSynchronizer.d.ts +4 -0
- package/dist/esm/store/SynchronizerManager/createSynchronizer.js +12 -0
- package/dist/esm/store/SynchronizerManager/destroy.d.ts +2 -0
- package/dist/esm/store/SynchronizerManager/destroy.js +8 -0
- package/dist/esm/store/SynchronizerManager/destroySynchronizer.d.ts +2 -0
- package/dist/esm/store/SynchronizerManager/destroySynchronizer.js +10 -0
- package/dist/esm/store/SynchronizerManager/getAllSynchronizers.d.ts +3 -0
- package/dist/esm/store/SynchronizerManager/getAllSynchronizers.js +5 -0
- package/dist/esm/store/SynchronizerManager/getSynchronizer.d.ts +3 -0
- package/dist/esm/store/SynchronizerManager/getSynchronizer.js +5 -0
- package/dist/esm/store/SynchronizerManager/getSynchronizersForViewport.d.ts +3 -0
- package/dist/esm/store/SynchronizerManager/getSynchronizersForViewport.js +18 -0
- package/dist/esm/store/SynchronizerManager/index.d.ts +7 -0
- package/dist/esm/store/SynchronizerManager/index.js +7 -0
- package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +48 -0
- package/dist/esm/store/ToolGroupManager/ToolGroup.js +460 -0
- package/dist/esm/store/ToolGroupManager/createToolGroup.d.ts +3 -0
- package/dist/esm/store/ToolGroupManager/createToolGroup.js +13 -0
- package/dist/esm/store/ToolGroupManager/destroy.d.ts +2 -0
- package/dist/esm/store/ToolGroupManager/destroy.js +10 -0
- package/dist/esm/store/ToolGroupManager/destroyToolGroup.d.ts +2 -0
- package/dist/esm/store/ToolGroupManager/destroyToolGroup.js +8 -0
- package/dist/esm/store/ToolGroupManager/getAllToolGroups.d.ts +3 -0
- package/dist/esm/store/ToolGroupManager/getAllToolGroups.js +5 -0
- package/dist/esm/store/ToolGroupManager/getToolGroup.d.ts +3 -0
- package/dist/esm/store/ToolGroupManager/getToolGroup.js +5 -0
- package/dist/esm/store/ToolGroupManager/getToolGroupForViewport.d.ts +3 -0
- package/dist/esm/store/ToolGroupManager/getToolGroupForViewport.js +18 -0
- package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.d.ts +3 -0
- package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.js +21 -0
- package/dist/esm/store/ToolGroupManager/index.d.ts +8 -0
- package/dist/esm/store/ToolGroupManager/index.js +8 -0
- package/dist/esm/store/addEnabledElement.d.ts +2 -0
- package/dist/esm/store/addEnabledElement.js +68 -0
- package/dist/esm/store/addTool.d.ts +5 -0
- package/dist/esm/store/addTool.js +31 -0
- package/dist/esm/store/cancelActiveManipulations.d.ts +1 -0
- package/dist/esm/store/cancelActiveManipulations.js +16 -0
- package/dist/esm/store/filterMoveableAnnotationTools.d.ts +3 -0
- package/dist/esm/store/filterMoveableAnnotationTools.js +20 -0
- package/dist/esm/store/filterToolsWithAnnotationsForElement.d.ts +3 -0
- package/dist/esm/store/filterToolsWithAnnotationsForElement.js +22 -0
- package/dist/esm/store/filterToolsWithMoveableHandles.d.ts +3 -0
- package/dist/esm/store/filterToolsWithMoveableHandles.js +21 -0
- package/dist/esm/store/index.d.ts +10 -0
- package/dist/esm/store/index.js +10 -0
- package/dist/esm/store/removeEnabledElement.d.ts +3 -0
- package/dist/esm/store/removeEnabledElement.js +85 -0
- package/dist/esm/store/state.d.ts +18 -0
- package/dist/esm/store/state.js +34 -0
- package/dist/esm/store/svgNodeCache.d.ts +3 -0
- package/dist/esm/store/svgNodeCache.js +5 -0
- package/dist/esm/synchronizers/callbacks/areViewportsCoplanar.d.ts +2 -0
- package/dist/esm/synchronizers/callbacks/areViewportsCoplanar.js +7 -0
- package/dist/esm/synchronizers/callbacks/cameraSyncCallback.d.ts +3 -0
- package/dist/esm/synchronizers/callbacks/cameraSyncCallback.js +11 -0
- package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.d.ts +3 -0
- package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.js +67 -0
- package/dist/esm/synchronizers/callbacks/presentationViewSyncCallback.d.ts +2 -0
- package/dist/esm/synchronizers/callbacks/presentationViewSyncCallback.js +12 -0
- package/dist/esm/synchronizers/callbacks/slabThicknessSyncCallback.d.ts +2 -0
- package/dist/esm/synchronizers/callbacks/slabThicknessSyncCallback.js +15 -0
- package/dist/esm/synchronizers/callbacks/voiSyncCallback.d.ts +5 -0
- package/dist/esm/synchronizers/callbacks/voiSyncCallback.js +35 -0
- package/dist/esm/synchronizers/callbacks/zoomPanSyncCallback.d.ts +3 -0
- package/dist/esm/synchronizers/callbacks/zoomPanSyncCallback.js +19 -0
- package/dist/esm/synchronizers/index.d.ts +8 -0
- package/dist/esm/synchronizers/index.js +8 -0
- package/dist/esm/synchronizers/synchronizers/createCameraPositionSynchronizer.d.ts +2 -0
- package/dist/esm/synchronizers/synchronizers/createCameraPositionSynchronizer.js +8 -0
- package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.d.ts +2 -0
- package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.js +14 -0
- package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.d.ts +3 -0
- package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.js +8 -0
- package/dist/esm/synchronizers/synchronizers/createSlabThicknessSynchronizer.d.ts +2 -0
- package/dist/esm/synchronizers/synchronizers/createSlabThicknessSynchronizer.js +8 -0
- package/dist/esm/synchronizers/synchronizers/createVOISynchronizer.d.ts +7 -0
- package/dist/esm/synchronizers/synchronizers/createVOISynchronizer.js +15 -0
- package/dist/esm/synchronizers/synchronizers/createZoomPanSynchronizer.d.ts +2 -0
- package/dist/esm/synchronizers/synchronizers/createZoomPanSynchronizer.js +8 -0
- package/dist/esm/synchronizers/synchronizers/index.d.ts +7 -0
- package/dist/esm/synchronizers/synchronizers/index.js +7 -0
- package/dist/esm/tools/AdvancedMagnifyTool.d.ts +130 -0
- package/dist/esm/tools/AdvancedMagnifyTool.js +927 -0
- package/dist/esm/tools/AnnotationEraserTool.d.ts +10 -0
- package/dist/esm/tools/AnnotationEraserTool.js +56 -0
- package/dist/esm/tools/CrosshairsTool.d.ts +71 -0
- package/dist/esm/tools/CrosshairsTool.js +1449 -0
- package/dist/esm/tools/MIPJumpToClickTool.d.ts +8 -0
- package/dist/esm/tools/MIPJumpToClickTool.js +56 -0
- package/dist/esm/tools/MagnifyTool.d.ts +25 -0
- package/dist/esm/tools/MagnifyTool.js +180 -0
- package/dist/esm/tools/OrientationMarkerTool.d.ts +78 -0
- package/dist/esm/tools/OrientationMarkerTool.js +284 -0
- package/dist/esm/tools/OverlayGridTool.d.ts +29 -0
- package/dist/esm/tools/OverlayGridTool.js +164 -0
- package/dist/esm/tools/PanTool.d.ts +10 -0
- package/dist/esm/tools/PanTool.js +44 -0
- package/dist/esm/tools/PlanarRotateTool.d.ts +12 -0
- package/dist/esm/tools/PlanarRotateTool.js +64 -0
- package/dist/esm/tools/ReferenceCursors.d.ts +24 -0
- package/dist/esm/tools/ReferenceCursors.js +308 -0
- package/dist/esm/tools/ReferenceLinesTool.d.ts +27 -0
- package/dist/esm/tools/ReferenceLinesTool.js +232 -0
- package/dist/esm/tools/ScaleOverlayTool.d.ts +38 -0
- package/dist/esm/tools/ScaleOverlayTool.js +397 -0
- package/dist/esm/tools/SculptorTool/CircleSculptCursor.d.ts +20 -0
- package/dist/esm/tools/SculptorTool/CircleSculptCursor.js +107 -0
- package/dist/esm/tools/SculptorTool.d.ts +41 -0
- package/dist/esm/tools/SculptorTool.js +289 -0
- package/dist/esm/tools/SegmentationIntersectionTool.d.ts +18 -0
- package/dist/esm/tools/SegmentationIntersectionTool.js +177 -0
- package/dist/esm/tools/StackScrollTool.d.ts +15 -0
- package/dist/esm/tools/StackScrollTool.js +78 -0
- package/dist/esm/tools/TrackballRotateTool.d.ts +19 -0
- package/dist/esm/tools/TrackballRotateTool.js +179 -0
- package/dist/esm/tools/VolumeRotateTool.d.ts +10 -0
- package/dist/esm/tools/VolumeRotateTool.js +52 -0
- package/dist/esm/tools/WindowLevelRegionTool.d.ts +26 -0
- package/dist/esm/tools/WindowLevelRegionTool.js +220 -0
- package/dist/esm/tools/WindowLevelTool.d.ts +37 -0
- package/dist/esm/tools/WindowLevelTool.js +201 -0
- package/dist/esm/tools/ZoomTool.d.ts +19 -0
- package/dist/esm/tools/ZoomTool.js +180 -0
- package/dist/esm/tools/annotation/AngleTool.d.ts +37 -0
- package/dist/esm/tools/annotation/AngleTool.js +486 -0
- package/dist/esm/tools/annotation/ArrowAnnotateTool.d.ts +39 -0
- package/dist/esm/tools/annotation/ArrowAnnotateTool.js +467 -0
- package/dist/esm/tools/annotation/BidirectionalTool.d.ts +40 -0
- package/dist/esm/tools/annotation/BidirectionalTool.js +728 -0
- package/dist/esm/tools/annotation/CircleROITool.d.ts +39 -0
- package/dist/esm/tools/annotation/CircleROITool.js +638 -0
- package/dist/esm/tools/annotation/CobbAngleTool.d.ts +61 -0
- package/dist/esm/tools/annotation/CobbAngleTool.js +688 -0
- package/dist/esm/tools/annotation/DragProbeTool.d.ts +23 -0
- package/dist/esm/tools/annotation/DragProbeTool.js +130 -0
- package/dist/esm/tools/annotation/ETDRSGridTool.d.ts +41 -0
- package/dist/esm/tools/annotation/ETDRSGridTool.js +354 -0
- package/dist/esm/tools/annotation/EllipticalROITool.d.ts +45 -0
- package/dist/esm/tools/annotation/EllipticalROITool.js +710 -0
- package/dist/esm/tools/annotation/HeightTool.d.ts +36 -0
- package/dist/esm/tools/annotation/HeightTool.js +434 -0
- package/dist/esm/tools/annotation/KeyImageTool.d.ts +34 -0
- package/dist/esm/tools/annotation/KeyImageTool.js +269 -0
- package/dist/esm/tools/annotation/LabelTool.d.ts +35 -0
- package/dist/esm/tools/annotation/LabelTool.js +323 -0
- package/dist/esm/tools/annotation/LengthTool.d.ts +38 -0
- package/dist/esm/tools/annotation/LengthTool.js +468 -0
- package/dist/esm/tools/annotation/LivewireContourSegmentationTool.d.ts +10 -0
- package/dist/esm/tools/annotation/LivewireContourSegmentationTool.js +89 -0
- package/dist/esm/tools/annotation/LivewireContourTool.d.ts +67 -0
- package/dist/esm/tools/annotation/LivewireContourTool.js +657 -0
- package/dist/esm/tools/annotation/PlanarFreehandContourSegmentationTool.d.ts +9 -0
- package/dist/esm/tools/annotation/PlanarFreehandContourSegmentationTool.js +29 -0
- package/dist/esm/tools/annotation/PlanarFreehandROITool.d.ts +59 -0
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js +530 -0
- package/dist/esm/tools/annotation/ProbeTool.d.ts +35 -0
- package/dist/esm/tools/annotation/ProbeTool.js +363 -0
- package/dist/esm/tools/annotation/RectangleROITool.d.ts +43 -0
- package/dist/esm/tools/annotation/RectangleROITool.js +566 -0
- package/dist/esm/tools/annotation/RegionSegmentPlusTool.d.ts +16 -0
- package/dist/esm/tools/annotation/RegionSegmentPlusTool.js +55 -0
- package/dist/esm/tools/annotation/RegionSegmentTool.d.ts +21 -0
- package/dist/esm/tools/annotation/RegionSegmentTool.js +102 -0
- package/dist/esm/tools/annotation/SplineContourSegmentationTool.d.ts +8 -0
- package/dist/esm/tools/annotation/SplineContourSegmentationTool.js +17 -0
- package/dist/esm/tools/annotation/SplineROITool.d.ts +73 -0
- package/dist/esm/tools/annotation/SplineROITool.js +788 -0
- package/dist/esm/tools/annotation/UltrasoundDirectionalTool.d.ts +34 -0
- package/dist/esm/tools/annotation/UltrasoundDirectionalTool.js +461 -0
- package/dist/esm/tools/annotation/VideoRedactionTool.d.ts +46 -0
- package/dist/esm/tools/annotation/VideoRedactionTool.js +442 -0
- package/dist/esm/tools/annotation/WholeBodySegmentTool.d.ts +29 -0
- package/dist/esm/tools/annotation/WholeBodySegmentTool.js +223 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.d.ts +2 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.js +260 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.d.ts +2 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.js +289 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/editLoopCommon.d.ts +2 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/editLoopCommon.js +146 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/findOpenUShapedContourVectorToPeak.d.ts +4 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/findOpenUShapedContourVectorToPeak.js +39 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.d.ts +2 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.js +329 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/openContourEndEditLoop.d.ts +2 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/openContourEndEditLoop.js +48 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/renderMethods.d.ts +2 -0
- package/dist/esm/tools/annotation/planarFreehandROITool/renderMethods.js +216 -0
- package/dist/esm/tools/annotation/splines/BSpline.d.ts +5 -0
- package/dist/esm/tools/annotation/splines/BSpline.js +9 -0
- package/dist/esm/tools/annotation/splines/CardinalSpline.d.ts +12 -0
- package/dist/esm/tools/annotation/splines/CardinalSpline.js +32 -0
- package/dist/esm/tools/annotation/splines/CatmullRomSpline.d.ts +5 -0
- package/dist/esm/tools/annotation/splines/CatmullRomSpline.js +7 -0
- package/dist/esm/tools/annotation/splines/CubicSpline.d.ts +13 -0
- package/dist/esm/tools/annotation/splines/CubicSpline.js +164 -0
- package/dist/esm/tools/annotation/splines/LinearSpline.d.ts +5 -0
- package/dist/esm/tools/annotation/splines/LinearSpline.js +7 -0
- package/dist/esm/tools/annotation/splines/QuadraticBezier.d.ts +6 -0
- package/dist/esm/tools/annotation/splines/QuadraticBezier.js +15 -0
- package/dist/esm/tools/annotation/splines/QuadraticSpline.d.ts +9 -0
- package/dist/esm/tools/annotation/splines/QuadraticSpline.js +13 -0
- package/dist/esm/tools/annotation/splines/Spline.d.ts +51 -0
- package/dist/esm/tools/annotation/splines/Spline.js +395 -0
- package/dist/esm/tools/annotation/splines/index.d.ts +9 -0
- package/dist/esm/tools/annotation/splines/index.js +9 -0
- package/dist/esm/tools/base/AnnotationDisplayTool.d.ts +14 -0
- package/dist/esm/tools/base/AnnotationDisplayTool.js +98 -0
- package/dist/esm/tools/base/AnnotationTool.d.ts +71 -0
- package/dist/esm/tools/base/AnnotationTool.js +271 -0
- package/dist/esm/tools/base/BaseTool.d.ts +38 -0
- package/dist/esm/tools/base/BaseTool.js +128 -0
- package/dist/esm/tools/base/ContourBaseTool.d.ts +25 -0
- package/dist/esm/tools/base/ContourBaseTool.js +121 -0
- package/dist/esm/tools/base/ContourSegmentationBaseTool.d.ts +19 -0
- package/dist/esm/tools/base/ContourSegmentationBaseTool.js +133 -0
- package/dist/esm/tools/base/GrowCutBaseTool.d.ts +64 -0
- package/dist/esm/tools/base/GrowCutBaseTool.js +209 -0
- package/dist/esm/tools/base/index.d.ts +4 -0
- package/dist/esm/tools/base/index.js +4 -0
- package/dist/esm/tools/displayTools/Contour/contourConfig.d.ts +3 -0
- package/dist/esm/tools/displayTools/Contour/contourConfig.js +20 -0
- package/dist/esm/tools/displayTools/Contour/contourDisplay.d.ts +9 -0
- package/dist/esm/tools/displayTools/Contour/contourDisplay.js +51 -0
- package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.d.ts +5 -0
- package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.js +77 -0
- package/dist/esm/tools/displayTools/Contour/contourHandler/utils.d.ts +4 -0
- package/dist/esm/tools/displayTools/Contour/contourHandler/utils.js +41 -0
- package/dist/esm/tools/displayTools/Contour/index.d.ts +2 -0
- package/dist/esm/tools/displayTools/Contour/index.js +2 -0
- package/dist/esm/tools/displayTools/Contour/removeContourFromElement.d.ts +2 -0
- package/dist/esm/tools/displayTools/Contour/removeContourFromElement.js +12 -0
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +7 -0
- package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +93 -0
- package/dist/esm/tools/displayTools/Labelmap/addVolumesAsIndependentComponents.d.ts +10 -0
- package/dist/esm/tools/displayTools/Labelmap/addVolumesAsIndependentComponents.js +123 -0
- package/dist/esm/tools/displayTools/Labelmap/index.d.ts +4 -0
- package/dist/esm/tools/displayTools/Labelmap/index.js +4 -0
- package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.d.ts +3 -0
- package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.js +17 -0
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.d.ts +11 -0
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +267 -0
- package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.d.ts +2 -0
- package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js +8 -0
- package/dist/esm/tools/displayTools/Surface/addOrUpdateSurfaceToElement.d.ts +3 -0
- package/dist/esm/tools/displayTools/Surface/addOrUpdateSurfaceToElement.js +67 -0
- package/dist/esm/tools/displayTools/Surface/index.d.ts +2 -0
- package/dist/esm/tools/displayTools/Surface/index.js +2 -0
- package/dist/esm/tools/displayTools/Surface/removeSurfaceFromElement.d.ts +2 -0
- package/dist/esm/tools/displayTools/Surface/removeSurfaceFromElement.js +10 -0
- package/dist/esm/tools/displayTools/Surface/surfaceConfig.d.ts +3 -0
- package/dist/esm/tools/displayTools/Surface/surfaceConfig.js +8 -0
- package/dist/esm/tools/displayTools/Surface/surfaceDisplay.d.ts +10 -0
- package/dist/esm/tools/displayTools/Surface/surfaceDisplay.js +76 -0
- package/dist/esm/tools/distancePointToContour.d.ts +3 -0
- package/dist/esm/tools/distancePointToContour.js +18 -0
- package/dist/esm/tools/index.d.ts +57 -0
- package/dist/esm/tools/index.js +57 -0
- package/dist/esm/tools/segmentation/BrushTool.d.ts +27 -0
- package/dist/esm/tools/segmentation/BrushTool.js +355 -0
- package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.d.ts +68 -0
- package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js +478 -0
- package/dist/esm/tools/segmentation/CircleScissorsTool.d.ts +34 -0
- package/dist/esm/tools/segmentation/CircleScissorsTool.js +233 -0
- package/dist/esm/tools/segmentation/LabelmapBaseTool.d.ts +99 -0
- package/dist/esm/tools/segmentation/LabelmapBaseTool.js +289 -0
- package/dist/esm/tools/segmentation/PaintFillTool.d.ts +13 -0
- package/dist/esm/tools/segmentation/PaintFillTool.js +231 -0
- package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts +69 -0
- package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js +437 -0
- package/dist/esm/tools/segmentation/RectangleROIThresholdTool.d.ts +45 -0
- package/dist/esm/tools/segmentation/RectangleROIThresholdTool.js +145 -0
- package/dist/esm/tools/segmentation/RectangleScissorsTool.d.ts +32 -0
- package/dist/esm/tools/segmentation/RectangleScissorsTool.js +227 -0
- package/dist/esm/tools/segmentation/SegmentSelectTool.d.ts +20 -0
- package/dist/esm/tools/segmentation/SegmentSelectTool.js +99 -0
- package/dist/esm/tools/segmentation/SphereScissorsTool.d.ts +33 -0
- package/dist/esm/tools/segmentation/SphereScissorsTool.js +227 -0
- package/dist/esm/tools/segmentation/strategies/BrushStrategy.d.ts +125 -0
- package/dist/esm/tools/segmentation/strategies/BrushStrategy.js +156 -0
- package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.d.ts +6 -0
- package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.js +59 -0
- package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.d.ts +7 -0
- package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js +83 -0
- package/dist/esm/tools/segmentation/strategies/compositions/ensureImageVolume.d.ts +4 -0
- package/dist/esm/tools/segmentation/strategies/compositions/ensureImageVolume.js +35 -0
- package/dist/esm/tools/segmentation/strategies/compositions/ensureSegmentationVolume.d.ts +4 -0
- package/dist/esm/tools/segmentation/strategies/compositions/ensureSegmentationVolume.js +20 -0
- package/dist/esm/tools/segmentation/strategies/compositions/erase.d.ts +5 -0
- package/dist/esm/tools/segmentation/strategies/compositions/erase.js +6 -0
- package/dist/esm/tools/segmentation/strategies/compositions/index.d.ts +47 -0
- package/dist/esm/tools/segmentation/strategies/compositions/index.js +24 -0
- package/dist/esm/tools/segmentation/strategies/compositions/islandRemovalComposition.d.ts +5 -0
- package/dist/esm/tools/segmentation/strategies/compositions/islandRemovalComposition.js +28 -0
- package/dist/esm/tools/segmentation/strategies/compositions/labelmapStatistics.d.ts +7 -0
- package/dist/esm/tools/segmentation/strategies/compositions/labelmapStatistics.js +12 -0
- package/dist/esm/tools/segmentation/strategies/compositions/preview.d.ts +8 -0
- package/dist/esm/tools/segmentation/strategies/compositions/preview.js +92 -0
- package/dist/esm/tools/segmentation/strategies/compositions/regionFill.d.ts +5 -0
- package/dist/esm/tools/segmentation/strategies/compositions/regionFill.js +23 -0
- package/dist/esm/tools/segmentation/strategies/compositions/setValue.d.ts +8 -0
- package/dist/esm/tools/segmentation/strategies/compositions/setValue.js +29 -0
- package/dist/esm/tools/segmentation/strategies/compositions/threshold.d.ts +5 -0
- package/dist/esm/tools/segmentation/strategies/compositions/threshold.js +21 -0
- package/dist/esm/tools/segmentation/strategies/eraseCircle.d.ts +2 -0
- package/dist/esm/tools/segmentation/strategies/eraseCircle.js +6 -0
- package/dist/esm/tools/segmentation/strategies/eraseRectangle.d.ts +8 -0
- package/dist/esm/tools/segmentation/strategies/eraseRectangle.js +13 -0
- package/dist/esm/tools/segmentation/strategies/eraseSphere.d.ts +2 -0
- package/dist/esm/tools/segmentation/strategies/eraseSphere.js +6 -0
- package/dist/esm/tools/segmentation/strategies/fillCircle.d.ts +14 -0
- package/dist/esm/tools/segmentation/strategies/fillCircle.js +71 -0
- package/dist/esm/tools/segmentation/strategies/fillRectangle.d.ts +6 -0
- package/dist/esm/tools/segmentation/strategies/fillRectangle.js +71 -0
- package/dist/esm/tools/segmentation/strategies/fillSphere.d.ts +7 -0
- package/dist/esm/tools/segmentation/strategies/fillSphere.js +40 -0
- package/dist/esm/tools/segmentation/strategies/index.d.ts +3 -0
- package/dist/esm/tools/segmentation/strategies/index.js +3 -0
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.d.ts +15 -0
- package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js +112 -0
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +5 -0
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js +8 -0
- package/dist/esm/types/AnnotationGroupSelector.d.ts +2 -0
- package/dist/esm/types/AnnotationGroupSelector.js +0 -0
- package/dist/esm/types/AnnotationRenderContext.d.ts +12 -0
- package/dist/esm/types/AnnotationRenderContext.js +0 -0
- package/dist/esm/types/AnnotationStyle.d.ts +30 -0
- package/dist/esm/types/AnnotationStyle.js +0 -0
- package/dist/esm/types/AnnotationTypes.d.ts +45 -0
- package/dist/esm/types/AnnotationTypes.js +0 -0
- package/dist/esm/types/BoundsIJK.d.ts +3 -0
- package/dist/esm/types/BoundsIJK.js +0 -0
- package/dist/esm/types/CINETypes.d.ts +30 -0
- package/dist/esm/types/CINETypes.js +0 -0
- package/dist/esm/types/CalculatorTypes.d.ts +42 -0
- package/dist/esm/types/CalculatorTypes.js +0 -0
- package/dist/esm/types/CardinalSplineProps.d.ts +5 -0
- package/dist/esm/types/CardinalSplineProps.js +0 -0
- package/dist/esm/types/ClosestControlPoint.d.ts +4 -0
- package/dist/esm/types/ClosestControlPoint.js +0 -0
- package/dist/esm/types/ClosestPoint.d.ts +5 -0
- package/dist/esm/types/ClosestPoint.js +0 -0
- package/dist/esm/types/ClosestSplinePoint.d.ts +4 -0
- package/dist/esm/types/ClosestSplinePoint.js +0 -0
- package/dist/esm/types/ContourAnnotation.d.ts +20 -0
- package/dist/esm/types/ContourAnnotation.js +6 -0
- package/dist/esm/types/ContourSegmentationAnnotation.d.ts +24 -0
- package/dist/esm/types/ContourSegmentationAnnotation.js +0 -0
- package/dist/esm/types/ContourTypes.d.ts +27 -0
- package/dist/esm/types/ContourTypes.js +0 -0
- package/dist/esm/types/ControlPointInfo.d.ts +5 -0
- package/dist/esm/types/ControlPointInfo.js +0 -0
- package/dist/esm/types/CursorTypes.d.ts +18 -0
- package/dist/esm/types/CursorTypes.js +0 -0
- package/dist/esm/types/EventTypes.d.ts +234 -0
- package/dist/esm/types/EventTypes.js +0 -0
- package/dist/esm/types/FloodFillTypes.d.ts +16 -0
- package/dist/esm/types/FloodFillTypes.js +0 -0
- package/dist/esm/types/IAnnotationManager.d.ts +14 -0
- package/dist/esm/types/IAnnotationManager.js +0 -0
- package/dist/esm/types/IBaseTool.d.ts +2 -0
- package/dist/esm/types/IBaseTool.js +0 -0
- package/dist/esm/types/IDistance.d.ts +7 -0
- package/dist/esm/types/IDistance.js +0 -0
- package/dist/esm/types/IPoints.d.ts +8 -0
- package/dist/esm/types/IPoints.js +0 -0
- package/dist/esm/types/ISculptToolShape.d.ts +12 -0
- package/dist/esm/types/ISculptToolShape.js +0 -0
- package/dist/esm/types/ISetToolModeOptions.d.ts +16 -0
- package/dist/esm/types/ISetToolModeOptions.js +0 -0
- package/dist/esm/types/ISpline.d.ts +30 -0
- package/dist/esm/types/ISpline.js +0 -0
- package/dist/esm/types/ISynchronizerEventHandler.d.ts +5 -0
- package/dist/esm/types/ISynchronizerEventHandler.js +0 -0
- package/dist/esm/types/IToolClassReference.d.ts +3 -0
- package/dist/esm/types/IToolClassReference.js +0 -0
- package/dist/esm/types/IToolGroup.d.ts +3 -0
- package/dist/esm/types/IToolGroup.js +0 -0
- package/dist/esm/types/ITouchPoints.d.ts +11 -0
- package/dist/esm/types/ITouchPoints.js +0 -0
- package/dist/esm/types/InteractionTypes.d.ts +2 -0
- package/dist/esm/types/InteractionTypes.js +0 -0
- package/dist/esm/types/InternalToolTypes.d.ts +15 -0
- package/dist/esm/types/InternalToolTypes.js +0 -0
- package/dist/esm/types/InterpolationTypes.d.ts +20 -0
- package/dist/esm/types/InterpolationTypes.js +0 -0
- package/dist/esm/types/LabelmapToolOperationData.d.ts +26 -0
- package/dist/esm/types/LabelmapToolOperationData.js +0 -0
- package/dist/esm/types/LabelmapTypes.d.ts +29 -0
- package/dist/esm/types/LabelmapTypes.js +0 -0
- package/dist/esm/types/PlanarBoundingBox.d.ts +7 -0
- package/dist/esm/types/PlanarBoundingBox.js +0 -0
- package/dist/esm/types/SVGDrawingHelper.d.ts +9 -0
- package/dist/esm/types/SVGDrawingHelper.js +0 -0
- package/dist/esm/types/SegmentationStateTypes.d.ts +96 -0
- package/dist/esm/types/SegmentationStateTypes.js +0 -0
- package/dist/esm/types/SplineCurveSegment.d.ts +14 -0
- package/dist/esm/types/SplineCurveSegment.js +0 -0
- package/dist/esm/types/SplineLineSegment.d.ts +10 -0
- package/dist/esm/types/SplineLineSegment.js +0 -0
- package/dist/esm/types/SplineProps.d.ts +5 -0
- package/dist/esm/types/SplineProps.js +0 -0
- package/dist/esm/types/SurfaceTypes.d.ts +5 -0
- package/dist/esm/types/SurfaceTypes.js +0 -0
- package/dist/esm/types/ToolAction.d.ts +8 -0
- package/dist/esm/types/ToolAction.js +0 -0
- package/dist/esm/types/ToolHandle.d.ts +15 -0
- package/dist/esm/types/ToolHandle.js +0 -0
- package/dist/esm/types/ToolProps.d.ts +13 -0
- package/dist/esm/types/ToolProps.js +0 -0
- package/dist/esm/types/ToolSpecificAnnotationTypes.d.ts +477 -0
- package/dist/esm/types/ToolSpecificAnnotationTypes.js +0 -0
- package/dist/esm/types/index.d.ts +49 -0
- package/dist/esm/types/index.js +0 -0
- package/dist/esm/utilities/AnnotationMultiSlice.d.ts +11 -0
- package/dist/esm/utilities/AnnotationMultiSlice.js +68 -0
- package/dist/esm/utilities/BucketQueue.d.ts +20 -0
- package/dist/esm/utilities/BucketQueue.js +78 -0
- package/dist/esm/utilities/annotationHydration.d.ts +9 -0
- package/dist/esm/utilities/annotationHydration.js +82 -0
- package/dist/esm/utilities/boundingBox/extend2DBoundingBoxInViewAxis.d.ts +3 -0
- package/dist/esm/utilities/boundingBox/extend2DBoundingBoxInViewAxis.js +10 -0
- package/dist/esm/utilities/boundingBox/getBoundingBoxAroundShape.d.ts +5 -0
- package/dist/esm/utilities/boundingBox/getBoundingBoxAroundShape.js +55 -0
- package/dist/esm/utilities/boundingBox/index.d.ts +3 -0
- package/dist/esm/utilities/boundingBox/index.js +3 -0
- package/dist/esm/utilities/calibrateImageSpacing.d.ts +2 -0
- package/dist/esm/utilities/calibrateImageSpacing.js +18 -0
- package/dist/esm/utilities/cine/events.d.ts +5 -0
- package/dist/esm/utilities/cine/events.js +6 -0
- package/dist/esm/utilities/cine/index.d.ts +4 -0
- package/dist/esm/utilities/cine/index.js +4 -0
- package/dist/esm/utilities/cine/playClip.d.ts +8 -0
- package/dist/esm/utilities/cine/playClip.js +352 -0
- package/dist/esm/utilities/cine/state.d.ts +5 -0
- package/dist/esm/utilities/cine/state.js +16 -0
- package/dist/esm/utilities/contourSegmentation/addContourSegmentationAnnotation.d.ts +2 -0
- package/dist/esm/utilities/contourSegmentation/addContourSegmentationAnnotation.js +24 -0
- package/dist/esm/utilities/contourSegmentation/areSameSegment.d.ts +2 -0
- package/dist/esm/utilities/contourSegmentation/areSameSegment.js +6 -0
- package/dist/esm/utilities/contourSegmentation/index.d.ts +4 -0
- package/dist/esm/utilities/contourSegmentation/index.js +4 -0
- package/dist/esm/utilities/contourSegmentation/isContourSegmentationAnnotation.d.ts +3 -0
- package/dist/esm/utilities/contourSegmentation/isContourSegmentationAnnotation.js +3 -0
- package/dist/esm/utilities/contourSegmentation/removeContourSegmentationAnnotation.d.ts +2 -0
- package/dist/esm/utilities/contourSegmentation/removeContourSegmentationAnnotation.js +17 -0
- package/dist/esm/utilities/contours/AnnotationToPointData.d.ts +11 -0
- package/dist/esm/utilities/contours/AnnotationToPointData.js +38 -0
- package/dist/esm/utilities/contours/RectangleROIStartEndThreshold.d.ts +6 -0
- package/dist/esm/utilities/contours/RectangleROIStartEndThreshold.js +40 -0
- package/dist/esm/utilities/contours/areCoplanarContours.d.ts +2 -0
- package/dist/esm/utilities/contours/areCoplanarContours.js +15 -0
- package/dist/esm/utilities/contours/calculatePerimeter.d.ts +2 -0
- package/dist/esm/utilities/contours/calculatePerimeter.js +16 -0
- package/dist/esm/utilities/contours/contourFinder.d.ts +7 -0
- package/dist/esm/utilities/contours/contourFinder.js +62 -0
- package/dist/esm/utilities/contours/detectContourHoles.d.ts +5 -0
- package/dist/esm/utilities/contours/detectContourHoles.js +73 -0
- package/dist/esm/utilities/contours/findHandlePolylineIndex.d.ts +2 -0
- package/dist/esm/utilities/contours/findHandlePolylineIndex.js +31 -0
- package/dist/esm/utilities/contours/generateContourSetsFromLabelmap.d.ts +4 -0
- package/dist/esm/utilities/contours/generateContourSetsFromLabelmap.js +110 -0
- package/dist/esm/utilities/contours/getContourHolesDataCanvas.d.ts +3 -0
- package/dist/esm/utilities/contours/getContourHolesDataCanvas.js +14 -0
- package/dist/esm/utilities/contours/getContourHolesDataWorld.d.ts +3 -0
- package/dist/esm/utilities/contours/getContourHolesDataWorld.js +5 -0
- package/dist/esm/utilities/contours/getDeduplicatedVTKPolyDataPoints.d.ts +11 -0
- package/dist/esm/utilities/contours/getDeduplicatedVTKPolyDataPoints.js +45 -0
- package/dist/esm/utilities/contours/index.d.ts +13 -0
- package/dist/esm/utilities/contours/index.js +13 -0
- package/dist/esm/utilities/contours/interpolation/acceptAutogeneratedInterpolations.d.ts +3 -0
- package/dist/esm/utilities/contours/interpolation/acceptAutogeneratedInterpolations.js +4 -0
- package/dist/esm/utilities/contours/interpolation/createPolylineToolData.d.ts +2 -0
- package/dist/esm/utilities/contours/interpolation/createPolylineToolData.js +38 -0
- package/dist/esm/utilities/contours/interpolation/findAnnotationForInterpolation.d.ts +7 -0
- package/dist/esm/utilities/contours/interpolation/findAnnotationForInterpolation.js +106 -0
- package/dist/esm/utilities/contours/interpolation/getInterpolationData.d.ts +7 -0
- package/dist/esm/utilities/contours/interpolation/getInterpolationData.js +47 -0
- package/dist/esm/utilities/contours/interpolation/getInterpolationDataCollection.d.ts +4 -0
- package/dist/esm/utilities/contours/interpolation/getInterpolationDataCollection.js +14 -0
- package/dist/esm/utilities/contours/interpolation/interpolate.d.ts +11 -0
- package/dist/esm/utilities/contours/interpolation/interpolate.js +339 -0
- package/dist/esm/utilities/contours/interpolation/selectHandles.d.ts +4 -0
- package/dist/esm/utilities/contours/interpolation/selectHandles.js +162 -0
- package/dist/esm/utilities/contours/interpolation/updateChildInterpolationUID.d.ts +2 -0
- package/dist/esm/utilities/contours/interpolation/updateChildInterpolationUID.js +12 -0
- package/dist/esm/utilities/contours/reverseIfAntiClockwise.d.ts +2 -0
- package/dist/esm/utilities/contours/reverseIfAntiClockwise.js +11 -0
- package/dist/esm/utilities/contours/updateContourPolyline.d.ts +17 -0
- package/dist/esm/utilities/contours/updateContourPolyline.js +52 -0
- package/dist/esm/utilities/debounce.d.ts +6 -0
- package/dist/esm/utilities/debounce.js +113 -0
- package/dist/esm/utilities/drawing/getTextBoxCoordsCanvas.d.ts +2 -0
- package/dist/esm/utilities/drawing/getTextBoxCoordsCanvas.js +24 -0
- package/dist/esm/utilities/drawing/index.d.ts +2 -0
- package/dist/esm/utilities/drawing/index.js +2 -0
- package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.d.ts +12 -0
- package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.js +98 -0
- package/dist/esm/utilities/dynamicVolume/getDataInTime.d.ts +8 -0
- package/dist/esm/utilities/dynamicVolume/getDataInTime.js +111 -0
- package/dist/esm/utilities/dynamicVolume/index.d.ts +4 -0
- package/dist/esm/utilities/dynamicVolume/index.js +4 -0
- package/dist/esm/utilities/geometricSurfaceUtils.d.ts +8 -0
- package/dist/esm/utilities/geometricSurfaceUtils.js +103 -0
- package/dist/esm/utilities/getAnnotationNearPoint.d.ts +5 -0
- package/dist/esm/utilities/getAnnotationNearPoint.js +46 -0
- package/dist/esm/utilities/getCalibratedUnits.d.ts +16 -0
- package/dist/esm/utilities/getCalibratedUnits.js +155 -0
- package/dist/esm/utilities/getPixelValueUnits.d.ts +8 -0
- package/dist/esm/utilities/getPixelValueUnits.js +31 -0
- package/dist/esm/utilities/getSphereBoundsInfo.d.ts +14 -0
- package/dist/esm/utilities/getSphereBoundsInfo.js +64 -0
- package/dist/esm/utilities/getToolsWithModesForElement.d.ts +4 -0
- package/dist/esm/utilities/getToolsWithModesForElement.js +24 -0
- package/dist/esm/utilities/getVOIMultipliers.d.ts +5 -0
- package/dist/esm/utilities/getVOIMultipliers.js +18 -0
- package/dist/esm/utilities/getViewportForAnnotation.d.ts +3 -0
- package/dist/esm/utilities/getViewportForAnnotation.js +5 -0
- package/dist/esm/utilities/getViewportsForAnnotation.d.ts +3 -0
- package/dist/esm/utilities/getViewportsForAnnotation.js +16 -0
- package/dist/esm/utilities/index.d.ts +40 -0
- package/dist/esm/utilities/index.js +40 -0
- package/dist/esm/utilities/isObject.d.ts +2 -0
- package/dist/esm/utilities/isObject.js +5 -0
- package/dist/esm/utilities/livewire/LiveWirePath.d.ts +19 -0
- package/dist/esm/utilities/livewire/LiveWirePath.js +71 -0
- package/dist/esm/utilities/livewire/LivewireScissors.d.ts +38 -0
- package/dist/esm/utilities/livewire/LivewireScissors.js +305 -0
- package/dist/esm/utilities/math/aabb/distanceToPoint.d.ts +2 -0
- package/dist/esm/utilities/math/aabb/distanceToPoint.js +4 -0
- package/dist/esm/utilities/math/aabb/distanceToPointSquared.d.ts +2 -0
- package/dist/esm/utilities/math/aabb/distanceToPointSquared.js +20 -0
- package/dist/esm/utilities/math/aabb/index.d.ts +3 -0
- package/dist/esm/utilities/math/aabb/index.js +3 -0
- package/dist/esm/utilities/math/aabb/intersectAABB.d.ts +2 -0
- package/dist/esm/utilities/math/aabb/intersectAABB.js +6 -0
- package/dist/esm/utilities/math/angle/angleBetweenLines.d.ts +6 -0
- package/dist/esm/utilities/math/angle/angleBetweenLines.js +30 -0
- package/dist/esm/utilities/math/angle/index.d.ts +2 -0
- package/dist/esm/utilities/math/angle/index.js +2 -0
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.d.ts +26 -0
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.js +119 -0
- package/dist/esm/utilities/math/basic/Calculator.d.ts +8 -0
- package/dist/esm/utilities/math/basic/Calculator.js +3 -0
- package/dist/esm/utilities/math/basic/index.d.ts +3 -0
- package/dist/esm/utilities/math/basic/index.js +3 -0
- package/dist/esm/utilities/math/circle/_types.d.ts +5 -0
- package/dist/esm/utilities/math/circle/_types.js +0 -0
- package/dist/esm/utilities/math/circle/getCanvasCircleCorners.d.ts +3 -0
- package/dist/esm/utilities/math/circle/getCanvasCircleCorners.js +8 -0
- package/dist/esm/utilities/math/circle/getCanvasCircleRadius.d.ts +2 -0
- package/dist/esm/utilities/math/circle/getCanvasCircleRadius.js +5 -0
- package/dist/esm/utilities/math/circle/index.d.ts +3 -0
- package/dist/esm/utilities/math/circle/index.js +3 -0
- package/dist/esm/utilities/math/ellipse/getCanvasEllipseCorners.d.ts +8 -0
- package/dist/esm/utilities/math/ellipse/getCanvasEllipseCorners.js +6 -0
- package/dist/esm/utilities/math/ellipse/index.d.ts +3 -0
- package/dist/esm/utilities/math/ellipse/index.js +3 -0
- package/dist/esm/utilities/math/ellipse/pointInEllipse.d.ts +11 -0
- package/dist/esm/utilities/math/ellipse/pointInEllipse.js +36 -0
- package/dist/esm/utilities/math/ellipse/pointInEllipsoidWithConstraint.d.ts +9 -0
- package/dist/esm/utilities/math/ellipse/pointInEllipsoidWithConstraint.js +2 -0
- package/dist/esm/utilities/math/index.d.ts +11 -0
- package/dist/esm/utilities/math/index.js +11 -0
- package/dist/esm/utilities/math/line/distanceToPoint.d.ts +2 -0
- package/dist/esm/utilities/math/line/distanceToPoint.js +7 -0
- package/dist/esm/utilities/math/line/distanceToPointSquared.d.ts +2 -0
- package/dist/esm/utilities/math/line/distanceToPointSquared.js +4 -0
- package/dist/esm/utilities/math/line/distanceToPointSquaredInfo.d.ts +5 -0
- package/dist/esm/utilities/math/line/distanceToPointSquaredInfo.js +29 -0
- package/dist/esm/utilities/math/line/index.d.ts +6 -0
- package/dist/esm/utilities/math/line/index.js +6 -0
- package/dist/esm/utilities/math/line/intersectLine.d.ts +2 -0
- package/dist/esm/utilities/math/line/intersectLine.js +41 -0
- package/dist/esm/utilities/math/line/isPointOnLineSegment.d.ts +2 -0
- package/dist/esm/utilities/math/line/isPointOnLineSegment.js +18 -0
- package/dist/esm/utilities/math/midPoint.d.ts +5 -0
- package/dist/esm/utilities/math/midPoint.js +15 -0
- package/dist/esm/utilities/math/point/distanceToPoint.d.ts +4 -0
- package/dist/esm/utilities/math/point/distanceToPoint.js +4 -0
- package/dist/esm/utilities/math/point/distanceToPointSquared.d.ts +4 -0
- package/dist/esm/utilities/math/point/distanceToPointSquared.js +11 -0
- package/dist/esm/utilities/math/point/index.d.ts +3 -0
- package/dist/esm/utilities/math/point/index.js +3 -0
- package/dist/esm/utilities/math/point/mirror.d.ts +2 -0
- package/dist/esm/utilities/math/point/mirror.js +7 -0
- package/dist/esm/utilities/math/polyline/addCanvasPointsToArray.d.ts +4 -0
- package/dist/esm/utilities/math/polyline/addCanvasPointsToArray.js +38 -0
- package/dist/esm/utilities/math/polyline/areLineSegmentsIntersecting.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/areLineSegmentsIntersecting.js +55 -0
- package/dist/esm/utilities/math/polyline/combinePolyline.d.ts +4 -0
- package/dist/esm/utilities/math/polyline/combinePolyline.js +186 -0
- package/dist/esm/utilities/math/polyline/containsPoint.d.ts +5 -0
- package/dist/esm/utilities/math/polyline/containsPoint.js +39 -0
- package/dist/esm/utilities/math/polyline/containsPoints.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/containsPoints.js +9 -0
- package/dist/esm/utilities/math/polyline/decimate.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/decimate.js +46 -0
- package/dist/esm/utilities/math/polyline/getAABB.d.ts +4 -0
- package/dist/esm/utilities/math/polyline/getAABB.js +40 -0
- package/dist/esm/utilities/math/polyline/getArea.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getArea.js +10 -0
- package/dist/esm/utilities/math/polyline/getClosestLineSegmentIntersection.d.ts +5 -0
- package/dist/esm/utilities/math/polyline/getClosestLineSegmentIntersection.js +44 -0
- package/dist/esm/utilities/math/polyline/getFirstLineSegmentIntersectionIndexes.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getFirstLineSegmentIntersectionIndexes.js +21 -0
- package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsCoordinates.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsCoordinates.js +13 -0
- package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsIndexes.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsIndexes.js +15 -0
- package/dist/esm/utilities/math/polyline/getLinesIntersection.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getLinesIntersection.js +51 -0
- package/dist/esm/utilities/math/polyline/getNormal2.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getNormal2.js +5 -0
- package/dist/esm/utilities/math/polyline/getNormal3.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getNormal3.js +25 -0
- package/dist/esm/utilities/math/polyline/getSignedArea.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getSignedArea.js +19 -0
- package/dist/esm/utilities/math/polyline/getSubPixelSpacingAndXYDirections.d.ts +7 -0
- package/dist/esm/utilities/math/polyline/getSubPixelSpacingAndXYDirections.js +72 -0
- package/dist/esm/utilities/math/polyline/getWindingDirection.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/getWindingDirection.js +5 -0
- package/dist/esm/utilities/math/polyline/index.d.ts +23 -0
- package/dist/esm/utilities/math/polyline/index.js +23 -0
- package/dist/esm/utilities/math/polyline/intersectPolyline.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/intersectPolyline.js +13 -0
- package/dist/esm/utilities/math/polyline/isClosed.d.ts +2 -0
- package/dist/esm/utilities/math/polyline/isClosed.js +12 -0
- package/dist/esm/utilities/math/polyline/isPointInsidePolyline3D.d.ts +4 -0
- package/dist/esm/utilities/math/polyline/isPointInsidePolyline3D.js +25 -0
- package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts +25 -0
- package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.js +0 -0
- package/dist/esm/utilities/math/polyline/pointCanProjectOnLine.d.ts +3 -0
- package/dist/esm/utilities/math/polyline/pointCanProjectOnLine.js +32 -0
- package/dist/esm/utilities/math/polyline/pointsAreWithinCloseContourProximity.d.ts +3 -0
- package/dist/esm/utilities/math/polyline/pointsAreWithinCloseContourProximity.js +5 -0
- package/dist/esm/utilities/math/polyline/projectTo2D.d.ts +5 -0
- package/dist/esm/utilities/math/polyline/projectTo2D.js +25 -0
- package/dist/esm/utilities/math/rectangle/distanceToPoint.d.ts +2 -0
- package/dist/esm/utilities/math/rectangle/distanceToPoint.js +34 -0
- package/dist/esm/utilities/math/rectangle/index.d.ts +2 -0
- package/dist/esm/utilities/math/rectangle/index.js +2 -0
- package/dist/esm/utilities/math/sphere/index.d.ts +2 -0
- package/dist/esm/utilities/math/sphere/index.js +2 -0
- package/dist/esm/utilities/math/sphere/pointInSphere.d.ts +9 -0
- package/dist/esm/utilities/math/sphere/pointInSphere.js +8 -0
- package/dist/esm/utilities/math/vec2/findClosestPoint.d.ts +2 -0
- package/dist/esm/utilities/math/vec2/findClosestPoint.js +17 -0
- package/dist/esm/utilities/math/vec2/index.d.ts +3 -0
- package/dist/esm/utilities/math/vec2/index.js +3 -0
- package/dist/esm/utilities/math/vec2/liangBarksyClip.d.ts +1 -0
- package/dist/esm/utilities/math/vec2/liangBarksyClip.js +68 -0
- package/dist/esm/utilities/math/vec3/interpolateVec3.d.ts +2 -0
- package/dist/esm/utilities/math/vec3/interpolateVec3.js +8 -0
- package/dist/esm/utilities/normalizeViewportPlane.d.ts +19 -0
- package/dist/esm/utilities/normalizeViewportPlane.js +35 -0
- package/dist/esm/utilities/orientation/getOrientationStringLPS.d.ts +2 -0
- package/dist/esm/utilities/orientation/getOrientationStringLPS.js +41 -0
- package/dist/esm/utilities/orientation/index.d.ts +3 -0
- package/dist/esm/utilities/orientation/index.js +3 -0
- package/dist/esm/utilities/orientation/invertOrientationStringLPS.d.ts +1 -0
- package/dist/esm/utilities/orientation/invertOrientationStringLPS.js +10 -0
- package/dist/esm/utilities/planar/filterAnnotationsForDisplay.d.ts +3 -0
- package/dist/esm/utilities/planar/filterAnnotationsForDisplay.js +26 -0
- 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 +3 -0
- package/dist/esm/utilities/planar/filterAnnotationsWithinSlice.js +46 -0
- package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.d.ts +6 -0
- package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.js +49 -0
- package/dist/esm/utilities/planar/getWorldWidthAndHeightFromCorners.d.ts +5 -0
- package/dist/esm/utilities/planar/getWorldWidthAndHeightFromCorners.js +18 -0
- package/dist/esm/utilities/planar/getWorldWidthAndHeightFromTwoPoints.d.ts +5 -0
- package/dist/esm/utilities/planar/getWorldWidthAndHeightFromTwoPoints.js +18 -0
- package/dist/esm/utilities/planar/index.d.ts +19 -0
- package/dist/esm/utilities/planar/index.js +18 -0
- package/dist/esm/utilities/planar/isPlaneIntersectingAABB.d.ts +1 -0
- package/dist/esm/utilities/planar/isPlaneIntersectingAABB.js +27 -0
- package/dist/esm/utilities/planarFreehandROITool/index.d.ts +6 -0
- package/dist/esm/utilities/planarFreehandROITool/index.js +5 -0
- package/dist/esm/utilities/planarFreehandROITool/interpolation/algorithms/bspline.d.ts +2 -0
- package/dist/esm/utilities/planarFreehandROITool/interpolation/algorithms/bspline.js +22 -0
- package/dist/esm/utilities/planarFreehandROITool/interpolation/interpolateSegmentPoints.d.ts +2 -0
- package/dist/esm/utilities/planarFreehandROITool/interpolation/interpolateSegmentPoints.js +41 -0
- package/dist/esm/utilities/planarFreehandROITool/smoothAnnotation.d.ts +6 -0
- package/dist/esm/utilities/planarFreehandROITool/smoothAnnotation.js +56 -0
- package/dist/esm/utilities/planarFreehandROITool/smoothPoints.d.ts +11 -0
- package/dist/esm/utilities/planarFreehandROITool/smoothPoints.js +91 -0
- package/dist/esm/utilities/pointInSurroundingSphereCallback.d.ts +8 -0
- package/dist/esm/utilities/pointInSurroundingSphereCallback.js +71 -0
- package/dist/esm/utilities/pointToString.d.ts +1 -0
- package/dist/esm/utilities/pointToString.js +8 -0
- package/dist/esm/utilities/polyData/utils.d.ts +5 -0
- package/dist/esm/utilities/polyData/utils.js +53 -0
- package/dist/esm/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.d.ts +5 -0
- package/dist/esm/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.js +44 -0
- package/dist/esm/utilities/rectangleROITool/index.d.ts +3 -0
- package/dist/esm/utilities/rectangleROITool/index.js +3 -0
- package/dist/esm/utilities/rectangleROITool/isAxisAlignedRectangle.d.ts +2 -0
- package/dist/esm/utilities/rectangleROITool/isAxisAlignedRectangle.js +22 -0
- package/dist/esm/utilities/registerComputeWorker.d.ts +1 -0
- package/dist/esm/utilities/registerComputeWorker.js +23 -0
- package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.d.ts +11 -0
- package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.js +177 -0
- package/dist/esm/utilities/segmentation/InterpolationManager/deleteRelatedAnnotations.d.ts +2 -0
- package/dist/esm/utilities/segmentation/InterpolationManager/deleteRelatedAnnotations.js +66 -0
- package/dist/esm/utilities/segmentation/VolumetricCalculator.d.ts +15 -0
- package/dist/esm/utilities/segmentation/VolumetricCalculator.js +48 -0
- package/dist/esm/utilities/segmentation/brushSizeForToolGroup.d.ts +2 -0
- package/dist/esm/utilities/segmentation/brushSizeForToolGroup.js +40 -0
- package/dist/esm/utilities/segmentation/brushThresholdForToolGroup.d.ts +7 -0
- package/dist/esm/utilities/segmentation/brushThresholdForToolGroup.js +45 -0
- package/dist/esm/utilities/segmentation/computeAndAddRepresentation.d.ts +3 -0
- package/dist/esm/utilities/segmentation/computeAndAddRepresentation.js +45 -0
- package/dist/esm/utilities/segmentation/contourAndFindLargestBidirectional.d.ts +1 -0
- package/dist/esm/utilities/segmentation/contourAndFindLargestBidirectional.js +23 -0
- package/dist/esm/utilities/segmentation/createBidirectionalToolData.d.ts +14 -0
- package/dist/esm/utilities/segmentation/createBidirectionalToolData.js +35 -0
- package/dist/esm/utilities/segmentation/createLabelmapMemo.d.ts +44 -0
- package/dist/esm/utilities/segmentation/createLabelmapMemo.js +68 -0
- package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.d.ts +9 -0
- package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js +28 -0
- package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.d.ts +3 -0
- package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.js +34 -0
- package/dist/esm/utilities/segmentation/findLargestBidirectional.d.ts +1 -0
- package/dist/esm/utilities/segmentation/findLargestBidirectional.js +95 -0
- package/dist/esm/utilities/segmentation/floodFill.d.ts +4 -0
- package/dist/esm/utilities/segmentation/floodFill.js +120 -0
- package/dist/esm/utilities/segmentation/getBrushToolInstances.d.ts +1 -0
- package/dist/esm/utilities/segmentation/getBrushToolInstances.js +17 -0
- package/dist/esm/utilities/segmentation/getHoveredContourSegmentationAnnotation.d.ts +1 -0
- package/dist/esm/utilities/segmentation/getHoveredContourSegmentationAnnotation.js +13 -0
- package/dist/esm/utilities/segmentation/getOrCreateSegmentationVolume.d.ts +2 -0
- package/dist/esm/utilities/segmentation/getOrCreateSegmentationVolume.js +21 -0
- package/dist/esm/utilities/segmentation/getSVGStyleForSegment.d.ts +17 -0
- package/dist/esm/utilities/segmentation/getSVGStyleForSegment.js +68 -0
- package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.d.ts +7 -0
- package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.js +76 -0
- package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.d.ts +11 -0
- package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.js +74 -0
- package/dist/esm/utilities/segmentation/getStatistics.d.ts +5 -0
- package/dist/esm/utilities/segmentation/getStatistics.js +210 -0
- package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.d.ts +2 -0
- package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.js +80 -0
- package/dist/esm/utilities/segmentation/growCut/growCutShader.d.ts +2 -0
- package/dist/esm/utilities/segmentation/growCut/growCutShader.js +106 -0
- package/dist/esm/utilities/segmentation/growCut/index.d.ts +7 -0
- package/dist/esm/utilities/segmentation/growCut/index.js +4 -0
- package/dist/esm/utilities/segmentation/growCut/runGrowCut.d.ts +16 -0
- package/dist/esm/utilities/segmentation/growCut/runGrowCut.js +269 -0
- package/dist/esm/utilities/segmentation/growCut/runGrowCutForBoundingBox.d.ts +15 -0
- package/dist/esm/utilities/segmentation/growCut/runGrowCutForBoundingBox.js +110 -0
- package/dist/esm/utilities/segmentation/growCut/runGrowCutForSphere.d.ts +9 -0
- package/dist/esm/utilities/segmentation/growCut/runGrowCutForSphere.js +164 -0
- package/dist/esm/utilities/segmentation/growCut/runOneClickGrowCut.d.ts +9 -0
- package/dist/esm/utilities/segmentation/growCut/runOneClickGrowCut.js +176 -0
- package/dist/esm/utilities/segmentation/index.d.ts +28 -0
- package/dist/esm/utilities/segmentation/index.js +28 -0
- package/dist/esm/utilities/segmentation/invalidateBrushCursor.d.ts +1 -0
- package/dist/esm/utilities/segmentation/invalidateBrushCursor.js +20 -0
- package/dist/esm/utilities/segmentation/isLineInSegment.d.ts +9 -0
- package/dist/esm/utilities/segmentation/isLineInSegment.js +49 -0
- package/dist/esm/utilities/segmentation/islandRemoval.d.ts +28 -0
- package/dist/esm/utilities/segmentation/islandRemoval.js +181 -0
- package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.d.ts +20 -0
- package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.js +35 -0
- package/dist/esm/utilities/segmentation/segmentContourAction.d.ts +17 -0
- package/dist/esm/utilities/segmentation/segmentContourAction.js +95 -0
- package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.d.ts +4 -0
- package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.js +58 -0
- package/dist/esm/utilities/segmentation/thresholdVolumeByRange.d.ts +11 -0
- package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +79 -0
- package/dist/esm/utilities/segmentation/utilities.d.ts +25 -0
- package/dist/esm/utilities/segmentation/utilities.js +86 -0
- package/dist/esm/utilities/segmentation/validateLabelmap.d.ts +4 -0
- package/dist/esm/utilities/segmentation/validateLabelmap.js +32 -0
- package/dist/esm/utilities/stackPrefetch/index.d.ts +3 -0
- package/dist/esm/utilities/stackPrefetch/index.js +3 -0
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.d.ts +16 -0
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +221 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetch.d.ts +14 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetch.js +150 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.d.ts +14 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +76 -0
- package/dist/esm/utilities/stackPrefetch/state.d.ts +22 -0
- package/dist/esm/utilities/stackPrefetch/state.js +13 -0
- package/dist/esm/utilities/throttle.d.ts +5 -0
- package/dist/esm/utilities/throttle.js +19 -0
- package/dist/esm/utilities/touch/index.d.ts +10 -0
- package/dist/esm/utilities/touch/index.js +152 -0
- package/dist/esm/utilities/triggerAnnotationRender.d.ts +2 -0
- package/dist/esm/utilities/triggerAnnotationRender.js +5 -0
- package/dist/esm/utilities/triggerAnnotationRenderForToolGroupIds.d.ts +2 -0
- package/dist/esm/utilities/triggerAnnotationRenderForToolGroupIds.js +24 -0
- package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.d.ts +2 -0
- package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.js +22 -0
- package/dist/esm/utilities/viewport/index.d.ts +2 -0
- package/dist/esm/utilities/viewport/index.js +2 -0
- package/dist/esm/utilities/viewport/isViewportPreScaled.d.ts +3 -0
- package/dist/esm/utilities/viewport/isViewportPreScaled.js +16 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithFrameOfReferenceUID.d.ts +2 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithFrameOfReferenceUID.js +11 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithParallelNormals.d.ts +2 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithParallelNormals.js +10 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithSameOrientation.d.ts +2 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithSameOrientation.js +9 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithToolEnabled.d.ts +2 -0
- package/dist/esm/utilities/viewportFilters/filterViewportsWithToolEnabled.js +28 -0
- package/dist/esm/utilities/viewportFilters/getViewportIdsWithToolToRender.d.ts +1 -0
- package/dist/esm/utilities/viewportFilters/getViewportIdsWithToolToRender.js +17 -0
- package/dist/esm/utilities/viewportFilters/index.d.ts +5 -0
- package/dist/esm/utilities/viewportFilters/index.js +5 -0
- package/dist/esm/utilities/voi/colorbar/Colorbar.d.ts +44 -0
- package/dist/esm/utilities/voi/colorbar/Colorbar.js +242 -0
- package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.d.ts +29 -0
- package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.js +182 -0
- package/dist/esm/utilities/voi/colorbar/ColorbarTicks.d.ts +46 -0
- package/dist/esm/utilities/voi/colorbar/ColorbarTicks.js +280 -0
- package/dist/esm/utilities/voi/colorbar/ViewportColorbar.d.ts +25 -0
- package/dist/esm/utilities/voi/colorbar/ViewportColorbar.js +146 -0
- package/dist/esm/utilities/voi/colorbar/common/areColorbarRangesEqual.d.ts +3 -0
- package/dist/esm/utilities/voi/colorbar/common/areColorbarRangesEqual.js +4 -0
- package/dist/esm/utilities/voi/colorbar/common/areColorbarSizesEqual.d.ts +3 -0
- package/dist/esm/utilities/voi/colorbar/common/areColorbarSizesEqual.js +4 -0
- package/dist/esm/utilities/voi/colorbar/common/index.d.ts +4 -0
- package/dist/esm/utilities/voi/colorbar/common/index.js +4 -0
- package/dist/esm/utilities/voi/colorbar/common/isColorbarSizeValid.d.ts +3 -0
- package/dist/esm/utilities/voi/colorbar/common/isColorbarSizeValid.js +4 -0
- package/dist/esm/utilities/voi/colorbar/common/isRangeTextPositionValid.d.ts +3 -0
- package/dist/esm/utilities/voi/colorbar/common/isRangeTextPositionValid.js +9 -0
- package/dist/esm/utilities/voi/colorbar/common/isRangeValid.d.ts +3 -0
- package/dist/esm/utilities/voi/colorbar/common/isRangeValid.js +4 -0
- package/dist/esm/utilities/voi/colorbar/enums/ColorbarRangeTextPosition.d.ts +6 -0
- package/dist/esm/utilities/voi/colorbar/enums/ColorbarRangeTextPosition.js +7 -0
- package/dist/esm/utilities/voi/colorbar/enums/index.d.ts +1 -0
- package/dist/esm/utilities/voi/colorbar/enums/index.js +1 -0
- package/dist/esm/utilities/voi/colorbar/index.d.ts +6 -0
- package/dist/esm/utilities/voi/colorbar/index.js +4 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.d.ts +12 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.d.ts +11 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarImageRange.d.ts +4 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarImageRange.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.d.ts +7 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarSize.d.ts +4 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarSize.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksProps.d.ts +7 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksProps.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksStyle.d.ts +8 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksStyle.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarVOIRange.d.ts +2 -0
- package/dist/esm/utilities/voi/colorbar/types/ColorbarVOIRange.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/ViewportColorbarProps.d.ts +5 -0
- package/dist/esm/utilities/voi/colorbar/types/ViewportColorbarProps.js +0 -0
- package/dist/esm/utilities/voi/colorbar/types/index.d.ts +8 -0
- package/dist/esm/utilities/voi/colorbar/types/index.js +0 -0
- package/dist/esm/utilities/voi/index.d.ts +3 -0
- package/dist/esm/utilities/voi/index.js +3 -0
- package/dist/esm/utilities/voi/windowlevel/calculateMinMaxMean.d.ts +6 -0
- package/dist/esm/utilities/voi/windowlevel/calculateMinMaxMean.js +25 -0
- package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.d.ts +11 -0
- package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.js +42 -0
- package/dist/esm/utilities/voi/windowlevel/getLuminanceFromRegion.d.ts +2 -0
- package/dist/esm/utilities/voi/windowlevel/getLuminanceFromRegion.js +27 -0
- package/dist/esm/utilities/voi/windowlevel/index.d.ts +4 -0
- package/dist/esm/utilities/voi/windowlevel/index.js +4 -0
- package/dist/esm/widgets/Widget.d.ts +17 -0
- package/dist/esm/widgets/Widget.js +66 -0
- package/dist/esm/widgets/types/WidgetProps.d.ts +4 -0
- package/dist/esm/widgets/types/WidgetProps.js +0 -0
- package/dist/esm/widgets/types/WidgetSize.d.ts +4 -0
- package/dist/esm/widgets/types/WidgetSize.js +0 -0
- package/dist/esm/widgets/types/index.d.ts +2 -0
- package/dist/esm/widgets/types/index.js +0 -0
- package/dist/esm/workers/computeWorker.d.ts +1 -0
- package/dist/esm/workers/computeWorker.js +78 -0
- package/package.json +113 -100
- package/changelog.md +0 -304
- package/dist/cornerstoneTools.js +0 -27391
- package/dist/cornerstoneTools.js.map +0 -1
- package/dist/cornerstoneTools.min.js +0 -3
- package/dist/cornerstoneTools.min.js.map +0 -1
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { BaseVolumeViewport, cache, utilities } from '@cornerstonejs/core';
|
|
2
|
+
import { getSegmentation, getCurrentLabelmapImageIdForViewport, } from '../../stateManagement/segmentation/segmentationState';
|
|
3
|
+
import { getLabelmapActorEntry } from '../../stateManagement/segmentation/helpers';
|
|
4
|
+
export function getSegmentIndexAtLabelmapBorder(segmentationId, worldPoint, { viewport, searchRadius }) {
|
|
5
|
+
const segmentation = getSegmentation(segmentationId);
|
|
6
|
+
const labelmapData = segmentation.representationData.Labelmap;
|
|
7
|
+
if (viewport instanceof BaseVolumeViewport) {
|
|
8
|
+
const { volumeId } = labelmapData;
|
|
9
|
+
const segmentationVolume = cache.getVolume(volumeId);
|
|
10
|
+
if (!segmentationVolume) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
const voxelManager = segmentationVolume.voxelManager;
|
|
14
|
+
const imageData = segmentationVolume.imageData;
|
|
15
|
+
const indexIJK = utilities.transformWorldToIndex(imageData, worldPoint);
|
|
16
|
+
const segmentIndex = voxelManager.getAtIJK(indexIJK[0], indexIJK[1], indexIJK[2]);
|
|
17
|
+
const canvasPoint = viewport.worldToCanvas(worldPoint);
|
|
18
|
+
const onEdge = isSegmentOnEdgeCanvas(canvasPoint, segmentIndex, viewport, imageData, searchRadius);
|
|
19
|
+
return onEdge ? segmentIndex : undefined;
|
|
20
|
+
}
|
|
21
|
+
const segmentationImageId = getCurrentLabelmapImageIdForViewport(viewport.id, segmentationId);
|
|
22
|
+
const image = cache.getImage(segmentationImageId);
|
|
23
|
+
if (!image) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const segmentationActorEntry = getLabelmapActorEntry(viewport.id, segmentationId);
|
|
27
|
+
const imageData = segmentationActorEntry?.actor.getMapper().getInputData();
|
|
28
|
+
const indexIJK = utilities.transformWorldToIndex(imageData, worldPoint);
|
|
29
|
+
const dimensions = imageData.getDimensions();
|
|
30
|
+
const voxelManager = (imageData.voxelManager ||
|
|
31
|
+
utilities.VoxelManager.createScalarVolumeVoxelManager({
|
|
32
|
+
dimensions,
|
|
33
|
+
scalarData: imageData.getPointData().getScalars().getData(),
|
|
34
|
+
}));
|
|
35
|
+
const segmentIndex = voxelManager.getAtIJKPoint(indexIJK);
|
|
36
|
+
const onEdge = isSegmentOnEdgeIJK(indexIJK, dimensions, voxelManager, segmentIndex);
|
|
37
|
+
return onEdge ? segmentIndex : undefined;
|
|
38
|
+
}
|
|
39
|
+
function isSegmentOnEdge(getNeighborIndex, segmentIndex, searchRadius = 1) {
|
|
40
|
+
const neighborRange = Array.from({ length: 2 * searchRadius + 1 }, (_, i) => i - searchRadius);
|
|
41
|
+
for (const deltaI of neighborRange) {
|
|
42
|
+
for (const deltaJ of neighborRange) {
|
|
43
|
+
for (const deltaK of neighborRange) {
|
|
44
|
+
if (deltaI === 0 && deltaJ === 0 && deltaK === 0) {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
const neighborIndex = getNeighborIndex(deltaI, deltaJ, deltaK);
|
|
48
|
+
if (neighborIndex !== undefined && segmentIndex !== neighborIndex) {
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
function isSegmentOnEdgeIJK(indexIJK, dimensions, voxelManager, segmentIndex, searchRadius) {
|
|
57
|
+
const getNeighborIndex = (deltaI, deltaJ, deltaK) => {
|
|
58
|
+
const neighborIJK = [
|
|
59
|
+
indexIJK[0] + deltaI,
|
|
60
|
+
indexIJK[1] + deltaJ,
|
|
61
|
+
indexIJK[2] + deltaK,
|
|
62
|
+
];
|
|
63
|
+
return voxelManager.getAtIJK(neighborIJK[0], neighborIJK[1], neighborIJK[2]);
|
|
64
|
+
};
|
|
65
|
+
return isSegmentOnEdge(getNeighborIndex, segmentIndex, searchRadius);
|
|
66
|
+
}
|
|
67
|
+
function isSegmentOnEdgeCanvas(canvasPoint, segmentIndex, viewport, imageData, searchRadius) {
|
|
68
|
+
const getNeighborIndex = (deltaI, deltaJ) => {
|
|
69
|
+
const neighborCanvas = [canvasPoint[0] + deltaI, canvasPoint[1] + deltaJ];
|
|
70
|
+
const worldPoint = viewport.canvasToWorld(neighborCanvas);
|
|
71
|
+
const voxelManager = imageData.get('voxelManager').voxelManager;
|
|
72
|
+
const indexIJK = utilities.transformWorldToIndex(imageData, worldPoint);
|
|
73
|
+
return voxelManager.getAtIJK(indexIJK[0], indexIJK[1], indexIJK[2]);
|
|
74
|
+
};
|
|
75
|
+
return isSegmentOnEdge(getNeighborIndex, segmentIndex, searchRadius);
|
|
76
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
import { SegmentationRepresentations } from '../../enums';
|
|
3
|
+
import type { Segmentation } from '../../types';
|
|
4
|
+
type Options = {
|
|
5
|
+
representationType?: SegmentationRepresentations;
|
|
6
|
+
viewport?: Types.IViewport;
|
|
7
|
+
};
|
|
8
|
+
export declare function getSegmentIndexAtWorldPoint(segmentationId: string, worldPoint: Types.Point3, options?: Options): number;
|
|
9
|
+
export declare function getSegmentIndexAtWorldForLabelmap(segmentation: Segmentation, worldPoint: Types.Point3, { viewport }: Options): number | undefined;
|
|
10
|
+
export declare function getSegmentIndexAtWorldForContour(segmentation: Segmentation, worldPoint: Types.Point3, { viewport }: Options): number;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { BaseVolumeViewport, cache, utilities } from '@cornerstonejs/core';
|
|
2
|
+
import { SegmentationRepresentations } from '../../enums';
|
|
3
|
+
import { getSegmentation, getCurrentLabelmapImageIdForViewport, } from '../../stateManagement/segmentation/segmentationState';
|
|
4
|
+
import { getAnnotation } from '../../stateManagement';
|
|
5
|
+
import { isPointInsidePolyline3D } from '../math/polyline';
|
|
6
|
+
import { getLabelmapActorEntry } from '../../stateManagement/segmentation/helpers/getSegmentationActor';
|
|
7
|
+
export function getSegmentIndexAtWorldPoint(segmentationId, worldPoint, options = {}) {
|
|
8
|
+
const segmentation = getSegmentation(segmentationId);
|
|
9
|
+
const representationData = segmentation.representationData;
|
|
10
|
+
const desiredRepresentation = options?.representationType ?? Object.keys(representationData)[0];
|
|
11
|
+
if (!desiredRepresentation) {
|
|
12
|
+
throw new Error(`Segmentation ${segmentationId} does not have any representations`);
|
|
13
|
+
}
|
|
14
|
+
switch (desiredRepresentation) {
|
|
15
|
+
case SegmentationRepresentations.Labelmap:
|
|
16
|
+
return getSegmentIndexAtWorldForLabelmap(segmentation, worldPoint, options);
|
|
17
|
+
case SegmentationRepresentations.Contour:
|
|
18
|
+
return getSegmentIndexAtWorldForContour(segmentation, worldPoint, options);
|
|
19
|
+
default:
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export function getSegmentIndexAtWorldForLabelmap(segmentation, worldPoint, { viewport }) {
|
|
24
|
+
const labelmapData = segmentation.representationData.Labelmap;
|
|
25
|
+
if (viewport instanceof BaseVolumeViewport) {
|
|
26
|
+
const { volumeId } = labelmapData;
|
|
27
|
+
const segmentationVolume = cache.getVolume(volumeId);
|
|
28
|
+
if (!segmentationVolume) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
const segmentIndex = segmentationVolume.imageData.getScalarValueFromWorld(worldPoint);
|
|
32
|
+
return segmentIndex;
|
|
33
|
+
}
|
|
34
|
+
const segmentationImageId = getCurrentLabelmapImageIdForViewport(viewport.id, segmentation.segmentationId);
|
|
35
|
+
const image = cache.getImage(segmentationImageId);
|
|
36
|
+
if (!image) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const segmentationActorEntry = getLabelmapActorEntry(viewport.id, segmentation.segmentationId);
|
|
40
|
+
const imageData = segmentationActorEntry?.actor.getMapper().getInputData();
|
|
41
|
+
const indexIJK = utilities.transformWorldToIndex(imageData, worldPoint);
|
|
42
|
+
const dimensions = imageData.getDimensions();
|
|
43
|
+
const voxelManager = (imageData.voxelManager ||
|
|
44
|
+
utilities.VoxelManager.createScalarVolumeVoxelManager({
|
|
45
|
+
dimensions,
|
|
46
|
+
scalarData: imageData.getPointData().getScalars().getData(),
|
|
47
|
+
}));
|
|
48
|
+
const segmentIndex = voxelManager.getAtIJKPoint(indexIJK);
|
|
49
|
+
return segmentIndex;
|
|
50
|
+
}
|
|
51
|
+
export function getSegmentIndexAtWorldForContour(segmentation, worldPoint, { viewport }) {
|
|
52
|
+
const contourData = segmentation.representationData.Contour;
|
|
53
|
+
const segmentIndices = Array.from(contourData.annotationUIDsMap.keys());
|
|
54
|
+
const { viewPlaneNormal } = viewport.getCamera();
|
|
55
|
+
for (const segmentIndex of segmentIndices) {
|
|
56
|
+
const annotationsSet = contourData.annotationUIDsMap.get(segmentIndex);
|
|
57
|
+
if (!annotationsSet) {
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
for (const annotationUID of annotationsSet) {
|
|
61
|
+
const annotation = getAnnotation(annotationUID);
|
|
62
|
+
if (!annotation) {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
const { polyline } = annotation.data.contour;
|
|
66
|
+
if (!utilities.isEqual(viewPlaneNormal, annotation.metadata.viewPlaneNormal)) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
if (isPointInsidePolyline3D(worldPoint, polyline)) {
|
|
70
|
+
return Number(segmentIndex);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { cache, utilities, getWebWorkerManager, eventTarget, Enums, triggerEvent, metaData, } from '@cornerstonejs/core';
|
|
2
|
+
import { getActiveSegmentIndex } from '../../stateManagement/segmentation/getActiveSegmentIndex';
|
|
3
|
+
import VolumetricCalculator from './VolumetricCalculator';
|
|
4
|
+
import { getStrategyData } from '../../tools/segmentation/strategies/utils/getStrategyData';
|
|
5
|
+
import { getPixelValueUnitsImageId } from '../getPixelValueUnits';
|
|
6
|
+
import ensureSegmentationVolume from '../../tools/segmentation/strategies/compositions/ensureSegmentationVolume';
|
|
7
|
+
import ensureImageVolume from '../../tools/segmentation/strategies/compositions/ensureImageVolume';
|
|
8
|
+
import { getSegmentation } from '../../stateManagement/segmentation/getSegmentation';
|
|
9
|
+
import { registerComputeWorker } from '../registerComputeWorker';
|
|
10
|
+
import { WorkerTypes } from '../../enums';
|
|
11
|
+
const radiusForVol1 = Math.pow((3 * 1000) / (4 * Math.PI), 1 / 3);
|
|
12
|
+
const workerManager = getWebWorkerManager();
|
|
13
|
+
const triggerWorkerProgress = (eventTarget, progress) => {
|
|
14
|
+
triggerEvent(eventTarget, Enums.Events.WEB_WORKER_PROGRESS, {
|
|
15
|
+
progress,
|
|
16
|
+
type: WorkerTypes.COMPUTE_STATISTICS,
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
async function getStatistics({ segmentationId, segmentIndices, }) {
|
|
20
|
+
registerComputeWorker();
|
|
21
|
+
triggerWorkerProgress(eventTarget, 0);
|
|
22
|
+
const segmentation = getSegmentation(segmentationId);
|
|
23
|
+
const { representationData } = segmentation;
|
|
24
|
+
const { Labelmap } = representationData;
|
|
25
|
+
if (!Labelmap) {
|
|
26
|
+
console.debug('No labelmap found for segmentation', segmentationId);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const segVolumeId = Labelmap.volumeId;
|
|
30
|
+
const segImageIds = Labelmap.imageIds;
|
|
31
|
+
const operationData = {
|
|
32
|
+
segmentationId,
|
|
33
|
+
volumeId: segVolumeId,
|
|
34
|
+
imageIds: segImageIds,
|
|
35
|
+
};
|
|
36
|
+
let reconstructableVolume = false;
|
|
37
|
+
if (segImageIds) {
|
|
38
|
+
const refImageIds = segImageIds.map((imageId) => {
|
|
39
|
+
const image = cache.getImage(imageId);
|
|
40
|
+
return image.referencedImageId;
|
|
41
|
+
});
|
|
42
|
+
reconstructableVolume = utilities.isValidVolume(refImageIds);
|
|
43
|
+
}
|
|
44
|
+
let indices = segmentIndices;
|
|
45
|
+
if (!indices) {
|
|
46
|
+
indices = [getActiveSegmentIndex(segmentationId)];
|
|
47
|
+
}
|
|
48
|
+
else if (!Array.isArray(indices)) {
|
|
49
|
+
indices = [indices, 255];
|
|
50
|
+
}
|
|
51
|
+
const { refImageId, modalityUnitOptions } = getImageReferenceInfo(segVolumeId, segImageIds);
|
|
52
|
+
const unit = getPixelValueUnitsImageId(refImageId, modalityUnitOptions);
|
|
53
|
+
const stats = reconstructableVolume
|
|
54
|
+
? await calculateVolumeStatistics(operationData, indices, unit)
|
|
55
|
+
: await calculateStackStatistics(segImageIds, indices, unit);
|
|
56
|
+
return stats;
|
|
57
|
+
}
|
|
58
|
+
async function calculateVolumeStatistics(operationData, indices, unit) {
|
|
59
|
+
const strategyData = getStrategyData({
|
|
60
|
+
operationData,
|
|
61
|
+
strategy: {
|
|
62
|
+
ensureSegmentationVolumeFor3DManipulation: ensureSegmentationVolume.ensureSegmentationVolumeFor3DManipulation,
|
|
63
|
+
ensureImageVolumeFor3DManipulation: ensureImageVolume.ensureImageVolumeFor3DManipulation,
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
const { segmentationVoxelManager, imageVoxelManager, segmentationImageData, imageData, } = strategyData;
|
|
67
|
+
const spacing = segmentationImageData.getSpacing();
|
|
68
|
+
const { boundsIJK: boundsOrig } = segmentationVoxelManager;
|
|
69
|
+
if (!boundsOrig) {
|
|
70
|
+
return VolumetricCalculator.getStatistics({ spacing });
|
|
71
|
+
}
|
|
72
|
+
const segmentationScalarData = segmentationVoxelManager.getCompleteScalarDataArray();
|
|
73
|
+
const imageScalarData = imageVoxelManager.getCompleteScalarDataArray();
|
|
74
|
+
const segmentationInfo = {
|
|
75
|
+
scalarData: segmentationScalarData,
|
|
76
|
+
dimensions: segmentationImageData.getDimensions(),
|
|
77
|
+
spacing: segmentationImageData.getSpacing(),
|
|
78
|
+
origin: segmentationImageData.getOrigin(),
|
|
79
|
+
};
|
|
80
|
+
const imageInfo = {
|
|
81
|
+
scalarData: imageScalarData,
|
|
82
|
+
dimensions: imageData.getDimensions(),
|
|
83
|
+
spacing: imageData.getSpacing(),
|
|
84
|
+
origin: imageData.getOrigin(),
|
|
85
|
+
};
|
|
86
|
+
const stats = await workerManager.executeTask('compute', 'calculateSegmentsStatisticsVolume', {
|
|
87
|
+
segmentationInfo,
|
|
88
|
+
imageInfo,
|
|
89
|
+
indices,
|
|
90
|
+
});
|
|
91
|
+
triggerWorkerProgress(eventTarget, 100);
|
|
92
|
+
stats.mean.unit = unit;
|
|
93
|
+
stats.max.unit = unit;
|
|
94
|
+
stats.min.unit = unit;
|
|
95
|
+
if (unit !== 'SUV') {
|
|
96
|
+
return stats;
|
|
97
|
+
}
|
|
98
|
+
const radiusIJK = spacing.map((s) => Math.max(1, Math.round((1.1 * radiusForVol1) / s)));
|
|
99
|
+
for (const testMax of stats.maxIJKs) {
|
|
100
|
+
const testStats = getSphereStats(testMax, radiusIJK, segmentationImageData, imageVoxelManager, spacing);
|
|
101
|
+
if (!testStats) {
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
const { mean } = testStats;
|
|
105
|
+
if (!stats.peakValue || stats.peakValue.value <= mean.value) {
|
|
106
|
+
stats.peakValue = {
|
|
107
|
+
name: 'peakValue',
|
|
108
|
+
label: 'Peak Value',
|
|
109
|
+
value: mean.value,
|
|
110
|
+
unit,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return stats;
|
|
115
|
+
}
|
|
116
|
+
async function calculateStackStatistics(segImageIds, indices, unit) {
|
|
117
|
+
triggerWorkerProgress(eventTarget, 0);
|
|
118
|
+
const segmentationInfo = [];
|
|
119
|
+
const imageInfo = [];
|
|
120
|
+
for (const segImageId of segImageIds) {
|
|
121
|
+
const segImage = cache.getImage(segImageId);
|
|
122
|
+
const segPixelData = segImage.getPixelData();
|
|
123
|
+
const segVoxelManager = segImage.voxelManager;
|
|
124
|
+
const segSpacing = [segImage.rowPixelSpacing, segImage.columnPixelSpacing];
|
|
125
|
+
const refImageId = segImage.referencedImageId;
|
|
126
|
+
const refImage = cache.getImage(refImageId);
|
|
127
|
+
const refPixelData = refImage.getPixelData();
|
|
128
|
+
const refVoxelManager = refImage.voxelManager;
|
|
129
|
+
const refSpacing = [refImage.rowPixelSpacing, refImage.columnPixelSpacing];
|
|
130
|
+
segmentationInfo.push({
|
|
131
|
+
scalarData: segPixelData,
|
|
132
|
+
dimensions: segVoxelManager.dimensions,
|
|
133
|
+
spacing: segSpacing,
|
|
134
|
+
});
|
|
135
|
+
imageInfo.push({
|
|
136
|
+
scalarData: refPixelData,
|
|
137
|
+
dimensions: refVoxelManager.dimensions,
|
|
138
|
+
spacing: refSpacing,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
const stats = await workerManager.executeTask('compute', 'calculateSegmentsStatisticsStack', {
|
|
142
|
+
segmentationInfo,
|
|
143
|
+
imageInfo,
|
|
144
|
+
indices,
|
|
145
|
+
});
|
|
146
|
+
triggerWorkerProgress(eventTarget, 100);
|
|
147
|
+
stats.mean.unit = unit;
|
|
148
|
+
stats.max.unit = unit;
|
|
149
|
+
stats.min.unit = unit;
|
|
150
|
+
return stats;
|
|
151
|
+
}
|
|
152
|
+
function getSphereStats(testMax, radiusIJK, segData, imageVoxels, spacing) {
|
|
153
|
+
const { pointIJK: centerIJK } = testMax;
|
|
154
|
+
if (!centerIJK) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const boundsIJK = centerIJK.map((ijk, idx) => [
|
|
158
|
+
ijk - radiusIJK[idx],
|
|
159
|
+
ijk + radiusIJK[idx],
|
|
160
|
+
]);
|
|
161
|
+
const testFunction = (_pointLPS, pointIJK) => {
|
|
162
|
+
const i = (pointIJK[0] - centerIJK[0]) / radiusIJK[0];
|
|
163
|
+
const j = (pointIJK[1] - centerIJK[1]) / radiusIJK[1];
|
|
164
|
+
const k = (pointIJK[2] - centerIJK[2]) / radiusIJK[2];
|
|
165
|
+
const radius = i * i + j * j + k * k;
|
|
166
|
+
return radius <= 1;
|
|
167
|
+
};
|
|
168
|
+
const statsFunction = ({ pointIJK, pointLPS }) => {
|
|
169
|
+
const value = imageVoxels.getAtIJKPoint(pointIJK);
|
|
170
|
+
if (value === undefined) {
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
VolumetricCalculator.statsCallback({ value, pointLPS, pointIJK });
|
|
174
|
+
};
|
|
175
|
+
VolumetricCalculator.statsInit({ storePointData: false });
|
|
176
|
+
utilities.pointInShapeCallback(segData, {
|
|
177
|
+
pointInShapeFn: testFunction,
|
|
178
|
+
callback: statsFunction,
|
|
179
|
+
boundsIJK,
|
|
180
|
+
});
|
|
181
|
+
return VolumetricCalculator.getStatistics({ spacing });
|
|
182
|
+
}
|
|
183
|
+
function getImageReferenceInfo(segVolumeId, segImageIds) {
|
|
184
|
+
let refImageId;
|
|
185
|
+
let modalityUnitOptions;
|
|
186
|
+
if (segVolumeId) {
|
|
187
|
+
const segmentationVolume = cache.getVolume(segVolumeId);
|
|
188
|
+
const referencedVolumeId = segmentationVolume.referencedVolumeId;
|
|
189
|
+
const volume = cache.getVolume(referencedVolumeId);
|
|
190
|
+
if (volume?.imageIds?.length > 0) {
|
|
191
|
+
refImageId = volume.imageIds[0];
|
|
192
|
+
}
|
|
193
|
+
modalityUnitOptions = {
|
|
194
|
+
isPreScaled: Object.keys(volume.scaling || {}).length > 0,
|
|
195
|
+
isSuvScaled: Boolean(volume.scaling?.PT),
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
else if (segImageIds?.length) {
|
|
199
|
+
const segImage = cache.getImage(segImageIds[0]);
|
|
200
|
+
refImageId = segImage.referencedImageId;
|
|
201
|
+
const refImage = cache.getImage(refImageId);
|
|
202
|
+
const scalingModule = metaData.get('scalingModule', refImageId);
|
|
203
|
+
modalityUnitOptions = {
|
|
204
|
+
isPreScaled: Boolean(refImage.preScale?.scaled),
|
|
205
|
+
isSuvScaled: typeof scalingModule?.preScale?.scaled === 'number',
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
return { refImageId, modalityUnitOptions };
|
|
209
|
+
}
|
|
210
|
+
export default getStatistics;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { cache } from '@cornerstonejs/core';
|
|
2
|
+
import { SegmentationRepresentations } from '../../enums';
|
|
3
|
+
import { getCachedSegmentIndices, setCachedSegmentIndices } from './utilities';
|
|
4
|
+
import { getSegmentation } from '../../stateManagement/segmentation/getSegmentation';
|
|
5
|
+
function getUniqueSegmentIndices(segmentationId) {
|
|
6
|
+
const cachedResult = getCachedSegmentIndices(segmentationId);
|
|
7
|
+
if (cachedResult) {
|
|
8
|
+
return cachedResult;
|
|
9
|
+
}
|
|
10
|
+
const segmentation = getSegmentation(segmentationId);
|
|
11
|
+
if (!segmentation) {
|
|
12
|
+
throw new Error(`No segmentation found for segmentationId ${segmentationId}`);
|
|
13
|
+
}
|
|
14
|
+
let indices;
|
|
15
|
+
if (segmentation.representationData.Labelmap) {
|
|
16
|
+
indices = handleLabelmapSegmentation(segmentation, segmentationId);
|
|
17
|
+
}
|
|
18
|
+
else if (segmentation.representationData.Contour) {
|
|
19
|
+
indices = handleContourSegmentation(segmentation);
|
|
20
|
+
}
|
|
21
|
+
else if (segmentation.representationData.Surface) {
|
|
22
|
+
indices = handleSurfaceSegmentation(segmentation);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
throw new Error(`Unsupported segmentation type: ${segmentation.representationData}`);
|
|
26
|
+
}
|
|
27
|
+
setCachedSegmentIndices(segmentationId, indices);
|
|
28
|
+
return indices;
|
|
29
|
+
}
|
|
30
|
+
function handleLabelmapSegmentation(segmentation, segmentationId) {
|
|
31
|
+
const labelmapData = segmentation.representationData[SegmentationRepresentations.Labelmap];
|
|
32
|
+
const keySet = new Set();
|
|
33
|
+
if (labelmapData.imageIds) {
|
|
34
|
+
addImageSegmentIndices(keySet, labelmapData.imageIds);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
addVolumeSegmentIndices(keySet, segmentationId);
|
|
38
|
+
}
|
|
39
|
+
return Array.from(keySet)
|
|
40
|
+
.map(Number)
|
|
41
|
+
.sort((a, b) => a - b);
|
|
42
|
+
}
|
|
43
|
+
function addVolumeSegmentIndices(keySet, segmentationId) {
|
|
44
|
+
const volume = cache.getVolume(segmentationId);
|
|
45
|
+
volume.voxelManager.forEach(({ value }) => {
|
|
46
|
+
if (value !== 0) {
|
|
47
|
+
keySet.add(value);
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function addImageSegmentIndices(keySet, imageIds) {
|
|
52
|
+
imageIds.forEach((segmentationImageId) => {
|
|
53
|
+
const image = cache.getImage(segmentationImageId);
|
|
54
|
+
const scalarData = image.voxelManager.getScalarData();
|
|
55
|
+
scalarData.forEach((segmentIndex) => {
|
|
56
|
+
if (segmentIndex !== 0) {
|
|
57
|
+
keySet.add(segmentIndex);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
function handleContourSegmentation(segmentation) {
|
|
63
|
+
const { annotationUIDsMap, geometryIds } = segmentation.representationData.Contour || {};
|
|
64
|
+
if (!geometryIds) {
|
|
65
|
+
throw new Error(`No geometryIds found for segmentationId ${segmentation.segmentationId}`);
|
|
66
|
+
}
|
|
67
|
+
const indices = new Set([...annotationUIDsMap.keys()]);
|
|
68
|
+
geometryIds.forEach((geometryId) => {
|
|
69
|
+
const geometry = cache.getGeometry(geometryId);
|
|
70
|
+
indices.add(geometry.data.segmentIndex);
|
|
71
|
+
});
|
|
72
|
+
return Array.from(indices).sort((a, b) => a - b);
|
|
73
|
+
}
|
|
74
|
+
function handleSurfaceSegmentation(segmentation) {
|
|
75
|
+
const geometryIds = segmentation.representationData.Surface?.geometryIds ?? [];
|
|
76
|
+
return Array.from(geometryIds.keys())
|
|
77
|
+
.map(Number)
|
|
78
|
+
.sort((a, b) => a - b);
|
|
79
|
+
}
|
|
80
|
+
export { getUniqueSegmentIndices };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const shader = "\nconst MAX_STRENGTH = 65535f;\n\n// Workgroup soze - X*Y*Z must be multiple of 32 for better performance\n// otherwise warps are sub allocated and some threads will not process anything\noverride workGroupSizeX = 1u;\noverride workGroupSizeY = 1u;\noverride workGroupSizeZ = 1u;\n\n// Compare the current voxel to neighbors using a 9x9x9 window\noverride windowSize = 9i;\n\nstruct Params {\n size: vec3u,\n iteration: u32,\n}\n\n@group(0) @binding(0) var<uniform> params: Params;\n@group(0) @binding(1) var<storage> volumePixelData: array<f32>;\n@group(0) @binding(2) var<storage, read_write> labelmap: array<u32>;\n@group(0) @binding(3) var<storage, read_write> strengthData: array<f32>;\n@group(0) @binding(4) var<storage> prevLabelmap: array<u32>;\n@group(0) @binding(5) var<storage> prevStrengthData: array<f32>;\n@group(0) @binding(6) var<storage, read_write> updatedVoxelsCounter: array<atomic<u32>>;\n\nfn getPixelIndex(ijkPos: vec3u) -> u32 {\n let numPixelsPerSlice = params.size.x * params.size.y;\n return ijkPos.x + ijkPos.y * params.size.x + ijkPos.z * numPixelsPerSlice;\n}\n\n@compute @workgroup_size(workGroupSizeX, workGroupSizeY, workGroupSizeZ)\nfn main(\n @builtin(global_invocation_id) globalId: vec3u,\n) {\n // Make sure it will not get out of bounds for volume with sizes that\n // are not multiple of workGroupSize\n if (\n globalId.x >= params.size.x ||\n globalId.y >= params.size.y ||\n globalId.z >= params.size.z\n ) {\n return;\n }\n\n let currentCoord = vec3i(globalId);\n let currentPixelIndex = getPixelIndex(globalId);\n\n let numPixels = arrayLength(&volumePixelData);\n let currentPixelValue = volumePixelData[currentPixelIndex];\n\n if (params.iteration == 0) {\n // All non-zero initial labels are given maximum strength\n strengthData[currentPixelIndex] = select(MAX_STRENGTH, 0., labelmap[currentPixelIndex] == 0);\n return;\n }\n\n // It should at least copy the values from previous state\n var newLabel = prevLabelmap[currentPixelIndex];\n var newStrength = prevStrengthData[currentPixelIndex];\n\n let window = i32(ceil(f32(windowSize - 1) * .5));\n let minWindow = -1i * window;\n let maxWindow = 1i * window;\n\n for (var k = minWindow; k <= maxWindow; k++) {\n for (var j = minWindow; j <= maxWindow; j++) {\n for (var i = minWindow; i <= maxWindow; i++) {\n // Skip current voxel\n if (i == 0 && j == 0 && k == 0) {\n continue;\n }\n\n let neighborCoord = currentCoord + vec3i(i, j, k);\n\n // Boundary conditions. Do not grow outside of the volume\n if (\n neighborCoord.x < 0i || neighborCoord.x >= i32(params.size.x) ||\n neighborCoord.y < 0i || neighborCoord.y >= i32(params.size.y) ||\n neighborCoord.z < 0i || neighborCoord.z >= i32(params.size.z)\n ) {\n continue;\n }\n\n let neighborIndex = getPixelIndex(vec3u(neighborCoord));\n let neighborPixelValue = volumePixelData[neighborIndex];\n let prevNeighborStrength = prevStrengthData[neighborIndex];\n let strengthCost = abs(neighborPixelValue - currentPixelValue);\n let takeoverStrength = prevNeighborStrength - strengthCost;\n\n if (takeoverStrength > newStrength) {\n newLabel = prevLabelmap[neighborIndex];\n newStrength = takeoverStrength;\n }\n }\n }\n }\n\n if (labelmap[currentPixelIndex] != newLabel) {\n atomicAdd(&updatedVoxelsCounter[params.iteration], 1u);\n }\n\n labelmap[currentPixelIndex] = newLabel;\n strengthData[currentPixelIndex] = newStrength;\n}\n";
|
|
2
|
+
export default shader;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
const shader = `
|
|
2
|
+
const MAX_STRENGTH = 65535f;
|
|
3
|
+
|
|
4
|
+
// Workgroup soze - X*Y*Z must be multiple of 32 for better performance
|
|
5
|
+
// otherwise warps are sub allocated and some threads will not process anything
|
|
6
|
+
override workGroupSizeX = 1u;
|
|
7
|
+
override workGroupSizeY = 1u;
|
|
8
|
+
override workGroupSizeZ = 1u;
|
|
9
|
+
|
|
10
|
+
// Compare the current voxel to neighbors using a 9x9x9 window
|
|
11
|
+
override windowSize = 9i;
|
|
12
|
+
|
|
13
|
+
struct Params {
|
|
14
|
+
size: vec3u,
|
|
15
|
+
iteration: u32,
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
@group(0) @binding(0) var<uniform> params: Params;
|
|
19
|
+
@group(0) @binding(1) var<storage> volumePixelData: array<f32>;
|
|
20
|
+
@group(0) @binding(2) var<storage, read_write> labelmap: array<u32>;
|
|
21
|
+
@group(0) @binding(3) var<storage, read_write> strengthData: array<f32>;
|
|
22
|
+
@group(0) @binding(4) var<storage> prevLabelmap: array<u32>;
|
|
23
|
+
@group(0) @binding(5) var<storage> prevStrengthData: array<f32>;
|
|
24
|
+
@group(0) @binding(6) var<storage, read_write> updatedVoxelsCounter: array<atomic<u32>>;
|
|
25
|
+
|
|
26
|
+
fn getPixelIndex(ijkPos: vec3u) -> u32 {
|
|
27
|
+
let numPixelsPerSlice = params.size.x * params.size.y;
|
|
28
|
+
return ijkPos.x + ijkPos.y * params.size.x + ijkPos.z * numPixelsPerSlice;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@compute @workgroup_size(workGroupSizeX, workGroupSizeY, workGroupSizeZ)
|
|
32
|
+
fn main(
|
|
33
|
+
@builtin(global_invocation_id) globalId: vec3u,
|
|
34
|
+
) {
|
|
35
|
+
// Make sure it will not get out of bounds for volume with sizes that
|
|
36
|
+
// are not multiple of workGroupSize
|
|
37
|
+
if (
|
|
38
|
+
globalId.x >= params.size.x ||
|
|
39
|
+
globalId.y >= params.size.y ||
|
|
40
|
+
globalId.z >= params.size.z
|
|
41
|
+
) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
let currentCoord = vec3i(globalId);
|
|
46
|
+
let currentPixelIndex = getPixelIndex(globalId);
|
|
47
|
+
|
|
48
|
+
let numPixels = arrayLength(&volumePixelData);
|
|
49
|
+
let currentPixelValue = volumePixelData[currentPixelIndex];
|
|
50
|
+
|
|
51
|
+
if (params.iteration == 0) {
|
|
52
|
+
// All non-zero initial labels are given maximum strength
|
|
53
|
+
strengthData[currentPixelIndex] = select(MAX_STRENGTH, 0., labelmap[currentPixelIndex] == 0);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// It should at least copy the values from previous state
|
|
58
|
+
var newLabel = prevLabelmap[currentPixelIndex];
|
|
59
|
+
var newStrength = prevStrengthData[currentPixelIndex];
|
|
60
|
+
|
|
61
|
+
let window = i32(ceil(f32(windowSize - 1) * .5));
|
|
62
|
+
let minWindow = -1i * window;
|
|
63
|
+
let maxWindow = 1i * window;
|
|
64
|
+
|
|
65
|
+
for (var k = minWindow; k <= maxWindow; k++) {
|
|
66
|
+
for (var j = minWindow; j <= maxWindow; j++) {
|
|
67
|
+
for (var i = minWindow; i <= maxWindow; i++) {
|
|
68
|
+
// Skip current voxel
|
|
69
|
+
if (i == 0 && j == 0 && k == 0) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
let neighborCoord = currentCoord + vec3i(i, j, k);
|
|
74
|
+
|
|
75
|
+
// Boundary conditions. Do not grow outside of the volume
|
|
76
|
+
if (
|
|
77
|
+
neighborCoord.x < 0i || neighborCoord.x >= i32(params.size.x) ||
|
|
78
|
+
neighborCoord.y < 0i || neighborCoord.y >= i32(params.size.y) ||
|
|
79
|
+
neighborCoord.z < 0i || neighborCoord.z >= i32(params.size.z)
|
|
80
|
+
) {
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
let neighborIndex = getPixelIndex(vec3u(neighborCoord));
|
|
85
|
+
let neighborPixelValue = volumePixelData[neighborIndex];
|
|
86
|
+
let prevNeighborStrength = prevStrengthData[neighborIndex];
|
|
87
|
+
let strengthCost = abs(neighborPixelValue - currentPixelValue);
|
|
88
|
+
let takeoverStrength = prevNeighborStrength - strengthCost;
|
|
89
|
+
|
|
90
|
+
if (takeoverStrength > newStrength) {
|
|
91
|
+
newLabel = prevLabelmap[neighborIndex];
|
|
92
|
+
newStrength = takeoverStrength;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
if (labelmap[currentPixelIndex] != newLabel) {
|
|
99
|
+
atomicAdd(&updatedVoxelsCounter[params.iteration], 1u);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
labelmap[currentPixelIndex] = newLabel;
|
|
103
|
+
strengthData[currentPixelIndex] = newStrength;
|
|
104
|
+
}
|
|
105
|
+
`;
|
|
106
|
+
export default shader;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { run } from './runGrowCut';
|
|
2
|
+
export { runGrowCutForSphere } from './runGrowCutForSphere';
|
|
3
|
+
export { runGrowCutForBoundingBox } from './runGrowCutForBoundingBox';
|
|
4
|
+
export { runOneClickGrowCut } from './runOneClickGrowCut';
|
|
5
|
+
export type { SphereInfo, GrowCutSphereOptions } from './runGrowCutForSphere';
|
|
6
|
+
export type { GrowCutBoundingBoxOptions } from './runGrowCutForBoundingBox';
|
|
7
|
+
export type { GrowCutOneClickOptions } from './runOneClickGrowCut';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type GrowCutOptions = {
|
|
2
|
+
maxProcessingTime?: number;
|
|
3
|
+
windowSize?: number;
|
|
4
|
+
positiveSeedValue?: number;
|
|
5
|
+
negativeSeedValue?: number;
|
|
6
|
+
positiveSeedVariance?: number;
|
|
7
|
+
negativeSeedVariance?: number;
|
|
8
|
+
inspection?: {
|
|
9
|
+
numCyclesInterval?: number;
|
|
10
|
+
numCyclesBelowThreashold?: number;
|
|
11
|
+
threshold?: number;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
declare function runGrowCut(referenceVolumeId: string, labelmapVolumeId: string, options?: GrowCutOptions): Promise<void>;
|
|
15
|
+
export { runGrowCut as default, runGrowCut as run };
|
|
16
|
+
export type { GrowCutOptions };
|