@cornerstonejs/tools 2.0.0-beta.1 → 2.0.0-beta.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/dist/cjs/drawingSvg/drawCircle.js +9 -5
- package/dist/cjs/drawingSvg/drawCircle.js.map +1 -1
- package/dist/cjs/drawingSvg/drawEllipse.js +4 -4
- package/dist/cjs/drawingSvg/drawEllipse.js.map +1 -1
- package/dist/cjs/drawingSvg/drawHandles.js +4 -4
- package/dist/cjs/drawingSvg/drawHandles.js.map +1 -1
- package/dist/cjs/drawingSvg/drawLine.js +4 -4
- package/dist/cjs/drawingSvg/drawLine.js.map +1 -1
- package/dist/cjs/drawingSvg/drawPolyline.js +4 -4
- package/dist/cjs/drawingSvg/drawPolyline.js.map +1 -1
- package/dist/cjs/drawingSvg/drawRect.js +4 -4
- package/dist/cjs/drawingSvg/drawRect.js.map +1 -1
- package/dist/cjs/drawingSvg/drawTextBox.js +4 -4
- package/dist/cjs/drawingSvg/drawTextBox.js.map +1 -1
- package/dist/cjs/drawingSvg/getSvgDrawingHelper.js +1 -1
- package/dist/cjs/drawingSvg/getSvgDrawingHelper.js.map +1 -1
- package/dist/cjs/drawingSvg/index.d.ts +3 -1
- package/dist/cjs/drawingSvg/index.js +5 -1
- package/dist/cjs/drawingSvg/index.js.map +1 -1
- package/dist/cjs/drawingSvg/setAttributesIfNecessary.d.ts +2 -0
- package/dist/cjs/drawingSvg/{_setAttributesIfNecessary.js → setAttributesIfNecessary.js} +5 -5
- package/dist/cjs/drawingSvg/setAttributesIfNecessary.js.map +1 -0
- package/dist/cjs/drawingSvg/setNewAttributesIfValid.d.ts +2 -0
- package/dist/cjs/drawingSvg/{_setNewAttributesIfValid.js → setNewAttributesIfValid.js} +5 -5
- package/dist/cjs/drawingSvg/setNewAttributesIfValid.js.map +1 -0
- package/dist/cjs/enums/Events.d.ts +2 -0
- package/dist/cjs/enums/Events.js +2 -0
- package/dist/cjs/enums/Events.js.map +1 -1
- package/dist/cjs/eventDispatchers/mouseEventHandlers/mouseDown.js +6 -1
- package/dist/cjs/eventDispatchers/mouseEventHandlers/mouseDown.js.map +1 -1
- package/dist/cjs/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.d.ts +2 -0
- package/dist/cjs/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.js +41 -0
- package/dist/cjs/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.js.map +1 -0
- package/dist/cjs/eventDispatchers/shared/getMouseModifier.js +10 -5
- package/dist/cjs/eventDispatchers/shared/getMouseModifier.js.map +1 -1
- package/dist/cjs/eventDispatchers/shared/getToolsWithActionsForMouseEvent.d.ts +3 -0
- package/dist/cjs/eventDispatchers/shared/getToolsWithActionsForMouseEvent.js +39 -0
- package/dist/cjs/eventDispatchers/shared/getToolsWithActionsForMouseEvent.js.map +1 -0
- package/dist/cjs/eventListeners/keyboard/keyDownListener.js +8 -0
- package/dist/cjs/eventListeners/keyboard/keyDownListener.js.map +1 -1
- package/dist/cjs/eventListeners/mouse/mouseDownListener.js +7 -2
- package/dist/cjs/eventListeners/mouse/mouseDownListener.js.map +1 -1
- package/dist/cjs/eventListeners/mouse/mouseMoveListener.js +5 -1
- package/dist/cjs/eventListeners/mouse/mouseMoveListener.js.map +1 -1
- package/dist/cjs/eventListeners/touch/touchStartListener.js +10 -5
- package/dist/cjs/eventListeners/touch/touchStartListener.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/stateManagement/annotation/config/ToolStyle.js +1 -0
- package/dist/cjs/stateManagement/annotation/config/ToolStyle.js.map +1 -1
- package/dist/cjs/stateManagement/annotation/config/getState.js +6 -3
- package/dist/cjs/stateManagement/annotation/config/getState.js.map +1 -1
- package/dist/cjs/stateManagement/annotation/config/helpers.js +4 -2
- package/dist/cjs/stateManagement/annotation/config/helpers.js.map +1 -1
- package/dist/cjs/store/SynchronizerManager/Synchronizer.js +10 -2
- package/dist/cjs/store/SynchronizerManager/Synchronizer.js.map +1 -1
- package/dist/cjs/store/ToolGroupManager/ToolGroup.d.ts +5 -3
- package/dist/cjs/store/ToolGroupManager/ToolGroup.js +44 -2
- package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
- package/dist/cjs/store/ToolGroupManager/getToolGroupsWithToolName.js +2 -1
- package/dist/cjs/store/ToolGroupManager/getToolGroupsWithToolName.js.map +1 -1
- package/dist/cjs/synchronizers/callbacks/stackImageSyncCallback.js +25 -22
- package/dist/cjs/synchronizers/callbacks/stackImageSyncCallback.js.map +1 -1
- package/dist/cjs/synchronizers/callbacks/voiSyncCallback.js +1 -1
- package/dist/cjs/synchronizers/callbacks/voiSyncCallback.js.map +1 -1
- package/dist/cjs/tools/AdvancedMagnifyTool.d.ts +36 -0
- package/dist/cjs/tools/AdvancedMagnifyTool.js +448 -0
- package/dist/cjs/tools/AdvancedMagnifyTool.js.map +1 -0
- package/dist/cjs/tools/AdvancedMagnifyViewport.d.ts +76 -0
- package/dist/cjs/tools/AdvancedMagnifyViewport.js +352 -0
- package/dist/cjs/tools/AdvancedMagnifyViewport.js.map +1 -0
- package/dist/cjs/tools/AdvancedMagnifyViewportManager.d.ts +36 -0
- package/dist/cjs/tools/AdvancedMagnifyViewportManager.js +133 -0
- package/dist/cjs/tools/AdvancedMagnifyViewportManager.js.map +1 -0
- package/dist/cjs/tools/MIPJumpToClickTool.js +4 -2
- package/dist/cjs/tools/MIPJumpToClickTool.js.map +1 -1
- package/dist/cjs/tools/MagnifyTool.js +2 -2
- package/dist/cjs/tools/MagnifyTool.js.map +1 -1
- package/dist/cjs/tools/OrientationMarkerTool.d.ts +88 -0
- package/dist/cjs/tools/OrientationMarkerTool.js +193 -0
- package/dist/cjs/tools/OrientationMarkerTool.js.map +1 -0
- package/dist/cjs/tools/OverlayGridTool.d.ts +31 -0
- package/dist/cjs/tools/OverlayGridTool.js +170 -0
- package/dist/cjs/tools/OverlayGridTool.js.map +1 -0
- package/dist/cjs/tools/PlanarRotateTool.js +2 -1
- package/dist/cjs/tools/PlanarRotateTool.js.map +1 -1
- package/dist/cjs/tools/ReferenceCursors.js +58 -29
- package/dist/cjs/tools/ReferenceCursors.js.map +1 -1
- package/dist/cjs/tools/ReferenceLinesTool.d.ts +3 -0
- package/dist/cjs/tools/ReferenceLinesTool.js +71 -2
- package/dist/cjs/tools/ReferenceLinesTool.js.map +1 -1
- package/dist/cjs/tools/ScaleOverlayTool.js +2 -1
- package/dist/cjs/tools/ScaleOverlayTool.js.map +1 -1
- package/dist/cjs/tools/annotation/AngleTool.d.ts +0 -1
- package/dist/cjs/tools/annotation/AngleTool.js +33 -15
- package/dist/cjs/tools/annotation/AngleTool.js.map +1 -1
- package/dist/cjs/tools/annotation/ArrowAnnotateTool.js +15 -1
- package/dist/cjs/tools/annotation/ArrowAnnotateTool.js.map +1 -1
- package/dist/cjs/tools/annotation/BidirectionalTool.d.ts +0 -1
- package/dist/cjs/tools/annotation/BidirectionalTool.js +30 -15
- package/dist/cjs/tools/annotation/BidirectionalTool.js.map +1 -1
- package/dist/cjs/tools/annotation/CircleROITool.d.ts +1 -3
- package/dist/cjs/tools/annotation/CircleROITool.js +63 -60
- package/dist/cjs/tools/annotation/CircleROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/CobbAngleTool.d.ts +31 -6
- package/dist/cjs/tools/annotation/CobbAngleTool.js +294 -82
- package/dist/cjs/tools/annotation/CobbAngleTool.js.map +1 -1
- package/dist/cjs/tools/annotation/DragProbeTool.js +17 -4
- package/dist/cjs/tools/annotation/DragProbeTool.js.map +1 -1
- package/dist/cjs/tools/annotation/EllipticalROITool.d.ts +2 -4
- package/dist/cjs/tools/annotation/EllipticalROITool.js +67 -61
- package/dist/cjs/tools/annotation/EllipticalROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/LengthTool.d.ts +0 -1
- package/dist/cjs/tools/annotation/LengthTool.js +27 -12
- package/dist/cjs/tools/annotation/LengthTool.js.map +1 -1
- package/dist/cjs/tools/annotation/PlanarFreehandROITool.d.ts +1 -3
- package/dist/cjs/tools/annotation/PlanarFreehandROITool.js +72 -60
- package/dist/cjs/tools/annotation/PlanarFreehandROITool.js.map +1 -1
- package/dist/cjs/tools/annotation/ProbeTool.d.ts +1 -3
- package/dist/cjs/tools/annotation/ProbeTool.js +28 -22
- package/dist/cjs/tools/annotation/ProbeTool.js.map +1 -1
- package/dist/cjs/tools/annotation/RectangleROITool.d.ts +1 -2
- package/dist/cjs/tools/annotation/RectangleROITool.js +55 -57
- package/dist/cjs/tools/annotation/RectangleROITool.js.map +1 -1
- package/dist/cjs/tools/base/AnnotationDisplayTool.js +4 -0
- package/dist/cjs/tools/base/AnnotationDisplayTool.js.map +1 -1
- package/dist/cjs/tools/base/AnnotationTool.d.ts +3 -2
- package/dist/cjs/tools/base/AnnotationTool.js +27 -16
- package/dist/cjs/tools/base/AnnotationTool.js.map +1 -1
- package/dist/cjs/tools/base/index.d.ts +2 -1
- package/dist/cjs/tools/base/index.js +3 -1
- package/dist/cjs/tools/base/index.js.map +1 -1
- package/dist/cjs/tools/displayTools/Contour/contourDisplay.js +3 -0
- package/dist/cjs/tools/displayTools/Contour/contourDisplay.js.map +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
- package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.js +3 -0
- package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.js.map +1 -1
- package/dist/cjs/tools/displayTools/SegmentationDisplayTool.js +5 -6
- package/dist/cjs/tools/displayTools/SegmentationDisplayTool.js.map +1 -1
- package/dist/cjs/tools/index.d.ts +5 -2
- package/dist/cjs/tools/index.js +8 -1
- package/dist/cjs/tools/index.js.map +1 -1
- package/dist/cjs/tools/segmentation/BrushTool.js +24 -17
- package/dist/cjs/tools/segmentation/BrushTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/PaintFillTool.js +4 -2
- package/dist/cjs/tools/segmentation/PaintFillTool.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/eraseSphere.d.ts +2 -0
- package/dist/cjs/tools/segmentation/strategies/eraseSphere.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/fillCircle.js +5 -7
- package/dist/cjs/tools/segmentation/strategies/fillCircle.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/fillSphere.d.ts +3 -0
- package/dist/cjs/tools/segmentation/strategies/fillSphere.js +38 -10
- package/dist/cjs/tools/segmentation/strategies/fillSphere.js.map +1 -1
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +3 -0
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js +10 -0
- package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -0
- package/dist/cjs/types/CINETypes.d.ts +2 -0
- package/dist/cjs/types/CalculatorTypes.d.ts +6 -0
- package/dist/cjs/types/CalculatorTypes.js +3 -0
- package/dist/cjs/types/CalculatorTypes.js.map +1 -0
- package/dist/cjs/types/EventTypes.d.ts +16 -1
- package/dist/cjs/types/ISetToolModeOptions.d.ts +2 -2
- package/dist/cjs/types/IToolGroup.d.ts +6 -2
- package/dist/cjs/types/ToolAction.d.ts +8 -0
- package/dist/cjs/types/ToolAction.js +3 -0
- package/dist/cjs/types/ToolAction.js.map +1 -0
- package/dist/cjs/types/ToolProps.d.ts +5 -1
- package/dist/cjs/types/ToolSpecificAnnotationTypes.d.ts +55 -0
- package/dist/cjs/types/index.d.ts +4 -2
- package/dist/cjs/utilities/cine/playClip.js +13 -3
- package/dist/cjs/utilities/cine/playClip.js.map +1 -1
- package/dist/cjs/utilities/dynamicVolume/getDataInTime.js +7 -4
- package/dist/cjs/utilities/dynamicVolume/getDataInTime.js.map +1 -1
- package/dist/cjs/utilities/getCalibratedUnits.js +10 -5
- package/dist/cjs/utilities/getCalibratedUnits.js.map +1 -1
- package/dist/cjs/utilities/getModalityUnit.js +5 -2
- package/dist/cjs/utilities/getModalityUnit.js.map +1 -1
- package/dist/cjs/utilities/index.d.ts +2 -2
- package/dist/cjs/utilities/index.js +4 -3
- package/dist/cjs/utilities/index.js.map +1 -1
- package/dist/cjs/utilities/math/angle/angleBetweenLines.d.ts +3 -1
- package/dist/cjs/utilities/math/angle/angleBetweenLines.js +18 -1
- package/dist/cjs/utilities/math/angle/angleBetweenLines.js.map +1 -1
- package/dist/cjs/utilities/math/basic/BasicStatsCalculator.d.ts +14 -0
- package/dist/cjs/utilities/math/basic/BasicStatsCalculator.js +44 -0
- package/dist/cjs/utilities/math/basic/BasicStatsCalculator.js.map +1 -0
- package/dist/cjs/utilities/math/basic/Calculator.d.ts +8 -0
- package/dist/cjs/utilities/math/basic/Calculator.js +6 -0
- package/dist/cjs/utilities/math/basic/Calculator.js.map +1 -0
- package/dist/cjs/utilities/math/basic/index.d.ts +3 -0
- package/dist/cjs/utilities/math/basic/index.js +11 -0
- package/dist/cjs/utilities/math/basic/index.js.map +1 -0
- package/dist/cjs/utilities/math/index.d.ts +2 -1
- package/dist/cjs/utilities/math/index.js +3 -1
- package/dist/cjs/utilities/math/index.js.map +1 -1
- package/dist/cjs/utilities/math/midPoint.js +2 -1
- package/dist/cjs/utilities/math/midPoint.js.map +1 -1
- package/dist/cjs/utilities/math/polyline/pointInPolyline.js +2 -1
- package/dist/cjs/utilities/math/polyline/pointInPolyline.js.map +1 -1
- package/dist/cjs/utilities/math/vec2/liangBarksyClip.d.ts +1 -1
- package/dist/cjs/utilities/math/vec2/liangBarksyClip.js +10 -5
- package/dist/cjs/utilities/math/vec2/liangBarksyClip.js.map +1 -1
- package/dist/cjs/utilities/pointInShapeCallback.d.ts +7 -1
- package/dist/cjs/utilities/pointInShapeCallback.js +6 -1
- package/dist/cjs/utilities/pointInShapeCallback.js.map +1 -1
- package/dist/cjs/utilities/roundNumber.js +4 -2
- package/dist/cjs/utilities/roundNumber.js.map +1 -1
- package/dist/cjs/utilities/segmentation/brushSizeForToolGroup.d.ts +2 -2
- package/dist/cjs/utilities/segmentation/brushSizeForToolGroup.js +4 -4
- package/dist/cjs/utilities/segmentation/brushSizeForToolGroup.js.map +1 -1
- package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.js +2 -1
- package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.js.map +1 -1
- package/dist/cjs/utilities/segmentation/utilities.d.ts +1 -2
- package/dist/cjs/utilities/segmentation/utilities.js +4 -1
- package/dist/cjs/utilities/segmentation/utilities.js.map +1 -1
- package/dist/cjs/utilities/stackPrefetch/index.d.ts +3 -2
- package/dist/cjs/utilities/stackPrefetch/index.js +8 -6
- package/dist/cjs/utilities/stackPrefetch/index.js.map +1 -1
- package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.d.ts +16 -0
- package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js +227 -0
- package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -0
- package/dist/cjs/utilities/stackPrefetch/stackPrefetch.d.ts +7 -1
- package/dist/cjs/utilities/stackPrefetch/stackPrefetch.js +25 -95
- package/dist/cjs/utilities/stackPrefetch/stackPrefetch.js.map +1 -1
- package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.d.ts +14 -0
- package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js +85 -0
- package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -0
- package/dist/esm/drawingSvg/drawCircle.js +9 -5
- package/dist/esm/drawingSvg/drawCircle.js.map +1 -1
- package/dist/esm/drawingSvg/drawEllipse.js +4 -4
- package/dist/esm/drawingSvg/drawEllipse.js.map +1 -1
- package/dist/esm/drawingSvg/drawHandles.js +4 -4
- package/dist/esm/drawingSvg/drawHandles.js.map +1 -1
- package/dist/esm/drawingSvg/drawLine.js +4 -4
- package/dist/esm/drawingSvg/drawLine.js.map +1 -1
- package/dist/esm/drawingSvg/drawPolyline.js +4 -4
- package/dist/esm/drawingSvg/drawPolyline.js.map +1 -1
- package/dist/esm/drawingSvg/drawRect.js +4 -4
- package/dist/esm/drawingSvg/drawRect.js.map +1 -1
- package/dist/esm/drawingSvg/drawTextBox.js +4 -4
- package/dist/esm/drawingSvg/drawTextBox.js.map +1 -1
- package/dist/esm/drawingSvg/getSvgDrawingHelper.js +1 -1
- package/dist/esm/drawingSvg/getSvgDrawingHelper.js.map +1 -1
- package/dist/esm/drawingSvg/index.d.ts +3 -1
- package/dist/esm/drawingSvg/index.js +3 -1
- package/dist/esm/drawingSvg/index.js.map +1 -1
- package/dist/esm/drawingSvg/setAttributesIfNecessary.d.ts +2 -0
- package/dist/esm/drawingSvg/{_setAttributesIfNecessary.js → setAttributesIfNecessary.js} +3 -3
- package/dist/esm/drawingSvg/setAttributesIfNecessary.js.map +1 -0
- package/dist/esm/drawingSvg/setNewAttributesIfValid.d.ts +2 -0
- package/dist/esm/drawingSvg/{_setNewAttributesIfValid.js → setNewAttributesIfValid.js} +3 -3
- package/dist/esm/drawingSvg/setNewAttributesIfValid.js.map +1 -0
- package/dist/esm/enums/Events.d.ts +2 -0
- package/dist/esm/enums/Events.js +2 -0
- package/dist/esm/enums/Events.js.map +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.js +6 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.js.map +1 -1
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.d.ts +2 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.js +35 -0
- package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.js.map +1 -0
- package/dist/esm/eventDispatchers/shared/getMouseModifier.js +10 -5
- package/dist/esm/eventDispatchers/shared/getMouseModifier.js.map +1 -1
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.d.ts +3 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.js +32 -0
- package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.js.map +1 -0
- package/dist/esm/eventListeners/keyboard/keyDownListener.js +8 -0
- package/dist/esm/eventListeners/keyboard/keyDownListener.js.map +1 -1
- package/dist/esm/eventListeners/mouse/mouseDownListener.js +7 -2
- package/dist/esm/eventListeners/mouse/mouseDownListener.js.map +1 -1
- package/dist/esm/eventListeners/mouse/mouseMoveListener.js +5 -1
- package/dist/esm/eventListeners/mouse/mouseMoveListener.js.map +1 -1
- package/dist/esm/eventListeners/touch/touchStartListener.js +10 -5
- package/dist/esm/eventListeners/touch/touchStartListener.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/stateManagement/annotation/config/ToolStyle.js +1 -0
- package/dist/esm/stateManagement/annotation/config/ToolStyle.js.map +1 -1
- package/dist/esm/stateManagement/annotation/config/getState.js +6 -3
- package/dist/esm/stateManagement/annotation/config/getState.js.map +1 -1
- package/dist/esm/stateManagement/annotation/config/helpers.js +4 -2
- package/dist/esm/stateManagement/annotation/config/helpers.js.map +1 -1
- package/dist/esm/store/SynchronizerManager/Synchronizer.js +10 -2
- package/dist/esm/store/SynchronizerManager/Synchronizer.js.map +1 -1
- package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +5 -3
- package/dist/esm/store/ToolGroupManager/ToolGroup.js +45 -4
- package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
- package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.js +2 -1
- package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.js.map +1 -1
- package/dist/esm/synchronizers/callbacks/stackImageSyncCallback.js +26 -23
- package/dist/esm/synchronizers/callbacks/stackImageSyncCallback.js.map +1 -1
- package/dist/esm/synchronizers/callbacks/voiSyncCallback.js +1 -1
- package/dist/esm/synchronizers/callbacks/voiSyncCallback.js.map +1 -1
- package/dist/esm/tools/AdvancedMagnifyTool.d.ts +36 -0
- package/dist/esm/tools/AdvancedMagnifyTool.js +440 -0
- package/dist/esm/tools/AdvancedMagnifyTool.js.map +1 -0
- package/dist/esm/tools/AdvancedMagnifyViewport.d.ts +76 -0
- package/dist/esm/tools/AdvancedMagnifyViewport.js +346 -0
- package/dist/esm/tools/AdvancedMagnifyViewport.js.map +1 -0
- package/dist/esm/tools/AdvancedMagnifyViewportManager.d.ts +36 -0
- package/dist/esm/tools/AdvancedMagnifyViewportManager.js +128 -0
- package/dist/esm/tools/AdvancedMagnifyViewportManager.js.map +1 -0
- package/dist/esm/tools/MIPJumpToClickTool.js +4 -2
- package/dist/esm/tools/MIPJumpToClickTool.js.map +1 -1
- package/dist/esm/tools/MagnifyTool.js +2 -2
- package/dist/esm/tools/MagnifyTool.js.map +1 -1
- package/dist/esm/tools/OrientationMarkerTool.d.ts +88 -0
- package/dist/esm/tools/OrientationMarkerTool.js +185 -0
- package/dist/esm/tools/OrientationMarkerTool.js.map +1 -0
- package/dist/esm/tools/OverlayGridTool.d.ts +31 -0
- package/dist/esm/tools/OverlayGridTool.js +165 -0
- package/dist/esm/tools/OverlayGridTool.js.map +1 -0
- package/dist/esm/tools/PlanarRotateTool.js +2 -1
- package/dist/esm/tools/PlanarRotateTool.js.map +1 -1
- package/dist/esm/tools/ReferenceCursors.js +58 -29
- package/dist/esm/tools/ReferenceCursors.js.map +1 -1
- package/dist/esm/tools/ReferenceLinesTool.d.ts +3 -0
- package/dist/esm/tools/ReferenceLinesTool.js +71 -2
- package/dist/esm/tools/ReferenceLinesTool.js.map +1 -1
- package/dist/esm/tools/ScaleOverlayTool.js +2 -1
- package/dist/esm/tools/ScaleOverlayTool.js.map +1 -1
- package/dist/esm/tools/annotation/AngleTool.d.ts +0 -1
- package/dist/esm/tools/annotation/AngleTool.js +33 -15
- package/dist/esm/tools/annotation/AngleTool.js.map +1 -1
- package/dist/esm/tools/annotation/ArrowAnnotateTool.js +15 -1
- package/dist/esm/tools/annotation/ArrowAnnotateTool.js.map +1 -1
- package/dist/esm/tools/annotation/BidirectionalTool.d.ts +0 -1
- package/dist/esm/tools/annotation/BidirectionalTool.js +30 -15
- package/dist/esm/tools/annotation/BidirectionalTool.js.map +1 -1
- package/dist/esm/tools/annotation/CircleROITool.d.ts +1 -3
- package/dist/esm/tools/annotation/CircleROITool.js +62 -60
- package/dist/esm/tools/annotation/CircleROITool.js.map +1 -1
- package/dist/esm/tools/annotation/CobbAngleTool.d.ts +31 -6
- package/dist/esm/tools/annotation/CobbAngleTool.js +301 -83
- package/dist/esm/tools/annotation/CobbAngleTool.js.map +1 -1
- package/dist/esm/tools/annotation/DragProbeTool.js +17 -4
- package/dist/esm/tools/annotation/DragProbeTool.js.map +1 -1
- package/dist/esm/tools/annotation/EllipticalROITool.d.ts +2 -4
- package/dist/esm/tools/annotation/EllipticalROITool.js +66 -61
- package/dist/esm/tools/annotation/EllipticalROITool.js.map +1 -1
- package/dist/esm/tools/annotation/LengthTool.d.ts +0 -1
- package/dist/esm/tools/annotation/LengthTool.js +27 -12
- package/dist/esm/tools/annotation/LengthTool.js.map +1 -1
- package/dist/esm/tools/annotation/PlanarFreehandROITool.d.ts +1 -3
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js +71 -60
- package/dist/esm/tools/annotation/PlanarFreehandROITool.js.map +1 -1
- package/dist/esm/tools/annotation/ProbeTool.d.ts +1 -3
- package/dist/esm/tools/annotation/ProbeTool.js +28 -22
- package/dist/esm/tools/annotation/ProbeTool.js.map +1 -1
- package/dist/esm/tools/annotation/RectangleROITool.d.ts +1 -2
- package/dist/esm/tools/annotation/RectangleROITool.js +54 -57
- package/dist/esm/tools/annotation/RectangleROITool.js.map +1 -1
- package/dist/esm/tools/base/AnnotationDisplayTool.js +3 -0
- package/dist/esm/tools/base/AnnotationDisplayTool.js.map +1 -1
- package/dist/esm/tools/base/AnnotationTool.d.ts +3 -2
- package/dist/esm/tools/base/AnnotationTool.js +26 -16
- package/dist/esm/tools/base/AnnotationTool.js.map +1 -1
- package/dist/esm/tools/base/index.d.ts +2 -1
- package/dist/esm/tools/base/index.js +2 -1
- package/dist/esm/tools/base/index.js.map +1 -1
- package/dist/esm/tools/displayTools/Contour/contourDisplay.js +4 -1
- package/dist/esm/tools/displayTools/Contour/contourDisplay.js.map +1 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +1 -1
- package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
- package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js +4 -1
- package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js.map +1 -1
- package/dist/esm/tools/displayTools/SegmentationDisplayTool.js +5 -6
- package/dist/esm/tools/displayTools/SegmentationDisplayTool.js.map +1 -1
- package/dist/esm/tools/index.d.ts +5 -2
- package/dist/esm/tools/index.js +5 -2
- package/dist/esm/tools/index.js.map +1 -1
- package/dist/esm/tools/segmentation/BrushTool.js +25 -18
- package/dist/esm/tools/segmentation/BrushTool.js.map +1 -1
- package/dist/esm/tools/segmentation/PaintFillTool.js +4 -2
- package/dist/esm/tools/segmentation/PaintFillTool.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/eraseSphere.d.ts +2 -0
- package/dist/esm/tools/segmentation/strategies/eraseSphere.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/fillCircle.js +1 -6
- package/dist/esm/tools/segmentation/strategies/fillCircle.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/fillSphere.d.ts +3 -0
- package/dist/esm/tools/segmentation/strategies/fillSphere.js +33 -9
- package/dist/esm/tools/segmentation/strategies/fillSphere.js.map +1 -1
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +3 -0
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js +8 -0
- package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -0
- package/dist/esm/types/CINETypes.d.ts +2 -0
- package/dist/esm/types/CalculatorTypes.d.ts +6 -0
- package/dist/esm/types/CalculatorTypes.js +2 -0
- package/dist/esm/types/CalculatorTypes.js.map +1 -0
- package/dist/esm/types/EventTypes.d.ts +16 -1
- package/dist/esm/types/ISetToolModeOptions.d.ts +2 -2
- package/dist/esm/types/IToolGroup.d.ts +6 -2
- package/dist/esm/types/ToolAction.d.ts +8 -0
- package/dist/esm/types/ToolAction.js +2 -0
- package/dist/esm/types/ToolAction.js.map +1 -0
- package/dist/esm/types/ToolProps.d.ts +5 -1
- package/dist/esm/types/ToolSpecificAnnotationTypes.d.ts +55 -0
- package/dist/esm/types/index.d.ts +4 -2
- package/dist/esm/utilities/cine/playClip.js +13 -4
- package/dist/esm/utilities/cine/playClip.js.map +1 -1
- package/dist/esm/utilities/dynamicVolume/getDataInTime.js +7 -4
- package/dist/esm/utilities/dynamicVolume/getDataInTime.js.map +1 -1
- package/dist/esm/utilities/getCalibratedUnits.js +10 -5
- package/dist/esm/utilities/getCalibratedUnits.js.map +1 -1
- package/dist/esm/utilities/getModalityUnit.js +5 -2
- package/dist/esm/utilities/getModalityUnit.js.map +1 -1
- package/dist/esm/utilities/index.d.ts +2 -2
- package/dist/esm/utilities/index.js +2 -2
- package/dist/esm/utilities/index.js.map +1 -1
- package/dist/esm/utilities/math/angle/angleBetweenLines.d.ts +3 -1
- package/dist/esm/utilities/math/angle/angleBetweenLines.js +19 -2
- package/dist/esm/utilities/math/angle/angleBetweenLines.js.map +1 -1
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.d.ts +14 -0
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.js +36 -0
- package/dist/esm/utilities/math/basic/BasicStatsCalculator.js.map +1 -0
- package/dist/esm/utilities/math/basic/Calculator.d.ts +8 -0
- package/dist/esm/utilities/math/basic/Calculator.js +4 -0
- package/dist/esm/utilities/math/basic/Calculator.js.map +1 -0
- package/dist/esm/utilities/math/basic/index.d.ts +3 -0
- package/dist/esm/utilities/math/basic/index.js +4 -0
- package/dist/esm/utilities/math/basic/index.js.map +1 -0
- package/dist/esm/utilities/math/index.d.ts +2 -1
- package/dist/esm/utilities/math/index.js +2 -1
- package/dist/esm/utilities/math/index.js.map +1 -1
- package/dist/esm/utilities/math/midPoint.js +2 -1
- package/dist/esm/utilities/math/midPoint.js.map +1 -1
- package/dist/esm/utilities/math/polyline/pointInPolyline.js +2 -1
- package/dist/esm/utilities/math/polyline/pointInPolyline.js.map +1 -1
- package/dist/esm/utilities/math/vec2/liangBarksyClip.d.ts +1 -1
- package/dist/esm/utilities/math/vec2/liangBarksyClip.js +10 -5
- package/dist/esm/utilities/math/vec2/liangBarksyClip.js.map +1 -1
- package/dist/esm/utilities/pointInShapeCallback.d.ts +7 -1
- package/dist/esm/utilities/pointInShapeCallback.js +6 -1
- package/dist/esm/utilities/pointInShapeCallback.js.map +1 -1
- package/dist/esm/utilities/roundNumber.js +4 -2
- package/dist/esm/utilities/roundNumber.js.map +1 -1
- package/dist/esm/utilities/segmentation/brushSizeForToolGroup.d.ts +2 -2
- package/dist/esm/utilities/segmentation/brushSizeForToolGroup.js +4 -4
- package/dist/esm/utilities/segmentation/brushSizeForToolGroup.js.map +1 -1
- package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +2 -1
- package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js.map +1 -1
- package/dist/esm/utilities/segmentation/utilities.d.ts +1 -2
- package/dist/esm/utilities/segmentation/utilities.js +4 -1
- package/dist/esm/utilities/segmentation/utilities.js.map +1 -1
- package/dist/esm/utilities/stackPrefetch/index.d.ts +3 -2
- package/dist/esm/utilities/stackPrefetch/index.js +3 -2
- package/dist/esm/utilities/stackPrefetch/index.js.map +1 -1
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.d.ts +16 -0
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +220 -0
- package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetch.d.ts +7 -1
- package/dist/esm/utilities/stackPrefetch/stackPrefetch.js +14 -81
- package/dist/esm/utilities/stackPrefetch/stackPrefetch.js.map +1 -1
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.d.ts +14 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +77 -0
- package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -0
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +3 -3
- package/src/drawingSvg/drawCircle.ts +17 -5
- package/src/drawingSvg/drawEllipse.ts +4 -4
- package/src/drawingSvg/drawHandles.ts +4 -4
- package/src/drawingSvg/drawLine.ts +4 -4
- package/src/drawingSvg/drawPolyline.ts +4 -4
- package/src/drawingSvg/drawRect.ts +4 -4
- package/src/drawingSvg/drawTextBox.ts +4 -4
- package/src/drawingSvg/getSvgDrawingHelper.ts +4 -1
- package/src/drawingSvg/index.ts +4 -0
- package/src/drawingSvg/{_setAttributesIfNecessary.ts → setAttributesIfNecessary.ts} +2 -2
- package/src/drawingSvg/{_setNewAttributesIfValid.ts → setNewAttributesIfValid.ts} +2 -2
- package/src/enums/Events.ts +22 -0
- package/src/eventDispatchers/mouseEventHandlers/mouseDown.ts +11 -2
- package/src/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.ts +72 -0
- package/src/eventDispatchers/shared/getMouseModifier.ts +15 -5
- package/src/eventDispatchers/shared/getToolsWithActionsForMouseEvent.ts +66 -0
- package/src/eventListeners/keyboard/keyDownListener.ts +13 -0
- package/src/eventListeners/mouse/mouseDownListener.ts +10 -2
- package/src/eventListeners/mouse/mouseMoveListener.ts +7 -1
- package/src/eventListeners/touch/touchStartListener.ts +15 -5
- package/src/index.ts +8 -0
- package/src/stateManagement/annotation/config/ToolStyle.ts +1 -0
- package/src/stateManagement/annotation/config/getState.ts +7 -3
- package/src/stateManagement/annotation/config/helpers.ts +6 -2
- package/src/store/SynchronizerManager/Synchronizer.ts +16 -8
- package/src/store/ToolGroupManager/ToolGroup.ts +99 -6
- package/src/store/ToolGroupManager/getToolGroupsWithToolName.ts +3 -1
- package/src/synchronizers/callbacks/stackImageSyncCallback.ts +63 -68
- package/src/synchronizers/callbacks/voiSyncCallback.ts +1 -1
- package/src/tools/AdvancedMagnifyTool.ts +725 -0
- package/src/tools/AdvancedMagnifyViewport.ts +624 -0
- package/src/tools/AdvancedMagnifyViewportManager.ts +291 -0
- package/src/tools/MIPJumpToClickTool.ts +6 -2
- package/src/tools/MagnifyTool.ts +2 -2
- package/src/tools/OrientationMarkerTool.ts +235 -0
- package/src/tools/OverlayGridTool.ts +357 -0
- package/src/tools/PlanarRotateTool.ts +3 -1
- package/src/tools/ReferenceCursors.ts +85 -29
- package/src/tools/ReferenceLinesTool.ts +131 -3
- package/src/tools/ScaleOverlayTool.ts +3 -1
- package/src/tools/annotation/AngleTool.ts +42 -20
- package/src/tools/annotation/ArrowAnnotateTool.ts +16 -1
- package/src/tools/annotation/BidirectionalTool.ts +38 -24
- package/src/tools/annotation/CircleROITool.ts +94 -107
- package/src/tools/annotation/CobbAngleTool.ts +452 -114
- package/src/tools/annotation/DragProbeTool.ts +25 -14
- package/src/tools/annotation/EllipticalROITool.ts +88 -97
- package/src/tools/annotation/LengthTool.ts +33 -18
- package/src/tools/annotation/PlanarFreehandROITool.ts +90 -78
- package/src/tools/annotation/ProbeTool.ts +43 -49
- package/src/tools/annotation/RectangleROITool.ts +80 -92
- package/src/tools/base/AnnotationDisplayTool.ts +4 -0
- package/src/tools/base/AnnotationTool.ts +41 -18
- package/src/tools/base/index.ts +2 -1
- package/src/tools/displayTools/Contour/contourDisplay.ts +8 -0
- package/src/tools/displayTools/Labelmap/labelmapDisplay.ts +4 -1
- package/src/tools/displayTools/Labelmap/removeLabelmapFromElement.ts +6 -1
- package/src/tools/displayTools/SegmentationDisplayTool.ts +12 -18
- package/src/tools/index.ts +8 -1
- package/src/tools/segmentation/BrushTool.ts +42 -19
- package/src/tools/segmentation/PaintFillTool.ts +10 -3
- package/src/tools/segmentation/strategies/eraseSphere.ts +2 -0
- package/src/tools/segmentation/strategies/fillCircle.ts +1 -13
- package/src/tools/segmentation/strategies/fillSphere.ts +56 -8
- package/src/tools/segmentation/strategies/utils/isWithinThreshold.ts +16 -0
- package/src/types/CINETypes.ts +8 -2
- package/src/types/CalculatorTypes.ts +7 -0
- package/src/types/EventTypes.ts +43 -0
- package/src/types/ISetToolModeOptions.ts +2 -2
- package/src/types/IToolGroup.ts +13 -3
- package/src/types/ToolAction.ts +54 -0
- package/src/types/ToolProps.ts +7 -1
- package/src/types/ToolSpecificAnnotationTypes.ts +58 -0
- package/src/types/index.ts +11 -1
- package/src/utilities/cine/playClip.ts +20 -3
- package/src/utilities/dynamicVolume/getDataInTime.ts +9 -6
- package/src/utilities/getCalibratedUnits.ts +15 -5
- package/src/utilities/getModalityUnit.ts +8 -2
- package/src/utilities/index.ts +2 -1
- package/src/utilities/math/angle/angleBetweenLines.ts +39 -9
- package/src/utilities/math/basic/BasicStatsCalculator.ts +60 -0
- package/src/utilities/math/basic/Calculator.ts +8 -0
- package/src/utilities/math/basic/index.ts +4 -0
- package/src/utilities/math/index.ts +10 -1
- package/src/utilities/math/midPoint.ts +3 -1
- package/src/utilities/math/polyline/pointInPolyline.ts +3 -1
- package/src/utilities/math/vec2/liangBarksyClip.ts +15 -5
- package/src/utilities/pointInShapeCallback.ts +15 -3
- package/src/utilities/roundNumber.ts +6 -2
- package/src/utilities/segmentation/brushSizeForToolGroup.ts +22 -4
- package/src/utilities/segmentation/thresholdVolumeByRange.ts +3 -1
- package/src/utilities/segmentation/utilities.ts +8 -1
- package/src/utilities/stackPrefetch/index.ts +3 -7
- package/src/utilities/stackPrefetch/stackContextPrefetch.ts +380 -0
- package/src/utilities/stackPrefetch/stackPrefetch.ts +37 -153
- package/src/utilities/stackPrefetch/stackPrefetchUtils.ts +114 -0
- package/dist/cjs/drawingSvg/_setAttributesIfNecessary.d.ts +0 -2
- package/dist/cjs/drawingSvg/_setAttributesIfNecessary.js.map +0 -1
- package/dist/cjs/drawingSvg/_setNewAttributesIfValid.d.ts +0 -2
- package/dist/cjs/drawingSvg/_setNewAttributesIfValid.js.map +0 -1
- package/dist/esm/drawingSvg/_setAttributesIfNecessary.d.ts +0 -2
- package/dist/esm/drawingSvg/_setAttributesIfNecessary.js.map +0 -1
- package/dist/esm/drawingSvg/_setNewAttributesIfValid.d.ts +0 -2
- package/dist/esm/drawingSvg/_setNewAttributesIfValid.js.map +0 -1
|
@@ -1,72 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setConfiguration = exports.getConfiguration = exports.disable = exports.enable = void 0;
|
|
4
3
|
const core_1 = require("@cornerstonejs/core");
|
|
5
4
|
const state_1 = require("./state");
|
|
6
|
-
const
|
|
7
|
-
const priority = 0;
|
|
8
|
-
const addToBeginning = true;
|
|
5
|
+
const stackPrefetchUtils_1 = require("./stackPrefetchUtils");
|
|
9
6
|
let configuration = {
|
|
10
7
|
maxImagesToPrefetch: Infinity,
|
|
11
|
-
preserveExistingPool:
|
|
8
|
+
preserveExistingPool: true,
|
|
12
9
|
};
|
|
13
10
|
let resetPrefetchTimeout;
|
|
14
11
|
const resetPrefetchDelay = 10;
|
|
15
|
-
function range(lowEnd, highEnd) {
|
|
16
|
-
lowEnd = Math.round(lowEnd) || 0;
|
|
17
|
-
highEnd = Math.round(highEnd) || 0;
|
|
18
|
-
const arr = [];
|
|
19
|
-
let c = highEnd - lowEnd + 1;
|
|
20
|
-
if (c <= 0) {
|
|
21
|
-
return arr;
|
|
22
|
-
}
|
|
23
|
-
while (c--) {
|
|
24
|
-
arr[c] = highEnd--;
|
|
25
|
-
}
|
|
26
|
-
return arr;
|
|
27
|
-
}
|
|
28
|
-
function nearestIndex(arr, x) {
|
|
29
|
-
let low = 0;
|
|
30
|
-
let high = arr.length - 1;
|
|
31
|
-
arr.forEach((v, idx) => {
|
|
32
|
-
if (v < x) {
|
|
33
|
-
low = Math.max(idx, low);
|
|
34
|
-
}
|
|
35
|
-
else if (v > x) {
|
|
36
|
-
high = Math.min(idx, high);
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
return { low, high };
|
|
40
|
-
}
|
|
41
|
-
function getStackData(element) {
|
|
42
|
-
const enabledElement = (0, core_1.getEnabledElement)(element);
|
|
43
|
-
if (!enabledElement) {
|
|
44
|
-
throw new Error('stackPrefetch: element must be a valid Cornerstone enabled element');
|
|
45
|
-
}
|
|
46
|
-
const { viewport } = enabledElement;
|
|
47
|
-
if (!(viewport instanceof core_1.StackViewport)) {
|
|
48
|
-
throw new Error('stackPrefetch: element must be a StackViewport, VolumeViewport stackPrefetch not yet implemented');
|
|
49
|
-
}
|
|
50
|
-
return {
|
|
51
|
-
currentImageIdIndex: viewport.getCurrentImageIdIndex(),
|
|
52
|
-
imageIds: viewport.getImageIds(),
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
12
|
function prefetch(element) {
|
|
13
|
+
var _a, _b;
|
|
56
14
|
const stackPrefetchData = (0, state_1.getToolState)(element);
|
|
57
15
|
if (!stackPrefetchData) {
|
|
58
16
|
return;
|
|
59
17
|
}
|
|
60
18
|
const stackPrefetch = stackPrefetchData || {};
|
|
61
|
-
const stack = getStackData(element);
|
|
62
|
-
if (!stack ||
|
|
19
|
+
const stack = (0, stackPrefetchUtils_1.getStackData)(element);
|
|
20
|
+
if (!((_a = stack === null || stack === void 0 ? void 0 : stack.imageIds) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
63
21
|
console.warn('CornerstoneTools.stackPrefetch: No images in stack.');
|
|
64
22
|
return;
|
|
65
23
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
stackPrefetch.enabled = false;
|
|
69
|
-
}
|
|
24
|
+
const { currentImageIdIndex } = stack;
|
|
25
|
+
stackPrefetch.enabled && (stackPrefetch.enabled = (_b = stackPrefetch.indicesToRequest) === null || _b === void 0 ? void 0 : _b.length);
|
|
70
26
|
if (stackPrefetch.enabled === false) {
|
|
71
27
|
return;
|
|
72
28
|
}
|
|
@@ -83,8 +39,11 @@ function prefetch(element) {
|
|
|
83
39
|
if (!imageId) {
|
|
84
40
|
return;
|
|
85
41
|
}
|
|
86
|
-
const
|
|
87
|
-
|
|
42
|
+
const distance = Math.abs(currentImageIdIndex - imageIdIndex);
|
|
43
|
+
const imageCached = distance < 6
|
|
44
|
+
? core_1.cache.getImageLoadObject(imageId)
|
|
45
|
+
: core_1.cache.isLoaded(imageId);
|
|
46
|
+
if (imageCached) {
|
|
88
47
|
removeFromList(imageIdIndex);
|
|
89
48
|
}
|
|
90
49
|
});
|
|
@@ -92,9 +51,9 @@ function prefetch(element) {
|
|
|
92
51
|
return;
|
|
93
52
|
}
|
|
94
53
|
if (!configuration.preserveExistingPool) {
|
|
95
|
-
core_1.imageLoadPoolManager.clearRequestStack(requestType);
|
|
54
|
+
core_1.imageLoadPoolManager.clearRequestStack(stackPrefetchUtils_1.requestType);
|
|
96
55
|
}
|
|
97
|
-
const nearest = nearestIndex(stackPrefetch.indicesToRequest, stack.currentImageIdIndex);
|
|
56
|
+
const nearest = (0, stackPrefetchUtils_1.nearestIndex)(stackPrefetch.indicesToRequest, stack.currentImageIdIndex);
|
|
98
57
|
let imageId;
|
|
99
58
|
let nextImageIdIndex;
|
|
100
59
|
const preventCache = false;
|
|
@@ -139,40 +98,13 @@ function prefetch(element) {
|
|
|
139
98
|
preScale: {
|
|
140
99
|
enabled: true,
|
|
141
100
|
},
|
|
142
|
-
requestType,
|
|
101
|
+
requestType: stackPrefetchUtils_1.requestType,
|
|
143
102
|
};
|
|
144
|
-
core_1.imageLoadPoolManager.addRequest(requestFn.bind(null, imageId, options), requestType, {
|
|
103
|
+
core_1.imageLoadPoolManager.addRequest(requestFn.bind(null, imageId, options), stackPrefetchUtils_1.requestType, {
|
|
145
104
|
imageId,
|
|
146
|
-
}, priority);
|
|
105
|
+
}, stackPrefetchUtils_1.priority);
|
|
147
106
|
});
|
|
148
107
|
}
|
|
149
|
-
function getPromiseRemovedHandler(element) {
|
|
150
|
-
return function (e) {
|
|
151
|
-
const eventData = e.detail;
|
|
152
|
-
let stackData;
|
|
153
|
-
try {
|
|
154
|
-
stackData = getStackData(element);
|
|
155
|
-
}
|
|
156
|
-
catch (error) {
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
if (!stackData || !stackData.imageIds || stackData.imageIds.length === 0) {
|
|
160
|
-
return;
|
|
161
|
-
}
|
|
162
|
-
const stack = stackData;
|
|
163
|
-
const imageIdIndex = stack.imageIds.indexOf(eventData.imageId);
|
|
164
|
-
if (imageIdIndex < 0) {
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
const stackPrefetchData = (0, state_1.getToolState)(element);
|
|
168
|
-
if (!stackPrefetchData ||
|
|
169
|
-
!stackPrefetchData.data ||
|
|
170
|
-
!stackPrefetchData.data.length) {
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
stackPrefetchData.indicesToRequest.push(imageIdIndex);
|
|
174
|
-
};
|
|
175
|
-
}
|
|
176
108
|
function onImageUpdated(e) {
|
|
177
109
|
clearTimeout(resetPrefetchTimeout);
|
|
178
110
|
resetPrefetchTimeout = setTimeout(function () {
|
|
@@ -186,13 +118,13 @@ function onImageUpdated(e) {
|
|
|
186
118
|
}, resetPrefetchDelay);
|
|
187
119
|
}
|
|
188
120
|
function enable(element) {
|
|
189
|
-
const stack = getStackData(element);
|
|
121
|
+
const stack = (0, stackPrefetchUtils_1.getStackData)(element);
|
|
190
122
|
if (!stack || !stack.imageIds || stack.imageIds.length === 0) {
|
|
191
123
|
console.warn('CornerstoneTools.stackPrefetch: No images in stack.');
|
|
192
124
|
return;
|
|
193
125
|
}
|
|
194
126
|
const stackPrefetchData = {
|
|
195
|
-
indicesToRequest: range(0, stack.imageIds.length - 1),
|
|
127
|
+
indicesToRequest: (0, stackPrefetchUtils_1.range)(0, stack.imageIds.length - 1),
|
|
196
128
|
enabled: true,
|
|
197
129
|
direction: 1,
|
|
198
130
|
};
|
|
@@ -202,29 +134,27 @@ function enable(element) {
|
|
|
202
134
|
prefetch(element);
|
|
203
135
|
element.removeEventListener(core_1.Enums.Events.STACK_NEW_IMAGE, onImageUpdated);
|
|
204
136
|
element.addEventListener(core_1.Enums.Events.STACK_NEW_IMAGE, onImageUpdated);
|
|
205
|
-
const promiseRemovedHandler = getPromiseRemovedHandler(element);
|
|
137
|
+
const promiseRemovedHandler = (0, stackPrefetchUtils_1.getPromiseRemovedHandler)(element);
|
|
206
138
|
core_1.eventTarget.removeEventListener(core_1.Enums.Events.IMAGE_CACHE_IMAGE_REMOVED, promiseRemovedHandler);
|
|
207
139
|
core_1.eventTarget.addEventListener(core_1.Enums.Events.IMAGE_CACHE_IMAGE_REMOVED, promiseRemovedHandler);
|
|
208
140
|
}
|
|
209
|
-
exports.enable = enable;
|
|
210
141
|
function disable(element) {
|
|
211
142
|
clearTimeout(resetPrefetchTimeout);
|
|
212
143
|
element.removeEventListener(core_1.Enums.Events.STACK_NEW_IMAGE, onImageUpdated);
|
|
213
|
-
const promiseRemovedHandler = getPromiseRemovedHandler(element);
|
|
144
|
+
const promiseRemovedHandler = (0, stackPrefetchUtils_1.getPromiseRemovedHandler)(element);
|
|
214
145
|
core_1.eventTarget.removeEventListener(core_1.Enums.Events.IMAGE_CACHE_IMAGE_REMOVED, promiseRemovedHandler);
|
|
215
146
|
const stackPrefetchData = (0, state_1.getToolState)(element);
|
|
216
|
-
if (stackPrefetchData && stackPrefetchData.
|
|
147
|
+
if (stackPrefetchData && stackPrefetchData.indicesToRequest.length) {
|
|
217
148
|
stackPrefetchData.enabled = false;
|
|
218
|
-
core_1.imageLoadPoolManager.clearRequestStack(requestType);
|
|
149
|
+
core_1.imageLoadPoolManager.clearRequestStack(stackPrefetchUtils_1.requestType);
|
|
219
150
|
}
|
|
220
151
|
}
|
|
221
|
-
exports.disable = disable;
|
|
222
152
|
function getConfiguration() {
|
|
223
153
|
return configuration;
|
|
224
154
|
}
|
|
225
|
-
exports.getConfiguration = getConfiguration;
|
|
226
155
|
function setConfiguration(config) {
|
|
227
156
|
configuration = config;
|
|
228
157
|
}
|
|
229
|
-
|
|
158
|
+
const stackPrefetch = { enable, disable, getConfiguration, setConfiguration };
|
|
159
|
+
exports.default = stackPrefetch;
|
|
230
160
|
//# sourceMappingURL=stackPrefetch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stackPrefetch.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stackPrefetch.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Enums } from '@cornerstonejs/core';
|
|
2
|
+
export declare const requestType = Enums.RequestType.Prefetch;
|
|
3
|
+
export declare const priority = 0;
|
|
4
|
+
export declare function range(lowEnd: any, highEnd: any): any[];
|
|
5
|
+
export declare function nearestIndex(arr: any, x: any): {
|
|
6
|
+
low: number;
|
|
7
|
+
high: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function getStackData(element: any): {
|
|
10
|
+
currentImageIdIndex: number;
|
|
11
|
+
imageIds: string[];
|
|
12
|
+
};
|
|
13
|
+
export declare function getPromiseRemovedHandler(element: any): (e: any) => void;
|
|
14
|
+
export declare const clearFromImageIds: (stack: any) => (requestDetails: any) => boolean;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clearFromImageIds = exports.getPromiseRemovedHandler = exports.getStackData = exports.nearestIndex = exports.range = exports.priority = exports.requestType = void 0;
|
|
4
|
+
const core_1 = require("@cornerstonejs/core");
|
|
5
|
+
const state_1 = require("./state");
|
|
6
|
+
exports.requestType = core_1.Enums.RequestType.Prefetch;
|
|
7
|
+
exports.priority = 0;
|
|
8
|
+
function range(lowEnd, highEnd) {
|
|
9
|
+
lowEnd = Math.round(lowEnd) || 0;
|
|
10
|
+
highEnd = Math.round(highEnd) || 0;
|
|
11
|
+
const arr = [];
|
|
12
|
+
let c = highEnd - lowEnd + 1;
|
|
13
|
+
if (c <= 0) {
|
|
14
|
+
return arr;
|
|
15
|
+
}
|
|
16
|
+
while (c--) {
|
|
17
|
+
arr[c] = highEnd--;
|
|
18
|
+
}
|
|
19
|
+
return arr;
|
|
20
|
+
}
|
|
21
|
+
exports.range = range;
|
|
22
|
+
function nearestIndex(arr, x) {
|
|
23
|
+
let low = 0;
|
|
24
|
+
let high = arr.length - 1;
|
|
25
|
+
arr.forEach((v, idx) => {
|
|
26
|
+
if (v < x) {
|
|
27
|
+
low = Math.max(idx, low);
|
|
28
|
+
}
|
|
29
|
+
else if (v > x) {
|
|
30
|
+
high = Math.min(idx, high);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
return { low, high };
|
|
34
|
+
}
|
|
35
|
+
exports.nearestIndex = nearestIndex;
|
|
36
|
+
function getStackData(element) {
|
|
37
|
+
const enabledElement = (0, core_1.getEnabledElement)(element);
|
|
38
|
+
if (!enabledElement) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const { viewport } = enabledElement;
|
|
42
|
+
if (!(viewport instanceof core_1.StackViewport)) {
|
|
43
|
+
throw new Error('stackPrefetch: element must be a StackViewport, VolumeViewport stackPrefetch not yet implemented');
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
currentImageIdIndex: viewport.getCurrentImageIdIndex(),
|
|
47
|
+
imageIds: viewport.getImageIds(),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
exports.getStackData = getStackData;
|
|
51
|
+
function getPromiseRemovedHandler(element) {
|
|
52
|
+
return function (e) {
|
|
53
|
+
const eventData = e.detail;
|
|
54
|
+
let stackData;
|
|
55
|
+
try {
|
|
56
|
+
stackData = getStackData(element);
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
if (!stackData || !stackData.imageIds || stackData.imageIds.length === 0) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const stack = stackData;
|
|
65
|
+
const imageIdIndex = stack.imageIds.indexOf(eventData.imageId);
|
|
66
|
+
if (imageIdIndex < 0) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const stackPrefetchData = (0, state_1.getToolState)(element);
|
|
70
|
+
if (!stackPrefetchData ||
|
|
71
|
+
!stackPrefetchData.data ||
|
|
72
|
+
!stackPrefetchData.data.length) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
stackPrefetchData.indicesToRequest.push(imageIdIndex);
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
exports.getPromiseRemovedHandler = getPromiseRemovedHandler;
|
|
79
|
+
const clearFromImageIds = (stack) => {
|
|
80
|
+
const imageIdSet = new Set(stack.imageIds);
|
|
81
|
+
return (requestDetails) => requestDetails.type !== exports.requestType ||
|
|
82
|
+
!imageIdSet.has(requestDetails.additionalDetails.imageId);
|
|
83
|
+
};
|
|
84
|
+
exports.clearFromImageIds = clearFromImageIds;
|
|
85
|
+
//# sourceMappingURL=stackPrefetchUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stackPrefetchUtils.js","sourceRoot":"","sources":["../../../../src/utilities/stackPrefetch/stackPrefetchUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
3
|
+
import setNewAttributesIfValid from './setNewAttributesIfValid';
|
|
4
4
|
function drawCircle(svgDrawingHelper, annotationUID, circleUID, center, radius, options = {}, dataId = '') {
|
|
5
|
-
const { color, fill, width, lineWidth, lineDash } = Object.assign({
|
|
5
|
+
const { color, fill, width, lineWidth, lineDash, fillOpacity, strokeOpacity, } = Object.assign({
|
|
6
6
|
color: 'dodgerblue',
|
|
7
7
|
fill: 'transparent',
|
|
8
8
|
width: '2',
|
|
9
9
|
lineDash: undefined,
|
|
10
10
|
lineWidth: undefined,
|
|
11
|
+
strokeOpacity: 1,
|
|
12
|
+
fillOpacity: 1,
|
|
11
13
|
}, options);
|
|
12
14
|
const strokeWidth = lineWidth || width;
|
|
13
15
|
const svgns = 'http://www.w3.org/2000/svg';
|
|
@@ -21,9 +23,11 @@ function drawCircle(svgDrawingHelper, annotationUID, circleUID, center, radius,
|
|
|
21
23
|
fill,
|
|
22
24
|
'stroke-width': strokeWidth,
|
|
23
25
|
'stroke-dasharray': lineDash,
|
|
26
|
+
'fill-opacity': fillOpacity,
|
|
27
|
+
'stroke-opacity': strokeOpacity,
|
|
24
28
|
};
|
|
25
29
|
if (existingCircleElement) {
|
|
26
|
-
|
|
30
|
+
setAttributesIfNecessary(attributes, existingCircleElement);
|
|
27
31
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
28
32
|
}
|
|
29
33
|
else {
|
|
@@ -31,7 +35,7 @@ function drawCircle(svgDrawingHelper, annotationUID, circleUID, center, radius,
|
|
|
31
35
|
if (dataId !== '') {
|
|
32
36
|
newCircleElement.setAttribute('data-id', dataId);
|
|
33
37
|
}
|
|
34
|
-
|
|
38
|
+
setNewAttributesIfValid(attributes, newCircleElement);
|
|
35
39
|
svgDrawingHelper.appendNode(newCircleElement, svgNodeHash);
|
|
36
40
|
}
|
|
37
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawCircle.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawCircle.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,OAAO,
|
|
1
|
+
{"version":3,"file":"drawCircle.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawCircle.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAEhE,SAAS,UAAU,CACjB,gBAAkC,EAClC,aAAqB,EACrB,SAAiB,EACjB,MAAoB,EACpB,MAAc,EACd,OAAO,GAAG,EAAE,EACZ,MAAM,GAAG,EAAE;IAEX,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,KAAK,EACL,SAAS,EACT,QAAQ,EACR,WAAW,EACX,aAAa,GACd,GAAG,MAAM,CAAC,MAAM,CACf;QACE,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,SAAS;QACnB,SAAS,EAAE,SAAS;QACpB,aAAa,EAAE,CAAC;QAChB,WAAW,EAAE,CAAC;KACf,EACD,OAAO,CACR,CAAC;IAGF,MAAM,WAAW,GAAG,SAAS,IAAI,KAAK,CAAC;IAGvC,MAAM,KAAK,GAAG,4BAA4B,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACjE,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAEvE,MAAM,UAAU,GAAG;QACjB,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;QAClB,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;QAClB,CAAC,EAAE,GAAG,MAAM,EAAE;QACd,MAAM,EAAE,KAAK;QACb,IAAI;QACJ,cAAc,EAAE,WAAW;QAC3B,kBAAkB,EAAE,QAAQ;QAC5B,cAAc,EAAE,WAAW;QAC3B,gBAAgB,EAAE,aAAa;KAChC,CAAC;IAEF,IAAI,qBAAqB,EAAE;QACzB,wBAAwB,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;QAE5D,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC9C;SAAM;QACL,MAAM,gBAAgB,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEnE,IAAI,MAAM,KAAK,EAAE,EAAE;YACjB,gBAAgB,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SAClD;QAED,uBAAuB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAEtD,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;KAC5D;AACH,CAAC;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
3
|
+
import setNewAttributesIfValid from './setNewAttributesIfValid';
|
|
4
4
|
function drawEllipse(svgDrawingHelper, annotationUID, ellipseUID, corner1, corner2, options = {}, dataId = '') {
|
|
5
5
|
const { color, width, lineWidth, lineDash } = Object.assign({
|
|
6
6
|
color: 'dodgerblue',
|
|
@@ -30,7 +30,7 @@ function drawEllipse(svgDrawingHelper, annotationUID, ellipseUID, corner1, corne
|
|
|
30
30
|
'stroke-dasharray': lineDash,
|
|
31
31
|
};
|
|
32
32
|
if (existingEllipse) {
|
|
33
|
-
|
|
33
|
+
setAttributesIfNecessary(attributes, existingEllipse);
|
|
34
34
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
35
35
|
}
|
|
36
36
|
else {
|
|
@@ -38,7 +38,7 @@ function drawEllipse(svgDrawingHelper, annotationUID, ellipseUID, corner1, corne
|
|
|
38
38
|
if (dataId !== '') {
|
|
39
39
|
svgEllipseElement.setAttribute('data-id', dataId);
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
setNewAttributesIfValid(attributes, svgEllipseElement);
|
|
42
42
|
svgDrawingHelper.appendNode(svgEllipseElement, svgNodeHash);
|
|
43
43
|
}
|
|
44
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawEllipse.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawEllipse.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"drawEllipse.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawEllipse.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAEhE,SAAS,WAAW,CAClB,gBAAkC,EAClC,aAAqB,EACrB,UAAkB,EAClB,OAAqB,EACrB,OAAqB,EACrB,OAAO,GAAG,EAAE,EACZ,MAAM,GAAG,EAAE;IAEX,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,MAAM,CACzD;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,GAAG;QACV,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,SAAS;KACpB,EACD,OAAO,CACR,CAAC;IAGF,MAAM,WAAW,GAAG,SAAS,IAAI,KAAK,CAAC;IAEvC,MAAM,KAAK,GAAG,4BAA4B,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACnE,MAAM,eAAe,GAAG,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAEjE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IAEtB,MAAM,UAAU,GAAG;QACjB,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;QAClB,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;QAClB,EAAE,EAAE,GAAG,OAAO,EAAE;QAChB,EAAE,EAAE,GAAG,OAAO,EAAE;QAChB,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,aAAa;QACnB,cAAc,EAAE,WAAW;QAC3B,kBAAkB,EAAE,QAAQ;KAC7B,CAAC;IAEF,IAAI,eAAe,EAAE;QACnB,wBAAwB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAEtD,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC9C;SAAM;QACL,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAErE,IAAI,MAAM,KAAK,EAAE,EAAE;YACjB,iBAAiB,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACnD;QAED,uBAAuB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;QAEvD,gBAAgB,CAAC,UAAU,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;KAC7D;AACH,CAAC;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import setNewAttributesIfValid from './setNewAttributesIfValid';
|
|
3
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
4
4
|
function drawHandles(svgDrawingHelper, annotationUID, handleGroupUID, handlePoints, options = {}) {
|
|
5
5
|
const { color, handleRadius, width, lineWidth, fill, type, opacity } = Object.assign({
|
|
6
6
|
color: 'dodgerblue',
|
|
@@ -50,12 +50,12 @@ function drawHandles(svgDrawingHelper, annotationUID, handleGroupUID, handlePoin
|
|
|
50
50
|
}
|
|
51
51
|
const existingHandleElement = svgDrawingHelper.getSvgNode(svgNodeHash);
|
|
52
52
|
if (existingHandleElement) {
|
|
53
|
-
|
|
53
|
+
setAttributesIfNecessary(attributes, existingHandleElement);
|
|
54
54
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
55
55
|
}
|
|
56
56
|
else {
|
|
57
57
|
const newHandleElement = document.createElementNS(svgns, type);
|
|
58
|
-
|
|
58
|
+
setNewAttributesIfValid(attributes, newHandleElement);
|
|
59
59
|
svgDrawingHelper.appendNode(newHandleElement, svgNodeHash);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawHandles.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawHandles.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"drawHandles.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawHandles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import setNewAttributesIfValid from './setNewAttributesIfValid';
|
|
3
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
4
4
|
export default function drawLine(svgDrawingHelper, annotationUID, lineUID, start, end, options = {}, dataId = '') {
|
|
5
5
|
if (isNaN(start[0]) || isNaN(start[1]) || isNaN(end[0]) || isNaN(end[1])) {
|
|
6
6
|
return;
|
|
@@ -30,7 +30,7 @@ export default function drawLine(svgDrawingHelper, annotationUID, lineUID, start
|
|
|
30
30
|
'stroke-dasharray': lineDash,
|
|
31
31
|
};
|
|
32
32
|
if (existingLine) {
|
|
33
|
-
|
|
33
|
+
setAttributesIfNecessary(attributes, existingLine);
|
|
34
34
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
35
35
|
}
|
|
36
36
|
else {
|
|
@@ -38,7 +38,7 @@ export default function drawLine(svgDrawingHelper, annotationUID, lineUID, start
|
|
|
38
38
|
if (dataId !== '') {
|
|
39
39
|
newLine.setAttribute('data-id', dataId);
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
setNewAttributesIfValid(attributes, newLine);
|
|
42
42
|
svgDrawingHelper.appendNode(newLine, svgNodeHash);
|
|
43
43
|
}
|
|
44
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawLine.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawLine.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"drawLine.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawLine.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAGlE,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,gBAAkC,EAClC,aAAqB,EACrB,OAAe,EACf,KAAmB,EACnB,GAAiB,EACjB,OAAO,GAAG,EAAE,EACZ,MAAM,GAAG,EAAE;IAGX,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;QACxE,OAAO;KACR;IAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CACjE;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,GAAG;QACV,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,SAAS;KAClB,EACD,OAAO,CACR,CAAC;IAGF,MAAM,WAAW,GAAG,SAAS,IAAI,KAAK,CAAC;IAEvC,MAAM,KAAK,GAAG,4BAA4B,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9D,MAAM,eAAe,GAAG,MAAM;QAC5B,CAAC,CAAC,sBAAsB,gBAAgB,CAAC,eAAe,CAAC,EAAE,IAAI;QAC/D,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GAAG;QACjB,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE;QACjB,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE;QACjB,EAAE,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE;QACf,EAAE,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE;QACf,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,eAAe;QACtB,cAAc,EAAE,WAAW;QAC3B,kBAAkB,EAAE,QAAQ;KAC7B,CAAC;IAEF,IAAI,YAAY,EAAE;QAEhB,wBAAwB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEnD,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC9C;SAAM;QACL,MAAM,OAAO,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAExD,IAAI,MAAM,KAAK,EAAE,EAAE;YACjB,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACzC;QAED,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAE7C,gBAAgB,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;KACnD;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import setNewAttributesIfValid from './setNewAttributesIfValid';
|
|
3
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
4
4
|
export default function drawPolyline(svgDrawingHelper, annotationUID, polylineUID, points, options) {
|
|
5
5
|
if (points.length < 2) {
|
|
6
6
|
return;
|
|
@@ -32,12 +32,12 @@ export default function drawPolyline(svgDrawingHelper, annotationUID, polylineUI
|
|
|
32
32
|
'stroke-dasharray': lineDash,
|
|
33
33
|
};
|
|
34
34
|
if (existingPolyLine) {
|
|
35
|
-
|
|
35
|
+
setAttributesIfNecessary(attributes, existingPolyLine);
|
|
36
36
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
37
37
|
}
|
|
38
38
|
else {
|
|
39
39
|
const newPolyLine = document.createElementNS(svgns, 'polyline');
|
|
40
|
-
|
|
40
|
+
setNewAttributesIfValid(attributes, newPolyLine);
|
|
41
41
|
svgDrawingHelper.appendNode(newPolyLine, svgNodeHash);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawPolyline.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawPolyline.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"drawPolyline.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawPolyline.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AASlE,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,gBAAkC,EAClC,aAAqB,EACrB,WAAmB,EACnB,MAAsB,EACtB,OAMC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACrB,OAAO;KACR;IAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,MAAM,CACzD;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,GAAG;QACV,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,SAAS;QACnB,kBAAkB,EAAE,KAAK;KAC1B,EACD,OAAO,CACR,CAAC;IAGF,MAAM,WAAW,GAAG,SAAS,IAAI,KAAK,CAAC;IAEvC,MAAM,KAAK,GAAG,4BAA4B,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACrE,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAElE,IAAI,eAAe,GAAG,EAAE,CAAC;IAEzB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,eAAe,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;KAChD;IAED,IAAI,OAAO,CAAC,kBAAkB,EAAE;QAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAE7B,eAAe,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD;IAED,MAAM,UAAU,GAAG;QACjB,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,MAAM;QACZ,cAAc,EAAE,WAAW;QAC3B,kBAAkB,EAAE,QAAQ;KAC7B,CAAC;IAEF,IAAI,gBAAgB,EAAE;QAEpB,wBAAwB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAEvD,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC9C;SAAM;QACL,MAAM,WAAW,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAEhE,uBAAuB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAEjD,gBAAgB,CAAC,UAAU,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;KACvD;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
3
|
-
import
|
|
2
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
3
|
+
import setNewAttributesIfValid from './setNewAttributesIfValid';
|
|
4
4
|
export default function drawRect(svgDrawingHelper, annotationUID, rectangleUID, start, end, options = {}, dataId = '') {
|
|
5
5
|
const { color, width: _width, lineWidth, lineDash, } = Object.assign({
|
|
6
6
|
color: 'dodgerblue',
|
|
@@ -26,7 +26,7 @@ export default function drawRect(svgDrawingHelper, annotationUID, rectangleUID,
|
|
|
26
26
|
'stroke-dasharray': lineDash,
|
|
27
27
|
};
|
|
28
28
|
if (existingRect) {
|
|
29
|
-
|
|
29
|
+
setAttributesIfNecessary(attributes, existingRect);
|
|
30
30
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
31
31
|
}
|
|
32
32
|
else {
|
|
@@ -34,7 +34,7 @@ export default function drawRect(svgDrawingHelper, annotationUID, rectangleUID,
|
|
|
34
34
|
if (dataId !== '') {
|
|
35
35
|
svgRectElement.setAttribute('data-id', dataId);
|
|
36
36
|
}
|
|
37
|
-
|
|
37
|
+
setNewAttributesIfValid(attributes, svgRectElement);
|
|
38
38
|
svgDrawingHelper.appendNode(svgRectElement, svgNodeHash);
|
|
39
39
|
}
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawRect.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawRect.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"drawRect.js","sourceRoot":"","sources":["../../../src/drawingSvg/drawRect.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAIhE,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,gBAAkC,EAClC,aAAqB,EACrB,YAAoB,EACpB,KAAmB,EACnB,GAAiB,EACjB,OAAO,GAAG,EAAE,EACZ,MAAM,GAAG,EAAE;IAEX,MAAM,EACJ,KAAK,EACL,KAAK,EAAE,MAAM,EACb,SAAS,EACT,QAAQ,GACT,GAAG,MAAM,CAAC,MAAM,CACf;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,GAAG;QACV,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,SAAS;KACpB,EACD,OAAO,CACR,CAAC;IAGF,MAAM,WAAW,GAAG,SAAS,IAAI,MAAM,CAAC;IAExC,MAAM,KAAK,GAAG,4BAA4B,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAClE,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9D,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3C,MAAM,UAAU,GAAG;QACjB,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE;QACf,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE;QACf,KAAK,EAAE,GAAG,KAAK,EAAE;QACjB,MAAM,EAAE,GAAG,MAAM,EAAE;QACnB,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,aAAa;QACnB,cAAc,EAAE,WAAW;QAC3B,kBAAkB,EAAE,QAAQ;KAC7B,CAAC;IAEF,IAAI,YAAY,EAAE;QAChB,wBAAwB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEnD,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;KAC9C;SAAM;QACL,MAAM,cAAc,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAE/D,IAAI,MAAM,KAAK,EAAE,EAAE;YACjB,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SAChD;QAED,uBAAuB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAEpD,gBAAgB,CAAC,UAAU,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;KAC1D;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _getHash from './_getHash';
|
|
2
|
-
import
|
|
2
|
+
import setAttributesIfNecessary from './setAttributesIfNecessary';
|
|
3
3
|
function drawTextBox(svgDrawingHelper, annotationUID, textUID, textLines, position, options = {}) {
|
|
4
4
|
const mergedOptions = Object.assign({
|
|
5
5
|
fontFamily: 'Helvetica, Arial, sans-serif',
|
|
@@ -45,8 +45,8 @@ function _drawTextGroup(svgDrawingHelper, annotationUID, textUID, textLines = ['
|
|
|
45
45
|
const textGroupAttributes = {
|
|
46
46
|
transform: `translate(${x} ${y})`,
|
|
47
47
|
};
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
setAttributesIfNecessary(textAttributes, textElement);
|
|
49
|
+
setAttributesIfNecessary(textGroupAttributes, existingTextGroup);
|
|
50
50
|
textGroupBoundingBox = _drawTextBackground(existingTextGroup, background);
|
|
51
51
|
svgDrawingHelper.setNodeTouched(svgNodeHash);
|
|
52
52
|
}
|
|
@@ -114,7 +114,7 @@ function _drawTextBackground(group, color) {
|
|
|
114
114
|
height: `${bBox.height}`,
|
|
115
115
|
fill: color,
|
|
116
116
|
};
|
|
117
|
-
|
|
117
|
+
setAttributesIfNecessary(attributes, element);
|
|
118
118
|
return bBox;
|
|
119
119
|
}
|
|
120
120
|
export default drawTextBox;
|