@cornerstonejs/tools 2.0.0-beta.20 → 2.0.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (485) hide show
  1. package/dist/esm/cursors/SVGCursorDescriptor.d.ts +1 -1
  2. package/dist/esm/cursors/SVGCursorDescriptor.js +7 -0
  3. package/dist/esm/cursors/SVGMouseCursor.d.ts +1 -1
  4. package/dist/esm/drawingSvg/draw.d.ts +2 -1
  5. package/dist/esm/drawingSvg/drawArrow.d.ts +1 -1
  6. package/dist/esm/drawingSvg/drawCircle.d.ts +1 -1
  7. package/dist/esm/drawingSvg/drawEllipse.d.ts +1 -1
  8. package/dist/esm/drawingSvg/drawEllipse.js +1 -0
  9. package/dist/esm/drawingSvg/drawEllipseByCoordinates.d.ts +1 -1
  10. package/dist/esm/drawingSvg/drawHandle.d.ts +1 -1
  11. package/dist/esm/drawingSvg/drawHandles.d.ts +1 -1
  12. package/dist/esm/drawingSvg/drawHeight.d.ts +3 -0
  13. package/dist/esm/drawingSvg/drawHeight.js +42 -0
  14. package/dist/esm/drawingSvg/drawLine.d.ts +1 -1
  15. package/dist/esm/drawingSvg/drawLink.d.ts +1 -1
  16. package/dist/esm/drawingSvg/drawLinkedTextBox.d.ts +1 -1
  17. package/dist/esm/drawingSvg/drawPath.d.ts +1 -1
  18. package/dist/esm/drawingSvg/drawPolyline.d.ts +1 -1
  19. package/dist/esm/drawingSvg/drawRect.d.ts +1 -1
  20. package/dist/esm/drawingSvg/drawRect.js +1 -0
  21. package/dist/esm/drawingSvg/drawRectByCoordinates.d.ts +1 -1
  22. package/dist/esm/drawingSvg/drawRedactionRect.d.ts +3 -1
  23. package/dist/esm/drawingSvg/drawTextBox.d.ts +1 -1
  24. package/dist/esm/drawingSvg/getSvgDrawingHelper.d.ts +1 -1
  25. package/dist/esm/drawingSvg/getSvgDrawingHelper.js +1 -1
  26. package/dist/esm/drawingSvg/index.d.ts +2 -1
  27. package/dist/esm/drawingSvg/index.js +2 -1
  28. package/dist/esm/enums/ToolBindings.d.ts +3 -1
  29. package/dist/esm/enums/ToolBindings.js +2 -0
  30. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.d.ts +1 -1
  31. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.d.ts +1 -1
  32. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.d.ts +1 -1
  33. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownActivate.d.ts +1 -1
  34. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.d.ts +1 -1
  35. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDrag.d.ts +1 -1
  36. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseMove.d.ts +1 -1
  37. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.d.ts +2 -1
  38. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.js +15 -2
  39. package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.d.ts +1 -1
  40. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.d.ts +1 -1
  41. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js +3 -4
  42. package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.d.ts +1 -1
  43. package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.js +1 -1
  44. package/dist/esm/eventDispatchers/shared/getToolsWithActionsForKeyboardEvents.d.ts +2 -2
  45. package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.d.ts +4 -3
  46. package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.d.ts +3 -3
  47. package/dist/esm/eventDispatchers/shared/getToolsWithModesForTouchEvent.d.ts +2 -2
  48. package/dist/esm/eventDispatchers/touchEventHandlers/touchDrag.d.ts +1 -1
  49. package/dist/esm/eventDispatchers/touchEventHandlers/touchStart.d.ts +1 -1
  50. package/dist/esm/eventDispatchers/touchEventHandlers/touchStartActivate.d.ts +1 -1
  51. package/dist/esm/eventListeners/annotations/annotationCompletedListener.d.ts +1 -1
  52. package/dist/esm/eventListeners/annotations/annotationRemovedListener.d.ts +1 -1
  53. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts +3 -3
  54. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +1 -1
  55. package/dist/esm/eventListeners/mouse/getMouseEventPoints.d.ts +1 -1
  56. package/dist/esm/eventListeners/mouse/getMouseEventPoints.js +4 -1
  57. package/dist/esm/eventListeners/mouse/mouseDownListener.js +9 -1
  58. package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +6 -6
  59. package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.d.ts +1 -1
  60. package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.js +3 -3
  61. package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.d.ts +1 -1
  62. package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +2 -2
  63. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.d.ts +1 -1
  64. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.js +3 -2
  65. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.d.ts +1 -1
  66. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.js +5 -5
  67. package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.d.ts +1 -1
  68. package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js +4 -2
  69. package/dist/esm/eventListeners/touch/getTouchEventPoints.d.ts +1 -1
  70. package/dist/esm/index.d.ts +2 -2
  71. package/dist/esm/index.js +2 -2
  72. package/dist/esm/stateManagement/annotation/AnnotationRenderingEngine.d.ts +20 -0
  73. package/dist/esm/stateManagement/annotation/AnnotationRenderingEngine.js +112 -0
  74. package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.d.ts +3 -3
  75. package/dist/esm/stateManagement/annotation/annotationLocking.d.ts +1 -1
  76. package/dist/esm/stateManagement/annotation/annotationState.d.ts +2 -2
  77. package/dist/esm/stateManagement/annotation/annotationVisibility.d.ts +1 -1
  78. package/dist/esm/stateManagement/annotation/config/ToolStyle.d.ts +1 -1
  79. package/dist/esm/stateManagement/annotation/config/getFont.d.ts +2 -2
  80. package/dist/esm/stateManagement/annotation/config/getState.d.ts +1 -1
  81. package/dist/esm/stateManagement/annotation/config/helpers.d.ts +2 -2
  82. package/dist/esm/stateManagement/annotation/helpers/state.d.ts +2 -2
  83. package/dist/esm/stateManagement/annotation/utilities/defineProperties.d.ts +1 -1
  84. package/dist/esm/stateManagement/index.d.ts +3 -3
  85. package/dist/esm/stateManagement/index.js +2 -2
  86. package/dist/esm/{tools/displayTools → stateManagement/segmentation}/SegmentationRenderingEngine.d.ts +3 -3
  87. package/dist/esm/{tools/displayTools → stateManagement/segmentation}/SegmentationRenderingEngine.js +14 -17
  88. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.d.ts +12 -12
  89. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js +27 -19
  90. package/dist/esm/stateManagement/segmentation/activeSegmentation.d.ts +5 -4
  91. package/dist/esm/stateManagement/segmentation/activeSegmentation.js +12 -5
  92. package/dist/esm/stateManagement/segmentation/addRepresentationData.d.ts +3 -3
  93. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentation.d.ts +3 -0
  94. package/dist/esm/stateManagement/segmentation/{addRepresentation.js → addSegmentationRepresentation.js} +6 -6
  95. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.d.ts +3 -0
  96. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.js +9 -0
  97. package/dist/esm/stateManagement/segmentation/addSegmentations.d.ts +1 -1
  98. package/dist/esm/stateManagement/segmentation/config/index.d.ts +2 -2
  99. package/dist/esm/stateManagement/segmentation/config/index.js +2 -2
  100. package/dist/esm/stateManagement/segmentation/config/segmentationColor.js +2 -2
  101. package/dist/esm/stateManagement/segmentation/config/segmentationConfig.d.ts +5 -5
  102. package/dist/esm/stateManagement/segmentation/config/segmentationConfig.js +5 -5
  103. package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.d.ts +5 -5
  104. package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.js +12 -12
  105. package/dist/esm/stateManagement/segmentation/convertStackToVolumeSegmentation.js +3 -7
  106. package/dist/esm/stateManagement/segmentation/convertVolumeToStackSegmentation.js +8 -53
  107. package/dist/esm/stateManagement/segmentation/helpers/clipAndCacheSurfacesForViewport.d.ts +1 -1
  108. package/dist/esm/stateManagement/segmentation/helpers/getSegmentationRepresentationRenderingConfig.d.ts +2 -0
  109. package/dist/esm/stateManagement/segmentation/helpers/{getRepresentationRenderingConfig.js → getSegmentationRepresentationRenderingConfig.js} +2 -2
  110. package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.d.ts +1 -1
  111. package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.d.ts +1 -1
  112. package/dist/esm/stateManagement/segmentation/index.d.ts +3 -3
  113. package/dist/esm/stateManagement/segmentation/index.js +3 -3
  114. package/dist/esm/stateManagement/segmentation/polySeg/Contour/computeAndAddContourRepresentation.d.ts +1 -1
  115. package/dist/esm/stateManagement/segmentation/polySeg/Contour/contourComputationStrategies.d.ts +2 -2
  116. package/dist/esm/stateManagement/segmentation/polySeg/Contour/contourComputationStrategies.js +3 -3
  117. package/dist/esm/stateManagement/segmentation/polySeg/Contour/utils/createAndAddContourSegmentationsFromClippedSurfaces.d.ts +1 -1
  118. package/dist/esm/stateManagement/segmentation/polySeg/Contour/utils/extractContourData.d.ts +2 -2
  119. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/computeAndAddLabelmapRepresentation.d.ts +1 -1
  120. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertContourToLabelmap.d.ts +1 -1
  121. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertContourToLabelmap.js +12 -21
  122. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertSurfaceToLabelmap.d.ts +2 -2
  123. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/convertSurfaceToLabelmap.js +2 -6
  124. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.d.ts +2 -2
  125. package/dist/esm/stateManagement/segmentation/polySeg/Labelmap/labelmapComputationStrategies.js +8 -13
  126. package/dist/esm/stateManagement/segmentation/polySeg/Surface/computeAndAddSurfaceRepresentation.d.ts +1 -1
  127. package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertContourToSurface.d.ts +2 -2
  128. package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertContourToSurface.js +2 -1
  129. package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertLabelmapToSurface.d.ts +2 -2
  130. package/dist/esm/stateManagement/segmentation/polySeg/Surface/convertLabelmapToSurface.js +2 -2
  131. package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.d.ts +2 -2
  132. package/dist/esm/stateManagement/segmentation/polySeg/Surface/createAndCacheSurfacesFromRaw.js +2 -2
  133. package/dist/esm/stateManagement/segmentation/polySeg/Surface/surfaceComputationStrategies.d.ts +1 -1
  134. package/dist/esm/stateManagement/segmentation/polySeg/Surface/updateSurfaceData.js +4 -3
  135. package/dist/esm/stateManagement/segmentation/polySeg/canComputeRequestedRepresentation.js +2 -2
  136. package/dist/esm/stateManagement/segmentation/polySeg/computeAndAddRepresentation.d.ts +1 -1
  137. package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.d.ts +2 -0
  138. package/dist/esm/stateManagement/segmentation/{removeRepresentationsFromViewport.js → removeSegmentationRepresentations.js} +9 -6
  139. package/dist/esm/stateManagement/segmentation/segmentIndex.js +2 -2
  140. package/dist/esm/stateManagement/segmentation/segmentLocking.d.ts +2 -2
  141. package/dist/esm/stateManagement/segmentation/segmentLocking.js +2 -2
  142. package/dist/esm/stateManagement/segmentation/segmentationState.d.ts +16 -16
  143. package/dist/esm/stateManagement/segmentation/segmentationState.js +30 -30
  144. package/dist/esm/store/SynchronizerManager/Synchronizer.d.ts +7 -3
  145. package/dist/esm/store/SynchronizerManager/Synchronizer.js +2 -1
  146. package/dist/esm/store/SynchronizerManager/createSynchronizer.d.ts +3 -3
  147. package/dist/esm/store/SynchronizerManager/createSynchronizer.js +1 -1
  148. package/dist/esm/store/SynchronizerManager/getAllSynchronizers.d.ts +1 -1
  149. package/dist/esm/store/SynchronizerManager/getSynchronizer.d.ts +1 -1
  150. package/dist/esm/store/SynchronizerManager/getSynchronizersForViewport.d.ts +1 -1
  151. package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +3 -3
  152. package/dist/esm/store/ToolGroupManager/ToolGroup.js +5 -2
  153. package/dist/esm/store/ToolGroupManager/createToolGroup.d.ts +1 -1
  154. package/dist/esm/store/ToolGroupManager/destroyToolGroup.js +1 -0
  155. package/dist/esm/store/ToolGroupManager/getAllToolGroups.d.ts +1 -1
  156. package/dist/esm/store/ToolGroupManager/getToolGroup.d.ts +1 -1
  157. package/dist/esm/store/ToolGroupManager/getToolGroupForViewport.d.ts +1 -1
  158. package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.d.ts +1 -1
  159. package/dist/esm/store/addEnabledElement.d.ts +1 -1
  160. package/dist/esm/store/addEnabledElement.js +1 -1
  161. package/dist/esm/store/addTool.js +0 -3
  162. package/dist/esm/store/filterMoveableAnnotationTools.d.ts +1 -1
  163. package/dist/esm/store/filterToolsWithAnnotationsForElement.d.ts +1 -1
  164. package/dist/esm/store/filterToolsWithMoveableHandles.d.ts +1 -1
  165. package/dist/esm/store/removeEnabledElement.d.ts +1 -1
  166. package/dist/esm/store/removeEnabledElement.js +1 -1
  167. package/dist/esm/store/state.d.ts +4 -3
  168. package/dist/esm/store/state.js +1 -1
  169. package/dist/esm/synchronizers/callbacks/areViewportsCoplanar .d.ts +1 -1
  170. package/dist/esm/synchronizers/callbacks/cameraSyncCallback.d.ts +2 -2
  171. package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.d.ts +2 -2
  172. package/dist/esm/synchronizers/callbacks/presentationViewSyncCallback.d.ts +1 -1
  173. package/dist/esm/synchronizers/callbacks/slabThicknessSyncCallback.d.ts +1 -1
  174. package/dist/esm/synchronizers/callbacks/voiSyncCallback.d.ts +5 -2
  175. package/dist/esm/synchronizers/callbacks/zoomPanSyncCallback.d.ts +2 -2
  176. package/dist/esm/synchronizers/synchronizers/createCameraPositionSynchronizer.d.ts +1 -1
  177. package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.d.ts +1 -1
  178. package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.d.ts +2 -2
  179. package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.js +1 -1
  180. package/dist/esm/synchronizers/synchronizers/createSlabThicknessSynchronizer.d.ts +1 -1
  181. package/dist/esm/synchronizers/synchronizers/createVOISynchronizer.d.ts +1 -1
  182. package/dist/esm/synchronizers/synchronizers/createZoomPanSynchronizer.d.ts +1 -1
  183. package/dist/esm/tools/AdvancedMagnifyTool.d.ts +4 -6
  184. package/dist/esm/tools/AdvancedMagnifyViewport.js +1 -1
  185. package/dist/esm/tools/AdvancedMagnifyViewportManager.d.ts +3 -2
  186. package/dist/esm/tools/AdvancedMagnifyViewportManager.js +1 -1
  187. package/dist/esm/tools/AnnotationEraserTool.d.ts +1 -1
  188. package/dist/esm/tools/CrosshairsTool.d.ts +5 -5
  189. package/dist/esm/tools/CrosshairsTool.js +4 -3
  190. package/dist/esm/tools/MIPJumpToClickTool.d.ts +1 -2
  191. package/dist/esm/tools/MIPJumpToClickTool.js +2 -3
  192. package/dist/esm/tools/MagnifyTool.d.ts +2 -3
  193. package/dist/esm/tools/OrientationMarkerTool.d.ts +41 -58
  194. package/dist/esm/tools/OrientationMarkerTool.js +8 -7
  195. package/dist/esm/tools/OverlayGridTool.d.ts +2 -4
  196. package/dist/esm/tools/OverlayGridTool.js +1 -1
  197. package/dist/esm/tools/PanTool.d.ts +1 -1
  198. package/dist/esm/tools/PanTool.js +5 -0
  199. package/dist/esm/tools/PlanarRotateTool.d.ts +3 -1
  200. package/dist/esm/tools/PlanarRotateTool.js +18 -4
  201. package/dist/esm/tools/ReferenceCursors.d.ts +2 -5
  202. package/dist/esm/tools/ReferenceLinesTool.d.ts +4 -6
  203. package/dist/esm/tools/ReferenceLinesTool.js +1 -1
  204. package/dist/esm/tools/ScaleOverlayTool.d.ts +7 -9
  205. package/dist/esm/tools/ScaleOverlayTool.js +1 -2
  206. package/dist/esm/tools/SculptorTool/CircleSculptCursor.d.ts +4 -4
  207. package/dist/esm/tools/SculptorTool.d.ts +1 -1
  208. package/dist/esm/tools/SegmentationIntersectionTool.d.ts +2 -2
  209. package/dist/esm/tools/StackScrollTool.d.ts +2 -1
  210. package/dist/esm/tools/StackScrollTool.js +17 -3
  211. package/dist/esm/tools/StackScrollToolMouseWheelTool.d.ts +1 -2
  212. package/dist/esm/tools/StackScrollToolMouseWheelTool.js +1 -2
  213. package/dist/esm/tools/TrackballRotateTool.d.ts +1 -1
  214. package/dist/esm/tools/TrackballRotateTool.js +4 -0
  215. package/dist/esm/tools/VolumeRotateMouseWheelTool.d.ts +2 -3
  216. package/dist/esm/tools/WindowLevelRegionTool.d.ts +3 -3
  217. package/dist/esm/tools/WindowLevelRegionTool.js +1 -3
  218. package/dist/esm/tools/WindowLevelTool.d.ts +1 -1
  219. package/dist/esm/tools/WindowLevelTool.js +12 -7
  220. package/dist/esm/tools/ZoomTool.d.ts +2 -2
  221. package/dist/esm/tools/ZoomTool.js +2 -2
  222. package/dist/esm/tools/annotation/AngleTool.d.ts +5 -7
  223. package/dist/esm/tools/annotation/ArrowAnnotateTool.d.ts +5 -7
  224. package/dist/esm/tools/annotation/BidirectionalTool.d.ts +5 -7
  225. package/dist/esm/tools/annotation/CircleROITool.d.ts +5 -7
  226. package/dist/esm/tools/annotation/CircleROITool.js +8 -5
  227. package/dist/esm/tools/annotation/CobbAngleTool.d.ts +5 -7
  228. package/dist/esm/tools/annotation/DragProbeTool.d.ts +3 -5
  229. package/dist/esm/tools/annotation/DragProbeTool.js +0 -5
  230. package/dist/esm/tools/annotation/EllipticalROITool.d.ts +5 -7
  231. package/dist/esm/tools/annotation/EllipticalROITool.js +8 -3
  232. package/dist/esm/tools/annotation/HeightTool.d.ts +36 -0
  233. package/dist/esm/tools/annotation/HeightTool.js +435 -0
  234. package/dist/esm/tools/annotation/KeyImageTool.d.ts +4 -6
  235. package/dist/esm/tools/annotation/LengthTool.d.ts +5 -7
  236. package/dist/esm/tools/annotation/LengthTool.js +7 -5
  237. package/dist/esm/tools/annotation/LivewireContourTool.d.ts +3 -4
  238. package/dist/esm/tools/annotation/LivewireContourTool.js +2 -1
  239. package/dist/esm/tools/annotation/PlanarFreehandROITool.d.ts +21 -4
  240. package/dist/esm/tools/annotation/PlanarFreehandROITool.js +155 -113
  241. package/dist/esm/tools/annotation/ProbeTool.d.ts +4 -6
  242. package/dist/esm/tools/annotation/ProbeTool.js +14 -29
  243. package/dist/esm/tools/annotation/RectangleROITool.d.ts +5 -5
  244. package/dist/esm/tools/annotation/RectangleROITool.js +7 -3
  245. package/dist/esm/tools/annotation/SplineContourSegmentationTool.d.ts +1 -1
  246. package/dist/esm/tools/annotation/SplineROITool.d.ts +1 -3
  247. package/dist/esm/tools/annotation/SplineROITool.js +2 -2
  248. package/dist/esm/tools/annotation/UltrasoundDirectionalTool.d.ts +5 -7
  249. package/dist/esm/tools/annotation/VideoRedactionTool.d.ts +4 -5
  250. package/dist/esm/tools/annotation/planarFreehandROITool/findOpenUShapedContourVectorToPeak.d.ts +1 -1
  251. package/dist/esm/tools/annotation/splines/CardinalSpline.d.ts +1 -1
  252. package/dist/esm/tools/annotation/splines/CubicSpline.d.ts +1 -1
  253. package/dist/esm/tools/annotation/splines/QuadraticSpline.d.ts +1 -1
  254. package/dist/esm/tools/annotation/splines/Spline.d.ts +1 -1
  255. package/dist/esm/tools/base/AnnotationDisplayTool.d.ts +3 -3
  256. package/dist/esm/tools/base/AnnotationDisplayTool.js +3 -9
  257. package/dist/esm/tools/base/AnnotationTool.d.ts +3 -14
  258. package/dist/esm/tools/base/BaseTool.d.ts +5 -5
  259. package/dist/esm/tools/base/BaseTool.js +1 -1
  260. package/dist/esm/tools/base/ContourBaseTool.d.ts +1 -1
  261. package/dist/esm/tools/base/ContourBaseTool.js +3 -3
  262. package/dist/esm/tools/base/ContourSegmentationBaseTool.js +10 -10
  263. package/dist/esm/tools/displayTools/Contour/contourConfig.d.ts +1 -1
  264. package/dist/esm/tools/displayTools/Contour/contourDisplay.d.ts +2 -2
  265. package/dist/esm/tools/displayTools/Contour/contourDisplay.js +2 -1
  266. package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.d.ts +2 -2
  267. package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.js +4 -4
  268. package/dist/esm/tools/displayTools/Contour/contourHandler/utils.d.ts +1 -1
  269. package/dist/esm/tools/displayTools/Contour/removeContourFromElement.js +2 -2
  270. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +1 -1
  271. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +3 -3
  272. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.d.ts +1 -1
  273. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.d.ts +5 -5
  274. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +10 -8
  275. package/dist/esm/tools/displayTools/Labelmap/validateLabelmap.d.ts +2 -2
  276. package/dist/esm/tools/displayTools/Surface/surfaceConfig.d.ts +1 -1
  277. package/dist/esm/tools/displayTools/Surface/surfaceDisplay.d.ts +2 -2
  278. package/dist/esm/tools/distancePointToContour.d.ts +1 -1
  279. package/dist/esm/tools/index.d.ts +2 -1
  280. package/dist/esm/tools/index.js +2 -1
  281. package/dist/esm/tools/segmentation/BrushTool.js +5 -5
  282. package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.d.ts +20 -15
  283. package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js +199 -67
  284. package/dist/esm/tools/segmentation/CircleScissorsTool.d.ts +3 -3
  285. package/dist/esm/tools/segmentation/CircleScissorsTool.js +10 -3
  286. package/dist/esm/tools/segmentation/PaintFillTool.d.ts +1 -1
  287. package/dist/esm/tools/segmentation/PaintFillTool.js +15 -14
  288. package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts +20 -10
  289. package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js +174 -55
  290. package/dist/esm/tools/segmentation/RectangleROIThresholdTool.d.ts +3 -3
  291. package/dist/esm/tools/segmentation/RectangleScissorsTool.d.ts +4 -3
  292. package/dist/esm/tools/segmentation/RectangleScissorsTool.js +8 -5
  293. package/dist/esm/tools/segmentation/SegmentSelectTool.d.ts +2 -2
  294. package/dist/esm/tools/segmentation/SegmentSelectTool.js +2 -2
  295. package/dist/esm/tools/segmentation/SphereScissorsTool.d.ts +3 -2
  296. package/dist/esm/tools/segmentation/SphereScissorsTool.js +12 -4
  297. package/dist/esm/tools/segmentation/strategies/BrushStrategy.d.ts +4 -5
  298. package/dist/esm/tools/segmentation/strategies/BrushStrategy.js +3 -1
  299. package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.js +6 -3
  300. package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js +1 -1
  301. package/dist/esm/tools/segmentation/strategies/compositions/islandRemoval.js +1 -1
  302. package/dist/esm/tools/segmentation/strategies/compositions/preview.js +2 -2
  303. package/dist/esm/tools/segmentation/strategies/compositions/regionFill.js +6 -3
  304. package/dist/esm/tools/segmentation/strategies/compositions/setValue.js +1 -1
  305. package/dist/esm/tools/segmentation/strategies/eraseRectangle.d.ts +1 -1
  306. package/dist/esm/tools/segmentation/strategies/fillCircle.js +1 -1
  307. package/dist/esm/tools/segmentation/strategies/fillRectangle.d.ts +1 -1
  308. package/dist/esm/tools/segmentation/strategies/fillRectangle.js +10 -7
  309. package/dist/esm/tools/segmentation/strategies/fillSphere.js +1 -1
  310. package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.d.ts +1 -1
  311. package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js +7 -24
  312. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +9 -2
  313. package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.d.ts +3 -3
  314. package/dist/esm/tools/segmentation/strategies/utils/stackVolumeCheck.js +0 -3
  315. package/dist/esm/types/AnnotationGroupSelector.d.ts +1 -1
  316. package/dist/esm/types/AnnotationRenderContext.d.ts +3 -2
  317. package/dist/esm/types/AnnotationStyle.d.ts +2 -2
  318. package/dist/esm/types/AnnotationTypes.d.ts +3 -3
  319. package/dist/esm/types/BoundsIJK.d.ts +1 -1
  320. package/dist/esm/types/CINETypes.d.ts +1 -0
  321. package/dist/esm/types/CalculatorTypes.d.ts +1 -1
  322. package/dist/esm/types/CardinalSplineProps.d.ts +1 -1
  323. package/dist/esm/types/ClosestPoint.d.ts +1 -1
  324. package/dist/esm/types/ContourAnnotation.d.ts +1 -1
  325. package/dist/esm/types/ContourSegmentationAnnotation.d.ts +2 -2
  326. package/dist/esm/types/ControlPointInfo.d.ts +1 -1
  327. package/dist/esm/types/EventTypes.d.ts +13 -12
  328. package/dist/esm/types/FloodFillTypes.d.ts +2 -2
  329. package/dist/esm/types/IAnnotationManager.d.ts +3 -3
  330. package/dist/esm/types/IDistance.d.ts +1 -1
  331. package/dist/esm/types/IPoints.d.ts +2 -2
  332. package/dist/esm/types/ISetToolModeOptions.d.ts +2 -2
  333. package/dist/esm/types/ISpline.d.ts +1 -1
  334. package/dist/esm/types/ISynchronizerEventHandler.d.ts +3 -3
  335. package/dist/esm/types/IToolClassReference.d.ts +3 -3
  336. package/dist/esm/types/IToolGroup.d.ts +8 -8
  337. package/dist/esm/types/ITouchPoints.d.ts +2 -2
  338. package/dist/esm/types/InteractionTypes.d.ts +1 -1
  339. package/dist/esm/types/InternalToolTypes.d.ts +4 -4
  340. package/dist/esm/types/InterpolationTypes.d.ts +3 -3
  341. package/dist/esm/types/JumpToSliceOptions.d.ts +1 -1
  342. package/dist/esm/types/LabelmapToolOperationData.d.ts +3 -2
  343. package/dist/esm/types/PlanarBoundingBox.d.ts +1 -1
  344. package/dist/esm/types/SVGDrawingHelper.d.ts +1 -1
  345. package/dist/esm/types/ScrollOptions.d.ts +1 -1
  346. package/dist/esm/types/SegmentationStateTypes.d.ts +7 -6
  347. package/dist/esm/types/SplineCurveSegment.d.ts +1 -1
  348. package/dist/esm/types/SplineLineSegment.d.ts +1 -1
  349. package/dist/esm/types/ToolAction.d.ts +1 -1
  350. package/dist/esm/types/ToolHandle.d.ts +1 -1
  351. package/dist/esm/types/ToolProps.d.ts +1 -1
  352. package/dist/esm/types/ToolSpecificAnnotationTypes.d.ts +34 -12
  353. package/dist/esm/types/index.d.ts +2 -2
  354. package/dist/esm/utilities/annotationFrameRange.d.ts +1 -1
  355. package/dist/esm/utilities/annotationHydration.d.ts +3 -2
  356. package/dist/esm/utilities/cine/playClip.d.ts +6 -2
  357. package/dist/esm/utilities/cine/playClip.js +53 -6
  358. package/dist/esm/utilities/cine/state.d.ts +1 -1
  359. package/dist/esm/utilities/contourSegmentation/addContourSegmentationAnnotation.d.ts +1 -1
  360. package/dist/esm/utilities/contourSegmentation/areSameSegment.d.ts +1 -1
  361. package/dist/esm/utilities/contourSegmentation/isContourSegmentationAnnotation.d.ts +2 -2
  362. package/dist/esm/utilities/contourSegmentation/removeContourSegmentationAnnotation.d.ts +1 -1
  363. package/dist/esm/utilities/contours/AnnotationToPointData.d.ts +1 -1
  364. package/dist/esm/utilities/contours/areCoplanarContours.d.ts +1 -1
  365. package/dist/esm/utilities/contours/findHandlePolylineIndex.d.ts +1 -1
  366. package/dist/esm/utilities/contours/interpolation/createPolylineToolData.d.ts +1 -1
  367. package/dist/esm/utilities/contours/interpolation/getInterpolationData.d.ts +1 -1
  368. package/dist/esm/utilities/contours/interpolation/interpolate.d.ts +1 -1
  369. package/dist/esm/utilities/contours/reverseIfAntiClockwise.d.ts +1 -1
  370. package/dist/esm/utilities/contours/updateContourPolyline.d.ts +1 -1
  371. package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.d.ts +3 -2
  372. package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.js +31 -23
  373. package/dist/esm/utilities/dynamicVolume/getDataInTime.d.ts +1 -1
  374. package/dist/esm/utilities/dynamicVolume/getDataInTime.js +14 -9
  375. package/dist/esm/utilities/getAnnotationNearPoint.d.ts +1 -1
  376. package/dist/esm/utilities/getCalibratedUnits.d.ts +0 -6
  377. package/dist/esm/utilities/getCalibratedUnits.js +13 -4
  378. package/dist/esm/utilities/getPixelValueUnits.d.ts +2 -1
  379. package/dist/esm/utilities/getPixelValueUnits.js +1 -0
  380. package/dist/esm/utilities/getSphereBoundsInfo.d.ts +1 -1
  381. package/dist/esm/utilities/getToolsWithModesForElement.d.ts +1 -1
  382. package/dist/esm/utilities/getVOIMultipliers.d.ts +1 -1
  383. package/dist/esm/utilities/index.d.ts +1 -3
  384. package/dist/esm/utilities/index.js +1 -3
  385. package/dist/esm/utilities/livewire/LiveWirePath.d.ts +1 -1
  386. package/dist/esm/utilities/livewire/LivewireScissors.d.ts +1 -1
  387. package/dist/esm/utilities/math/aabb/distanceToPoint.d.ts +1 -1
  388. package/dist/esm/utilities/math/aabb/distanceToPointSquared.d.ts +1 -1
  389. package/dist/esm/utilities/math/aabb/intersectAABB.d.ts +1 -1
  390. package/dist/esm/utilities/math/basic/BasicStatsCalculator.d.ts +2 -2
  391. package/dist/esm/utilities/math/basic/BasicStatsCalculator.js +1 -1
  392. package/dist/esm/utilities/math/basic/Calculator.d.ts +1 -1
  393. package/dist/esm/utilities/math/circle/getCanvasCircleCorners.d.ts +1 -1
  394. package/dist/esm/utilities/math/circle/getCanvasCircleRadius.d.ts +1 -1
  395. package/dist/esm/utilities/math/line/distanceToPointSquared.d.ts +1 -1
  396. package/dist/esm/utilities/math/midPoint.d.ts +1 -1
  397. package/dist/esm/utilities/math/point/mirror.d.ts +1 -1
  398. package/dist/esm/utilities/math/polyline/addCanvasPointsToArray.d.ts +1 -1
  399. package/dist/esm/utilities/math/polyline/combinePolyline.d.ts +1 -1
  400. package/dist/esm/utilities/math/polyline/getAABB.d.ts +1 -1
  401. package/dist/esm/utilities/math/polyline/getLinesIntersection.d.ts +1 -1
  402. package/dist/esm/utilities/math/polyline/getNormal2.d.ts +1 -1
  403. package/dist/esm/utilities/math/polyline/getNormal3.d.ts +1 -1
  404. package/dist/esm/utilities/math/polyline/intersectPolyline.d.ts +1 -1
  405. package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts +2 -2
  406. package/dist/esm/utilities/math/sphere/pointInSphere.d.ts +1 -1
  407. package/dist/esm/utilities/orientation/getOrientationStringLPS.d.ts +1 -1
  408. package/dist/esm/utilities/planar/filterAnnotationsForDisplay.d.ts +1 -1
  409. package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.d.ts +3 -0
  410. package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.js +26 -0
  411. package/dist/esm/utilities/planar/filterAnnotationsWithinSlice.d.ts +1 -1
  412. package/dist/esm/utilities/planar/index.d.ts +3 -1
  413. package/dist/esm/utilities/planar/index.js +3 -1
  414. package/dist/esm/utilities/planarFreehandROITool/interpolation/algorithms/bspline.d.ts +1 -1
  415. package/dist/esm/utilities/planarFreehandROITool/interpolation/interpolateSegmentPoints.d.ts +1 -1
  416. package/dist/esm/utilities/planarFreehandROITool/smoothAnnotation.d.ts +2 -2
  417. package/dist/esm/utilities/planarFreehandROITool/smoothPoints.d.ts +11 -3
  418. package/dist/esm/utilities/polyData/utils.d.ts +1 -1
  419. package/dist/esm/utilities/scroll.d.ts +4 -3
  420. package/dist/esm/utilities/scroll.js +3 -10
  421. package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.d.ts +1 -1
  422. package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.d.ts +2 -11
  423. package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js +1 -1
  424. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.d.ts +1 -1
  425. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.js +7 -7
  426. package/dist/esm/utilities/segmentation/floodFill.d.ts +1 -1
  427. package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.d.ts +1 -1
  428. package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.js +8 -5
  429. package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.d.ts +1 -1
  430. package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.js +7 -4
  431. package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.js +4 -5
  432. package/dist/esm/utilities/segmentation/index.d.ts +2 -2
  433. package/dist/esm/utilities/segmentation/index.js +2 -2
  434. package/dist/esm/utilities/segmentation/isValidRepresentationConfig.d.ts +1 -1
  435. package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.d.ts +1 -1
  436. package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.js +3 -2
  437. package/dist/esm/utilities/segmentation/segmentContourAction.d.ts +1 -1
  438. package/dist/esm/utilities/segmentation/segmentContourAction.js +4 -4
  439. package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.d.ts +2 -2
  440. package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.js +24 -17
  441. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.d.ts +3 -3
  442. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +21 -12
  443. package/dist/esm/utilities/segmentation/triggerSegmentationRender.d.ts +3 -3
  444. package/dist/esm/utilities/segmentation/triggerSegmentationRender.js +7 -5
  445. package/dist/esm/utilities/segmentation/utilities.d.ts +12 -2
  446. package/dist/esm/utilities/segmentation/utilities.js +5 -6
  447. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +30 -25
  448. package/dist/esm/utilities/stackPrefetch/stackPrefetch.js +3 -8
  449. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +2 -3
  450. package/dist/esm/utilities/stackPrefetch/state.d.ts +20 -1
  451. package/dist/esm/utilities/touch/index.d.ts +1 -1
  452. package/dist/esm/utilities/triggerAnnotationRender.d.ts +0 -20
  453. package/dist/esm/utilities/triggerAnnotationRender.js +1 -112
  454. package/dist/esm/utilities/viewport/isViewportPreScaled.d.ts +1 -1
  455. package/dist/esm/utilities/viewport/isViewportPreScaled.js +2 -5
  456. package/dist/esm/utilities/viewport/jumpToSlice.d.ts +1 -1
  457. package/dist/esm/utilities/viewport/jumpToSlice.js +4 -6
  458. package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.d.ts +2 -2
  459. package/dist/esm/utilities/voi/colorbar/ViewportColorbar.d.ts +1 -1
  460. package/dist/esm/utilities/voi/colorbar/ViewportColorbar.js +1 -1
  461. package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.d.ts +1 -1
  462. package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.d.ts +1 -1
  463. package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.d.ts +3 -3
  464. package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.d.ts +8 -0
  465. package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.js +4 -10
  466. package/dist/esm/widgets/types/index.d.ts +2 -2
  467. package/dist/esm/workers/polySegConverters.js +65 -32
  468. package/dist/umd/78.index.js +1 -1
  469. package/dist/umd/78.index.js.map +1 -1
  470. package/dist/umd/985.index.js +1 -1
  471. package/dist/umd/985.index.js.map +1 -1
  472. package/dist/umd/index.js +1 -1
  473. package/dist/umd/index.js.map +1 -1
  474. package/package.json +5 -7
  475. package/dist/esm/stateManagement/segmentation/addRepresentation.d.ts +0 -3
  476. package/dist/esm/stateManagement/segmentation/addRepresentations.d.ts +0 -3
  477. package/dist/esm/stateManagement/segmentation/addRepresentations.js +0 -9
  478. package/dist/esm/stateManagement/segmentation/helpers/getRepresentationRenderingConfig.d.ts +0 -2
  479. package/dist/esm/stateManagement/segmentation/removeRepresentationsFromViewport.d.ts +0 -2
  480. package/dist/esm/utilities/pointInShapeCallback.d.ts +0 -18
  481. package/dist/esm/utilities/pointInShapeCallback.js +0 -82
  482. package/dist/esm/utilities/pointInSurroundingSphereCallback.d.ts +0 -4
  483. package/dist/esm/utilities/pointInSurroundingSphereCallback.js +0 -63
  484. package/dist/esm/utilities/segmentation/triggerSegmentationRenderForViewports.d.ts +0 -3
  485. package/dist/esm/utilities/segmentation/triggerSegmentationRenderForViewports.js +0 -6
@@ -1,4 +1,4 @@
1
- import { SVGCursorDescriptor } from '../types';
1
+ import type { SVGCursorDescriptor } from '../types';
2
2
  declare const CursorSVG: Record<string, SVGCursorDescriptor>;
3
3
  declare function registerCursor(toolName: string, iconContent: string, viewBox: {
4
4
  x: number;
@@ -178,6 +178,13 @@ const CursorSVG = {
178
178
  y: 24,
179
179
  },
180
180
  }),
181
+ Height: extend(BASE, {
182
+ iconContent: `<path d="m 6 22 l 8.5 0 v -16 h 8" stroke-width="3" fill="none" stroke="{{color}}" />`,
183
+ viewBox: {
184
+ x: 24,
185
+ y: 24,
186
+ },
187
+ }),
181
188
  Probe: extend(BASE, {
182
189
  iconContent: `<path fill="{{color}}" d="M1152 896q0 106-75 181t-181 75-181-75-75-181 75-181 181-75 181 75
183
190
  75 181zm-256-544q-148 0-273 73t-198 198-73 273 73 273 198 198 273 73 273-73
@@ -1,4 +1,4 @@
1
- import MouseCursor from './MouseCursor';
1
+ import type MouseCursor from './MouseCursor';
2
2
  import ImageMouseCursor from './ImageMouseCursor';
3
3
  export default class SVGMouseCursor extends ImageMouseCursor {
4
4
  constructor(url: string, x?: number, y?: number, name?: string | undefined, fallback?: MouseCursor | undefined);
@@ -1,2 +1,3 @@
1
- declare function draw(element: HTMLDivElement, fn: (svgDrawingElement: any) => any): void;
1
+ import type { SVGDrawingHelper } from '../types';
2
+ declare function draw(element: HTMLDivElement, fn: (svgDrawingElement: SVGDrawingHelper) => void): void;
2
3
  export default draw;
@@ -1,3 +1,3 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  export default function drawArrow(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, arrowUID: string, start: Types.Point2, end: Types.Point2, options?: {}): void;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawCircle(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, circleUID: string, center: Types.Point2, radius: number, options?: {}, dataId?: string): void;
4
4
  export default drawCircle;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawEllipse(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, ellipseUID: string, corner1: Types.Point2, corner2: Types.Point2, options?: {}, dataId?: string): void;
4
4
  export default drawEllipse;
@@ -1,3 +1,4 @@
1
+ import _getHash from './_getHash';
1
2
  import drawEllipseByCoordinates from './drawEllipseByCoordinates';
2
3
  function drawEllipse(svgDrawingHelper, annotationUID, ellipseUID, corner1, corner2, options = {}, dataId = '') {
3
4
  const top = [(corner1[0] + corner2[0]) / 2, corner1[1]];
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawEllipseByCoordinates(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, ellipseUID: string, canvasCoordinates: [Types.Point2, Types.Point2, Types.Point2, Types.Point2], options?: {}, dataId?: string): void;
4
4
  export default drawEllipseByCoordinates;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawHandle(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, handleGroupUID: string, handle: Types.Point2, options: {}, uniqueIndex: any): void;
4
4
  export default drawHandle;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawHandles(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, handleGroupUID: string, handlePoints: Array<Types.Point2>, options?: {}): void;
4
4
  export default drawHandles;
@@ -0,0 +1,3 @@
1
+ import type { Types } from '@cornerstonejs/core';
2
+ import type { SVGDrawingHelper } from '../types';
3
+ export default function drawHeight(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, heightUID: string, start: Types.Point2, end: Types.Point2, options?: {}): void;
@@ -0,0 +1,42 @@
1
+ import drawLine from './drawLine';
2
+ export default function drawHeight(svgDrawingHelper, annotationUID, heightUID, start, end, options = {}) {
3
+ if (isNaN(start[0]) || isNaN(start[1]) || isNaN(end[0]) || isNaN(end[1])) {
4
+ return;
5
+ }
6
+ const { color, width, lineWidth, lineDash } = Object.assign({
7
+ color: 'rgb(0, 255, 0)',
8
+ width: '2',
9
+ lineWidth: undefined,
10
+ lineDash: undefined,
11
+ }, options);
12
+ const midX = end[0] + (start[0] - end[0]) / 2;
13
+ const endfirstLine = [midX, start[1]];
14
+ const endsecondLine = [midX, end[1]];
15
+ const firstLine = {
16
+ start: start,
17
+ end: endfirstLine,
18
+ };
19
+ const secondLine = {
20
+ start: endfirstLine,
21
+ end: endsecondLine,
22
+ };
23
+ const threeLine = {
24
+ start: endsecondLine,
25
+ end: end,
26
+ };
27
+ drawLine(svgDrawingHelper, annotationUID, '1', firstLine.start, firstLine.end, {
28
+ color,
29
+ width,
30
+ lineWidth,
31
+ });
32
+ drawLine(svgDrawingHelper, annotationUID, '2', secondLine.start, secondLine.end, {
33
+ color,
34
+ width,
35
+ lineWidth,
36
+ });
37
+ drawLine(svgDrawingHelper, annotationUID, '3', threeLine.start, threeLine.end, {
38
+ color,
39
+ width,
40
+ lineWidth,
41
+ });
42
+ }
@@ -1,3 +1,3 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  export default function drawLine(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, lineUID: string, start: Types.Point2, end: Types.Point2, options?: {}, dataId?: string): void;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { PlanarBoundingBox, SVGDrawingHelper } from '../types';
2
+ import type { PlanarBoundingBox, SVGDrawingHelper } from '../types';
3
3
  declare function drawLink(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, linkUID: string, annotationAnchorPoints: Array<Types.Point2>, refPoint: Types.Point2, boundingBox: PlanarBoundingBox, options?: {}): void;
4
4
  export default drawLink;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawLinkedTextBox(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, textBoxUID: string, textLines: Array<string>, textBoxPosition: Types.Point2, annotationAnchorPoints: Array<Types.Point2>, textBox: unknown, options?: {}): SVGRect;
4
4
  export default drawLinkedTextBox;
@@ -1,5 +1,5 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  export default function drawPath(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, pathUID: string, points: Types.Point2[] | Types.Point2[][], options: {
4
4
  color?: string;
5
5
  fillColor?: string;
@@ -1,5 +1,5 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  export default function drawPolyline(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, polylineUID: string, points: Types.Point2[], options: {
4
4
  color?: string;
5
5
  fillColor?: string;
@@ -1,3 +1,3 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  export default function drawRect(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, rectangleUID: string, start: Types.Point2, end: Types.Point2, options?: {}, dataId?: string): void;
@@ -1,3 +1,4 @@
1
+ import _getHash from './_getHash';
1
2
  import drawRectByCoordinates from './drawRectByCoordinates';
2
3
  export default function drawRect(svgDrawingHelper, annotationUID, rectangleUID, start, end, options = {}, dataId = '') {
3
4
  const topLeft = [start[0], start[1]];
@@ -1,3 +1,3 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  export default function drawRectByCoordinates(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, rectangleUID: string, canvasCoordinates: Types.Point2[], options?: {}, dataId?: string): void;
@@ -1 +1,3 @@
1
- export default function drawRedactionRect(svgDrawingHelper: any, annotationUID: string, rectangleUID: string, start: any, end: any, options?: {}): void;
1
+ import type { Types } from '@cornerstonejs/core';
2
+ import type { SVGDrawingHelper } from '../types';
3
+ export default function drawRedactionRect(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, rectangleUID: string, start: Types.Point2, end: Types.Point2, options?: {}): void;
@@ -1,4 +1,4 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
- import { SVGDrawingHelper } from '../types';
2
+ import type { SVGDrawingHelper } from '../types';
3
3
  declare function drawTextBox(svgDrawingHelper: SVGDrawingHelper, annotationUID: string, textUID: string, textLines: Array<string>, position: Types.Point2, options?: {}): SVGRect;
4
4
  export default drawTextBox;
@@ -1,3 +1,3 @@
1
- import { SVGDrawingHelper } from '../types';
1
+ import type { SVGDrawingHelper } from '../types';
2
2
  declare function getSvgDrawingHelper(element: HTMLDivElement): SVGDrawingHelper;
3
3
  export default getSvgDrawingHelper;
@@ -21,7 +21,7 @@ function getSvgDrawingHelper(element) {
21
21
  function _getSvgLayer(element) {
22
22
  const viewportElement = `.${VIEWPORT_ELEMENT}`;
23
23
  const internalDivElement = element.querySelector(viewportElement);
24
- const svgLayer = internalDivElement.querySelector(':scope > .svg-layer');
24
+ const svgLayer = internalDivElement?.querySelector(':scope > .svg-layer');
25
25
  return svgLayer;
26
26
  }
27
27
  function getSvgNode(canvasHash, cacheKey) {
@@ -5,6 +5,7 @@ import drawEllipseByCoordinates from './drawEllipseByCoordinates';
5
5
  import drawHandles from './drawHandles';
6
6
  import drawHandle from './drawHandle';
7
7
  import drawLine from './drawLine';
8
+ import drawHeight from './drawHeight';
8
9
  import drawPolyline from './drawPolyline';
9
10
  import drawPath from './drawPath';
10
11
  import drawLinkedTextBox from './drawLinkedTextBox';
@@ -15,4 +16,4 @@ import drawArrow from './drawArrow';
15
16
  import drawRedactionRect from './drawRedactionRect';
16
17
  import setAttributesIfNecessary from './setAttributesIfNecessary';
17
18
  import setNewAttributesIfValid from './setNewAttributesIfValid';
18
- export { draw, drawCircle, drawEllipse, drawEllipseByCoordinates, drawHandles, drawHandle, drawLine, drawPolyline, drawPath, drawLinkedTextBox, drawRect, drawRectByCoordinates, drawTextBox, drawArrow, drawRedactionRect, setAttributesIfNecessary, setNewAttributesIfValid, };
19
+ export { draw, drawCircle, drawEllipse, drawEllipseByCoordinates, drawHandles, drawHandle, drawLine, drawHeight, drawPolyline, drawPath, drawLinkedTextBox, drawRect, drawRectByCoordinates, drawTextBox, drawArrow, drawRedactionRect, setAttributesIfNecessary, setNewAttributesIfValid, };
@@ -5,6 +5,7 @@ import drawEllipseByCoordinates from './drawEllipseByCoordinates';
5
5
  import drawHandles from './drawHandles';
6
6
  import drawHandle from './drawHandle';
7
7
  import drawLine from './drawLine';
8
+ import drawHeight from './drawHeight';
8
9
  import drawPolyline from './drawPolyline';
9
10
  import drawPath from './drawPath';
10
11
  import drawLinkedTextBox from './drawLinkedTextBox';
@@ -15,4 +16,4 @@ import drawArrow from './drawArrow';
15
16
  import drawRedactionRect from './drawRedactionRect';
16
17
  import setAttributesIfNecessary from './setAttributesIfNecessary';
17
18
  import setNewAttributesIfValid from './setNewAttributesIfValid';
18
- export { draw, drawCircle, drawEllipse, drawEllipseByCoordinates, drawHandles, drawHandle, drawLine, drawPolyline, drawPath, drawLinkedTextBox, drawRect, drawRectByCoordinates, drawTextBox, drawArrow, drawRedactionRect, setAttributesIfNecessary, setNewAttributesIfValid, };
19
+ export { draw, drawCircle, drawEllipse, drawEllipseByCoordinates, drawHandles, drawHandle, drawLine, drawHeight, drawPolyline, drawPath, drawLinkedTextBox, drawRect, drawRectByCoordinates, drawTextBox, drawArrow, drawRedactionRect, setAttributesIfNecessary, setNewAttributesIfValid, };
@@ -7,7 +7,9 @@ declare enum MouseBindings {
7
7
  Secondary_And_Auxiliary = 6,
8
8
  Primary_And_Secondary_And_Auxiliary = 7,
9
9
  Fourth_Button = 8,
10
- Fifth_Button = 16
10
+ Fifth_Button = 16,
11
+ Wheel = 524288,
12
+ Wheel_Primary = 524289
11
13
  }
12
14
  declare enum KeyboardBindings {
13
15
  Shift = 16,
@@ -9,6 +9,8 @@ var MouseBindings;
9
9
  MouseBindings[MouseBindings["Primary_And_Secondary_And_Auxiliary"] = 7] = "Primary_And_Secondary_And_Auxiliary";
10
10
  MouseBindings[MouseBindings["Fourth_Button"] = 8] = "Fourth_Button";
11
11
  MouseBindings[MouseBindings["Fifth_Button"] = 16] = "Fifth_Button";
12
+ MouseBindings[MouseBindings["Wheel"] = 524288] = "Wheel";
13
+ MouseBindings[MouseBindings["Wheel_Primary"] = 524289] = "Wheel_Primary";
12
14
  })(MouseBindings || (MouseBindings = {}));
13
15
  var KeyboardBindings;
14
16
  (function (KeyboardBindings) {
@@ -1,2 +1,2 @@
1
- import { KeyDownEventType } from '../../types/EventTypes';
1
+ import type { KeyDownEventType } from '../../types/EventTypes';
2
2
  export default function keyDown(evt: KeyDownEventType): void;
@@ -1,2 +1,2 @@
1
- import { KeyDownEventType } from '../../types/EventTypes';
1
+ import type { KeyDownEventType } from '../../types/EventTypes';
2
2
  export default function keyUp(evt: KeyDownEventType): void;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function mouseDown(evt: EventTypes.MouseDownEventType): void;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function mouseDownActivate(evt: EventTypes.MouseDownActivateEventType): void;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function mouseDownAnnotationAction(evt: EventTypes.MouseDownEventType): boolean;
@@ -1,2 +1,2 @@
1
- import { MouseDragEventType } from '../../types/EventTypes';
1
+ import type { MouseDragEventType } from '../../types/EventTypes';
2
2
  export default function mouseDrag(evt: MouseDragEventType): void;
@@ -1,2 +1,2 @@
1
- import { MouseMoveEventType } from '../../types/EventTypes';
1
+ import type { MouseMoveEventType } from '../../types/EventTypes';
2
2
  export default function mouseMove(evt: MouseMoveEventType): void;
@@ -1,2 +1,3 @@
1
- declare const mouseWheel: (evt: any) => boolean;
1
+ import type { EventTypes } from '../../types';
2
+ declare function mouseWheel(evt: EventTypes.MouseWheelEventType): any;
2
3
  export default mouseWheel;
@@ -1,3 +1,16 @@
1
- import customCallbackHandler from '../shared/customCallbackHandler';
2
- const mouseWheel = customCallbackHandler.bind(null, 'MouseWheel', 'mouseWheelCallback');
1
+ import { state } from '../../store';
2
+ import getActiveToolForMouseEvent from '../shared/getActiveToolForMouseEvent';
3
+ import { MouseBindings } from '../../enums/ToolBindings';
4
+ function mouseWheel(evt) {
5
+ if (state.isInteractingWithTool) {
6
+ return;
7
+ }
8
+ evt.detail.buttons =
9
+ MouseBindings.Wheel | (evt.detail.event.buttons || 0);
10
+ const activeTool = getActiveToolForMouseEvent(evt);
11
+ if (!activeTool) {
12
+ return;
13
+ }
14
+ return activeTool.mouseWheelCallback(evt);
15
+ }
3
16
  export default mouseWheel;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function getActiveToolForKeyboardEvent(evt: EventTypes.KeyDownEventType): any;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function getActiveToolForMouseEvent(evt: EventTypes.NormalizedMouseEventType): any;
@@ -4,8 +4,7 @@ import { keyEventListener } from '../../eventListeners';
4
4
  import getMouseModifier from './getMouseModifier';
5
5
  const { Active } = ToolModes;
6
6
  export default function getActiveToolForMouseEvent(evt) {
7
- const { renderingEngineId, viewportId } = evt.detail;
8
- const mouseEvent = evt.detail.event;
7
+ const { renderingEngineId, viewportId, event: mouseEvent } = evt.detail;
9
8
  const modifierKey = getMouseModifier(mouseEvent) || keyEventListener.getModifierKey();
10
9
  const toolGroup = ToolGroupManager.getToolGroupForViewport(viewportId, renderingEngineId);
11
10
  if (!toolGroup) {
@@ -13,13 +12,13 @@ export default function getActiveToolForMouseEvent(evt) {
13
12
  }
14
13
  const toolGroupToolNames = Object.keys(toolGroup.toolOptions);
15
14
  const defaultMousePrimary = toolGroup.getDefaultMousePrimary();
15
+ const mouseButton = evt.detail.buttons ?? mouseEvent?.buttons ?? defaultMousePrimary;
16
16
  for (let j = 0; j < toolGroupToolNames.length; j++) {
17
17
  const toolName = toolGroupToolNames[j];
18
18
  const toolOptions = toolGroup.toolOptions[toolName];
19
19
  const correctBinding = toolOptions.bindings.length &&
20
20
  toolOptions.bindings.some((binding) => {
21
- return (binding.mouseButton ===
22
- (mouseEvent ? mouseEvent.buttons : defaultMousePrimary) &&
21
+ return (binding.mouseButton === mouseButton &&
23
22
  binding.modifierKey === modifierKey);
24
23
  });
25
24
  if (toolOptions.mode === Active && correctBinding) {
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function getActiveToolForTouchEvent(evt: EventTypes.NormalizedTouchEventType): any;
@@ -1,5 +1,5 @@
1
1
  import { ToolGroupManager } from '../../store';
2
- import { ToolModes } from '../../enums';
2
+ import { MouseBindings, ToolModes } from '../../enums';
3
3
  import getMouseModifier from './getMouseModifier';
4
4
  import { keyEventListener } from '../../eventListeners';
5
5
  const { Active } = ToolModes;
@@ -1,3 +1,3 @@
1
- import { ToolModes } from '../../enums';
2
- import { EventTypes } from '../../types';
1
+ import type { ToolModes } from '../../enums';
2
+ import type { EventTypes } from '../../types';
3
3
  export default function getToolsWithModesForKeyboardEvent(evt: EventTypes.KeyDownEventType, toolModes: ToolModes[]): Map<any, any>;
@@ -1,3 +1,4 @@
1
- import { ToolModes } from '../../enums';
2
- import { ToolAction, EventTypes } from '../../types';
3
- export default function getToolsWithActionsForMouseEvent(evt: EventTypes.MouseMoveEventType, toolModes: ToolModes[]): Map<any, ToolAction>;
1
+ import type { ToolModes } from '../../enums';
2
+ import type { ToolAction, EventTypes } from '../../types';
3
+ import type { BaseTool } from '../../tools';
4
+ export default function getToolsWithActionsForMouseEvent(evt: EventTypes.MouseMoveEventType, toolModes: ToolModes[]): Map<BaseTool, ToolAction>;
@@ -1,5 +1,5 @@
1
- import { ToolModes } from '../../enums';
2
- import { EventTypes } from '../../types';
1
+ import type { ToolModes } from '../../enums';
2
+ import type { EventTypes } from '../../types';
3
3
  type ModesFilter = Array<ToolModes>;
4
- export default function getToolsWithModesForMouseEvent(evt: EventTypes.MouseMoveEventType, modesFilter: ModesFilter, evtButton?: any): any[];
4
+ export default function getToolsWithModesForMouseEvent(evt: EventTypes.MouseMoveEventType, modesFilter: ModesFilter, evtButton?: number): any[];
5
5
  export {};
@@ -1,5 +1,5 @@
1
- import { ToolModes } from '../../enums';
2
- import { EventTypes } from '../../types';
1
+ import type { ToolModes } from '../../enums';
2
+ import type { EventTypes } from '../../types';
3
3
  type ModesFilter = Array<ToolModes>;
4
4
  export default function getToolsWithModesForTouchEvent(evt: EventTypes.NormalizedTouchEventType, modesFilter: ModesFilter, numTouchPoints?: number): any[];
5
5
  export {};
@@ -1,2 +1,2 @@
1
- import { TouchDragEventType } from '../../types/EventTypes';
1
+ import type { TouchDragEventType } from '../../types/EventTypes';
2
2
  export default function touchDrag(evt: TouchDragEventType): void;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function touchStart(evt: EventTypes.TouchStartEventType): void;
@@ -1,2 +1,2 @@
1
- import { EventTypes } from '../../types';
1
+ import type { EventTypes } from '../../types';
2
2
  export default function touchStartActivate(evt: EventTypes.TouchStartActivateEventType): void;
@@ -1,2 +1,2 @@
1
- import { AnnotationCompletedEventType } from '../../types/EventTypes';
1
+ import type { AnnotationCompletedEventType } from '../../types/EventTypes';
2
2
  export default function annotationCompletedListener(evt: AnnotationCompletedEventType): void;
@@ -1,2 +1,2 @@
1
- import { AnnotationRemovedEventType } from '../../types/EventTypes';
1
+ import type { AnnotationRemovedEventType } from '../../types/EventTypes';
2
2
  export default function annotationRemovedListener(evt: AnnotationRemovedEventType): void;
@@ -1,5 +1,5 @@
1
- import { Types } from '@cornerstonejs/core';
2
- import { ContourSegmentationAnnotation } from '../../../types/ContourSegmentationAnnotation';
3
- import { AnnotationCompletedEventType } from '../../../types/EventTypes';
1
+ import type { Types } from '@cornerstonejs/core';
2
+ import type { ContourSegmentationAnnotation } from '../../../types/ContourSegmentationAnnotation';
3
+ import type { AnnotationCompletedEventType } from '../../../types/EventTypes';
4
4
  export default function contourSegmentationCompletedListener(evt: AnnotationCompletedEventType): Promise<void>;
5
5
  export declare function createPolylineHole(viewport: Types.IViewport, targetAnnotation: ContourSegmentationAnnotation, holeAnnotation: ContourSegmentationAnnotation): void;
@@ -1,4 +1,4 @@
1
- import { getEnabledElement, utilities as csUtils, } from '@cornerstonejs/core';
1
+ import { getEnabledElement, utilities as csUtils } from '@cornerstonejs/core';
2
2
  import getViewportsForAnnotation from '../../../utilities/getViewportsForAnnotation';
3
3
  import { math, triggerAnnotationRenderForViewportIds, } from '../../../utilities';
4
4
  import { getViewportIdsWithToolToRender } from '../../../utilities/viewportFilters';
@@ -1,2 +1,2 @@
1
- import { IPoints } from '../../types';
1
+ import type { IPoints } from '../../types';
2
2
  export default function getMouseEventPoints(evt: MouseEvent, element?: HTMLDivElement): IPoints;
@@ -1,7 +1,10 @@
1
1
  import { getEnabledElement } from '@cornerstonejs/core';
2
2
  export default function getMouseEventPoints(evt, element) {
3
3
  const elementToUse = element || evt.currentTarget;
4
- const { viewport } = getEnabledElement(elementToUse);
4
+ const { viewport } = getEnabledElement(elementToUse) || {};
5
+ if (!viewport) {
6
+ return;
7
+ }
5
8
  const clientPoint = _clientToPoint(evt);
6
9
  const pagePoint = _pageToPoint(evt);
7
10
  const canvasPoint = _pagePointsToCanvasPoints(elementToUse, pagePoint);
@@ -1,5 +1,6 @@
1
1
  import { getEnabledElement, triggerEvent } from '@cornerstonejs/core';
2
2
  import Events from '../../enums/Events';
3
+ import { MouseBindings } from '../../enums/ToolBindings';
3
4
  import mouseMoveListener from './mouseMoveListener';
4
5
  import getMouseEventPoints from './getMouseEventPoints';
5
6
  const { MOUSE_DOWN, MOUSE_DOWN_ACTIVATE, MOUSE_CLICK, MOUSE_UP, MOUSE_DRAG } = Events;
@@ -102,6 +103,10 @@ function _doMouseDown(evt) {
102
103
  }
103
104
  }
104
105
  function _onMouseDrag(evt) {
106
+ const enabledElement = getEnabledElement(state.element);
107
+ if (!enabledElement?.viewport) {
108
+ return;
109
+ }
105
110
  const currentPoints = getMouseEventPoints(evt, state.element);
106
111
  const lastPoints = _updateMouseEventsLastPoints(state.element, state.lastPoints);
107
112
  const deltaPoints = _getDeltaPoints(currentPoints, lastPoints);
@@ -211,7 +216,10 @@ function _copyPoints(points) {
211
216
  return JSON.parse(JSON.stringify(points));
212
217
  }
213
218
  function _updateMouseEventsLastPoints(element, lastPoints) {
214
- const { viewport } = getEnabledElement(element);
219
+ const { viewport } = getEnabledElement(element) || {};
220
+ if (!viewport) {
221
+ return lastPoints;
222
+ }
215
223
  const world = viewport.canvasToWorld(lastPoints.canvas);
216
224
  return {
217
225
  page: lastPoints.page,
@@ -3,7 +3,7 @@ import vtkImageData from '@kitware/vtk.js/Common/DataModel/ImageData';
3
3
  import { BaseVolumeViewport, getEnabledElement, Enums, getEnabledElementByIds, cache, utilities, } from '@cornerstonejs/core';
4
4
  import Representations from '../../enums/SegmentationRepresentations';
5
5
  import * as SegmentationState from '../../stateManagement/segmentation/segmentationState';
6
- import triggerSegmentationRender from '../../utilities/segmentation/triggerSegmentationRender';
6
+ import { triggerSegmentationRender } from '../../utilities/segmentation/triggerSegmentationRender';
7
7
  const enable = function (element) {
8
8
  const { viewport } = getEnabledElement(element);
9
9
  if (viewport instanceof BaseVolumeViewport) {
@@ -21,7 +21,7 @@ function _imageChangeEventListener(evt) {
21
21
  const eventData = evt.detail;
22
22
  const { viewportId, renderingEngineId } = eventData;
23
23
  const { viewport } = getEnabledElementByIds(viewportId, renderingEngineId);
24
- const segmentationRepresentations = SegmentationState.getRepresentationsForViewport(viewportId);
24
+ const segmentationRepresentations = SegmentationState.getSegmentationRepresentations(viewportId);
25
25
  if (!segmentationRepresentations?.length) {
26
26
  return;
27
27
  }
@@ -32,12 +32,12 @@ function _imageChangeEventListener(evt) {
32
32
  const actors = viewport.getActors();
33
33
  labelmapRepresentations.forEach((representation) => {
34
34
  const { segmentationId } = representation;
35
- const labelmapImageId = SegmentationState.updateSegmentationImageReferences(viewportId, segmentationId);
35
+ const labelmapImageId = SegmentationState.updateLabelmapSegmentationImageReferences(viewportId, segmentationId);
36
36
  });
37
37
  const allLabelmapActors = actors.filter((actor) => labelmapRepresentations.some((representation) => representation.segmentationRepresentationUID === actor.uid));
38
38
  allLabelmapActors.forEach((actor) => {
39
39
  const validActor = labelmapRepresentations.find((representation) => {
40
- const derivedImageId = SegmentationState.getLabelmapImageIdsForViewport(viewportId, representation.segmentationId);
40
+ const derivedImageId = SegmentationState.getCurrentLabelmapImageIdForViewport(viewportId, representation.segmentationId);
41
41
  return derivedImageId === actor.referencedId;
42
42
  });
43
43
  if (!validActor) {
@@ -47,7 +47,7 @@ function _imageChangeEventListener(evt) {
47
47
  labelmapRepresentations.forEach((representation) => {
48
48
  const { segmentationId } = representation;
49
49
  const currentImageId = viewport.getCurrentImageId();
50
- const derivedImageId = SegmentationState.getLabelmapImageIdsForViewport(viewportId, segmentationId);
50
+ const derivedImageId = SegmentationState.getCurrentLabelmapImageIdForViewport(viewportId, segmentationId);
51
51
  if (!derivedImageId) {
52
52
  return;
53
53
  }
@@ -68,7 +68,7 @@ function _imageChangeEventListener(evt) {
68
68
  const scalarArray = vtkDataArray.newInstance({
69
69
  name: 'Pixels',
70
70
  numberOfComponents: 1,
71
- values: [...derivedImage.getPixelData()],
71
+ values: [...derivedImage.voxelManager.getScalarData()],
72
72
  });
73
73
  const imageData = vtkImageData.newInstance();
74
74
  imageData.setDimensions(dimensions[0], dimensions[1], 1);
@@ -1,3 +1,3 @@
1
- import { SegmentationDataModifiedEventType } from '../../../types/EventTypes';
1
+ import type { SegmentationDataModifiedEventType } from '../../../types/EventTypes';
2
2
  declare const onLabelmapSegmentationDataModified: (evt: SegmentationDataModifiedEventType) => void;
3
3
  export default onLabelmapSegmentationDataModified;
@@ -16,7 +16,7 @@ const onLabelmapSegmentationDataModified = function (evt) {
16
16
  type,
17
17
  });
18
18
  }
19
- const viewportIds = SegmentationState.getViewportIdsWithSegmentationId(segmentationId);
19
+ const viewportIds = SegmentationState.getViewportIdsWithSegmentation(segmentationId);
20
20
  if ('imageIds' in labelmapRepresentationData) {
21
21
  performStackLabelmapUpdate({
22
22
  viewportIds,
@@ -48,7 +48,7 @@ function performVolumeLabelmapUpdate({ modifiedSlicesToUse, representationData,
48
48
  }
49
49
  function performStackLabelmapUpdate({ viewportIds, segmentationId, representationData, type, }) {
50
50
  viewportIds.forEach((viewportId) => {
51
- const viewportSegReps = SegmentationState.getRepresentationsForViewport(viewportId);
51
+ const viewportSegReps = SegmentationState.getSegmentationRepresentations(viewportId);
52
52
  viewportSegReps.forEach((representation) => {
53
53
  if (representation.segmentationId !== segmentationId) {
54
54
  return;
@@ -66,7 +66,7 @@ function performStackLabelmapUpdate({ viewportIds, segmentationId, representatio
66
66
  return;
67
67
  }
68
68
  const segImageData = actorEntry.actor.getMapper().getInputData();
69
- const currentSegmentationImageId = SegmentationState.getLabelmapImageIdsForViewport(viewportId, representation.segmentationId);
69
+ const currentSegmentationImageId = SegmentationState.getCurrentLabelmapImageIdForViewport(viewportId, representation.segmentationId);
70
70
  const segmentationImage = cache.getImage(currentSegmentationImageId);
71
71
  segImageData.modified();
72
72
  csUtils.updateVTKImageDataWithCornerstoneImage(segImageData, segmentationImage);