@cornerstonejs/tools 0.1.2 → 0.2.0

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 (686) hide show
  1. package/dist/cjs/{stateManagement/segmentation/helpers → constants}/COLOR_LUT.d.ts +0 -0
  2. package/dist/cjs/{stateManagement/segmentation/helpers → constants}/COLOR_LUT.js +0 -0
  3. package/dist/{esm/stateManagement/segmentation/helpers → cjs/constants}/COLOR_LUT.js.map +1 -1
  4. package/dist/cjs/constants/index.d.ts +2 -0
  5. package/dist/cjs/constants/index.js +9 -0
  6. package/dist/cjs/constants/index.js.map +1 -0
  7. package/dist/cjs/drawingSvg/getSvgDrawingHelper.js +2 -2
  8. package/dist/cjs/drawingSvg/getSvgDrawingHelper.js.map +1 -1
  9. package/dist/cjs/drawingSvg/index.d.ts +0 -11
  10. package/dist/cjs/drawingSvg/index.js +0 -10
  11. package/dist/cjs/drawingSvg/index.js.map +1 -1
  12. package/dist/cjs/enums/Events.d.ts +3 -2
  13. package/dist/cjs/enums/Events.js +3 -2
  14. package/dist/cjs/enums/Events.js.map +1 -1
  15. package/dist/cjs/eventDispatchers/annotationModifiedEventDispatcher.js +4 -4
  16. package/dist/cjs/eventDispatchers/annotationModifiedEventDispatcher.js.map +1 -1
  17. package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyDown.js +2 -2
  18. package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyDown.js.map +1 -1
  19. package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyUp.js +2 -2
  20. package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyUp.js.map +1 -1
  21. package/dist/cjs/eventDispatchers/shared/customCallbackHandler.js +2 -2
  22. package/dist/cjs/eventDispatchers/shared/customCallbackHandler.js.map +1 -1
  23. package/dist/cjs/eventDispatchers/shared/getActiveToolForKeyboardEvent.js +2 -2
  24. package/dist/cjs/eventDispatchers/shared/getActiveToolForKeyboardEvent.js.map +1 -1
  25. package/dist/cjs/eventDispatchers/shared/getActiveToolForMouseEvent.js +2 -2
  26. package/dist/cjs/eventDispatchers/shared/getActiveToolForMouseEvent.js.map +1 -1
  27. package/dist/cjs/eventDispatchers/shared/getToolsWithModesForMouseEvent.js +2 -2
  28. package/dist/cjs/eventDispatchers/shared/getToolsWithModesForMouseEvent.js.map +1 -1
  29. package/dist/cjs/eventListeners/annotations/annotationModifiedListener.js +4 -4
  30. package/dist/cjs/eventListeners/annotations/annotationModifiedListener.js.map +1 -1
  31. package/dist/cjs/eventListeners/annotations/annotationSelectionListener.js +2 -2
  32. package/dist/cjs/eventListeners/annotations/annotationSelectionListener.js.map +1 -1
  33. package/dist/cjs/eventListeners/index.d.ts +2 -2
  34. package/dist/cjs/eventListeners/index.js +4 -2
  35. package/dist/cjs/eventListeners/index.js.map +1 -1
  36. package/dist/cjs/eventListeners/keyboard/keyDownListener.js +11 -11
  37. package/dist/cjs/eventListeners/keyboard/keyDownListener.js.map +1 -1
  38. package/dist/cjs/eventListeners/mouse/mouseDoubleClickListener.js +3 -3
  39. package/dist/cjs/eventListeners/mouse/mouseDoubleClickListener.js.map +1 -1
  40. package/dist/cjs/eventListeners/mouse/mouseDownListener.js +13 -13
  41. package/dist/cjs/eventListeners/mouse/mouseDownListener.js.map +1 -1
  42. package/dist/cjs/eventListeners/mouse/mouseMoveListener.js +3 -3
  43. package/dist/cjs/eventListeners/mouse/mouseMoveListener.js.map +1 -1
  44. package/dist/cjs/eventListeners/segmentation/index.d.ts +4 -2
  45. package/dist/cjs/eventListeners/segmentation/index.js +7 -3
  46. package/dist/cjs/eventListeners/segmentation/index.js.map +1 -1
  47. package/dist/cjs/eventListeners/segmentation/segmentationDataModifiedEventListener.js +10 -15
  48. package/dist/cjs/eventListeners/segmentation/segmentationDataModifiedEventListener.js.map +1 -1
  49. package/dist/cjs/eventListeners/segmentation/segmentationModifiedEventListener.d.ts +3 -0
  50. package/dist/cjs/eventListeners/segmentation/segmentationModifiedEventListener.js +18 -0
  51. package/dist/cjs/eventListeners/segmentation/segmentationModifiedEventListener.js.map +1 -0
  52. package/dist/cjs/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.d.ts +3 -0
  53. package/dist/cjs/eventListeners/segmentation/{segmentationStateModifiedEventListener.js → segmentationRepresentationModifiedEventListener.js} +5 -5
  54. package/dist/cjs/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.js.map +1 -0
  55. package/dist/cjs/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.d.ts +3 -0
  56. package/dist/cjs/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js +12 -0
  57. package/dist/cjs/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js.map +1 -0
  58. package/dist/cjs/eventListeners/wheel/wheelListener.js +3 -3
  59. package/dist/cjs/eventListeners/wheel/wheelListener.js.map +1 -1
  60. package/dist/cjs/index.d.ts +2 -1
  61. package/dist/cjs/index.js +3 -1
  62. package/dist/cjs/index.js.map +1 -1
  63. package/dist/cjs/init.js +34 -22
  64. package/dist/cjs/init.js.map +1 -1
  65. package/dist/cjs/stateManagement/annotation/annotationState.js +6 -6
  66. package/dist/cjs/stateManagement/annotation/annotationState.js.map +1 -1
  67. package/dist/cjs/stateManagement/index.d.ts +2 -2
  68. package/dist/cjs/stateManagement/index.js +2 -2
  69. package/dist/cjs/stateManagement/index.js.map +1 -1
  70. package/dist/cjs/stateManagement/segmentation/SegmentationStateManager.d.ts +15 -18
  71. package/dist/cjs/stateManagement/segmentation/SegmentationStateManager.js +91 -124
  72. package/dist/cjs/stateManagement/segmentation/SegmentationStateManager.js.map +1 -1
  73. package/dist/cjs/stateManagement/segmentation/activeSegmentation.d.ts +4 -12
  74. package/dist/cjs/stateManagement/segmentation/activeSegmentation.js +15 -19
  75. package/dist/cjs/stateManagement/segmentation/activeSegmentation.js.map +1 -1
  76. package/dist/cjs/stateManagement/segmentation/addSegmentationRepresentations.d.ts +3 -0
  77. package/dist/cjs/stateManagement/segmentation/addSegmentationRepresentations.js +41 -0
  78. package/dist/cjs/stateManagement/segmentation/addSegmentationRepresentations.js.map +1 -0
  79. package/dist/cjs/stateManagement/segmentation/addSegmentations.d.ts +3 -0
  80. package/dist/cjs/stateManagement/segmentation/addSegmentations.js +17 -0
  81. package/dist/cjs/stateManagement/segmentation/addSegmentations.js.map +1 -0
  82. package/dist/cjs/stateManagement/segmentation/createNewSegmentationForToolGroup.d.ts +2 -2
  83. package/dist/cjs/stateManagement/segmentation/createNewSegmentationForToolGroup.js +11 -11
  84. package/dist/cjs/stateManagement/segmentation/createNewSegmentationForToolGroup.js.map +1 -1
  85. package/dist/cjs/stateManagement/segmentation/helpers/index.d.ts +2 -4
  86. package/dist/cjs/stateManagement/segmentation/helpers/index.js +3 -7
  87. package/dist/cjs/stateManagement/segmentation/helpers/index.js.map +1 -1
  88. package/dist/cjs/stateManagement/segmentation/helpers/normalizeSegmentationInput.d.ts +3 -0
  89. package/dist/cjs/stateManagement/segmentation/helpers/normalizeSegmentationInput.js +18 -0
  90. package/dist/cjs/stateManagement/segmentation/helpers/normalizeSegmentationInput.js.map +1 -0
  91. package/dist/cjs/stateManagement/segmentation/helpers/validateSegmentationInput.d.ts +3 -0
  92. package/dist/cjs/stateManagement/segmentation/helpers/validateSegmentationInput.js +45 -0
  93. package/dist/cjs/stateManagement/segmentation/helpers/validateSegmentationInput.js.map +1 -0
  94. package/dist/cjs/stateManagement/segmentation/index.d.ts +3 -2
  95. package/dist/cjs/stateManagement/segmentation/index.js +5 -3
  96. package/dist/cjs/stateManagement/segmentation/index.js.map +1 -1
  97. package/dist/cjs/stateManagement/segmentation/removeSegmentationsFromToolGroup.d.ts +1 -1
  98. package/dist/cjs/stateManagement/segmentation/removeSegmentationsFromToolGroup.js +22 -17
  99. package/dist/cjs/stateManagement/segmentation/removeSegmentationsFromToolGroup.js.map +1 -1
  100. package/dist/cjs/stateManagement/segmentation/segmentIndex.d.ts +4 -11
  101. package/dist/cjs/stateManagement/segmentation/segmentIndex.js +24 -30
  102. package/dist/cjs/stateManagement/segmentation/segmentIndex.js.map +1 -1
  103. package/dist/cjs/stateManagement/segmentation/segmentLocking.d.ts +5 -13
  104. package/dist/cjs/stateManagement/segmentation/segmentLocking.js +28 -35
  105. package/dist/cjs/stateManagement/segmentation/segmentLocking.js.map +1 -1
  106. package/dist/cjs/stateManagement/segmentation/segmentationColor.d.ts +3 -8
  107. package/dist/cjs/stateManagement/segmentation/segmentationColor.js +5 -6
  108. package/dist/cjs/stateManagement/segmentation/segmentationColor.js.map +1 -1
  109. package/dist/cjs/stateManagement/segmentation/segmentationConfig.d.ts +8 -25
  110. package/dist/cjs/stateManagement/segmentation/segmentationConfig.js +16 -54
  111. package/dist/cjs/stateManagement/segmentation/segmentationConfig.js.map +1 -1
  112. package/dist/cjs/stateManagement/segmentation/segmentationState.d.ts +16 -19
  113. package/dist/cjs/stateManagement/segmentation/segmentationState.js +80 -97
  114. package/dist/cjs/stateManagement/segmentation/segmentationState.js.map +1 -1
  115. package/dist/cjs/stateManagement/segmentation/segmentationVisibility.d.ts +2 -7
  116. package/dist/cjs/stateManagement/segmentation/segmentationVisibility.js +12 -11
  117. package/dist/cjs/stateManagement/segmentation/segmentationVisibility.js.map +1 -1
  118. package/dist/cjs/stateManagement/segmentation/triggerSegmentationEvents.d.ts +5 -4
  119. package/dist/cjs/stateManagement/segmentation/triggerSegmentationEvents.js +37 -22
  120. package/dist/cjs/stateManagement/segmentation/triggerSegmentationEvents.js.map +1 -1
  121. package/dist/cjs/store/SynchronizerManager/Synchronizer.d.ts +10 -10
  122. package/dist/cjs/store/SynchronizerManager/Synchronizer.js +19 -19
  123. package/dist/cjs/store/SynchronizerManager/Synchronizer.js.map +1 -1
  124. package/dist/cjs/store/SynchronizerManager/getSynchronizers.d.ts +1 -1
  125. package/dist/cjs/store/SynchronizerManager/getSynchronizers.js +7 -7
  126. package/dist/cjs/store/SynchronizerManager/getSynchronizers.js.map +1 -1
  127. package/dist/cjs/store/ToolGroupManager/ToolGroup.d.ts +5 -5
  128. package/dist/cjs/store/ToolGroupManager/ToolGroup.js +21 -21
  129. package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
  130. package/dist/cjs/store/ToolGroupManager/createToolGroup.d.ts +1 -1
  131. package/dist/cjs/store/ToolGroupManager/createToolGroup.js +4 -4
  132. package/dist/cjs/store/ToolGroupManager/createToolGroup.js.map +1 -1
  133. package/dist/cjs/store/ToolGroupManager/destroy.js +2 -2
  134. package/dist/cjs/store/ToolGroupManager/destroy.js.map +1 -1
  135. package/dist/cjs/store/ToolGroupManager/destroyToolGroupById.d.ts +2 -0
  136. package/dist/cjs/store/ToolGroupManager/{destroyToolGroupByToolGroupUID.js → destroyToolGroupById.js} +5 -5
  137. package/dist/cjs/store/ToolGroupManager/destroyToolGroupById.js.map +1 -0
  138. package/dist/cjs/store/ToolGroupManager/getToolGroup.d.ts +1 -1
  139. package/dist/cjs/store/ToolGroupManager/getToolGroup.js +7 -7
  140. package/dist/cjs/store/ToolGroupManager/getToolGroup.js.map +1 -1
  141. package/dist/cjs/store/ToolGroupManager/getToolGroupById.d.ts +3 -0
  142. package/dist/cjs/store/ToolGroupManager/getToolGroupById.js +8 -0
  143. package/dist/cjs/store/ToolGroupManager/getToolGroupById.js.map +1 -0
  144. package/dist/cjs/store/ToolGroupManager/index.d.ts +3 -12
  145. package/dist/cjs/store/ToolGroupManager/index.js +5 -13
  146. package/dist/cjs/store/ToolGroupManager/index.js.map +1 -1
  147. package/dist/cjs/store/addEnabledElement.js +4 -4
  148. package/dist/cjs/store/addEnabledElement.js.map +1 -1
  149. package/dist/cjs/store/removeEnabledElement.js +8 -8
  150. package/dist/cjs/store/removeEnabledElement.js.map +1 -1
  151. package/dist/cjs/synchronizers/callbacks/cameraSyncCallback.d.ts +1 -1
  152. package/dist/cjs/synchronizers/callbacks/cameraSyncCallback.js +5 -5
  153. package/dist/cjs/synchronizers/callbacks/cameraSyncCallback.js.map +1 -1
  154. package/dist/cjs/synchronizers/callbacks/voiSyncCallback.d.ts +1 -1
  155. package/dist/cjs/synchronizers/callbacks/voiSyncCallback.js +5 -5
  156. package/dist/cjs/synchronizers/callbacks/voiSyncCallback.js.map +1 -1
  157. package/dist/cjs/tools/CrosshairsTool.d.ts +10 -10
  158. package/dist/cjs/tools/CrosshairsTool.js +132 -113
  159. package/dist/cjs/tools/CrosshairsTool.js.map +1 -1
  160. package/dist/cjs/tools/MIPJumpToClickTool.js +6 -6
  161. package/dist/cjs/tools/MIPJumpToClickTool.js.map +1 -1
  162. package/dist/cjs/tools/StackScrollTool.js +4 -4
  163. package/dist/cjs/tools/StackScrollTool.js.map +1 -1
  164. package/dist/cjs/tools/StackScrollToolMouseWheelTool.js +2 -2
  165. package/dist/cjs/tools/StackScrollToolMouseWheelTool.js.map +1 -1
  166. package/dist/cjs/tools/WindowLevelTool.d.ts +4 -4
  167. package/dist/cjs/tools/WindowLevelTool.js +17 -17
  168. package/dist/cjs/tools/WindowLevelTool.js.map +1 -1
  169. package/dist/cjs/tools/annotation/BidirectionalTool.d.ts +3 -3
  170. package/dist/cjs/tools/annotation/BidirectionalTool.js +59 -40
  171. package/dist/cjs/tools/annotation/BidirectionalTool.js.map +1 -1
  172. package/dist/cjs/tools/annotation/EllipticalRoiTool.d.ts +3 -3
  173. package/dist/cjs/tools/annotation/EllipticalRoiTool.js +38 -38
  174. package/dist/cjs/tools/annotation/EllipticalRoiTool.js.map +1 -1
  175. package/dist/cjs/tools/annotation/LengthTool.d.ts +3 -3
  176. package/dist/cjs/tools/annotation/LengthTool.js +53 -34
  177. package/dist/cjs/tools/annotation/LengthTool.js.map +1 -1
  178. package/dist/cjs/tools/annotation/ProbeTool.d.ts +5 -5
  179. package/dist/cjs/tools/annotation/ProbeTool.js +36 -36
  180. package/dist/cjs/tools/annotation/ProbeTool.js.map +1 -1
  181. package/dist/cjs/tools/annotation/RectangleRoiTool.d.ts +3 -3
  182. package/dist/cjs/tools/annotation/RectangleRoiTool.js +57 -38
  183. package/dist/cjs/tools/annotation/RectangleRoiTool.js.map +1 -1
  184. package/dist/cjs/tools/base/BaseTool.d.ts +5 -5
  185. package/dist/cjs/tools/base/BaseTool.js +16 -16
  186. package/dist/cjs/tools/base/BaseTool.js.map +1 -1
  187. package/dist/cjs/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +2 -0
  188. package/dist/cjs/tools/displayTools/Labelmap/addLabelmapToElement.js +29 -0
  189. package/dist/cjs/tools/displayTools/Labelmap/addLabelmapToElement.js.map +1 -0
  190. package/dist/cjs/tools/displayTools/Labelmap/index.d.ts +3 -3
  191. package/dist/cjs/tools/displayTools/Labelmap/index.js +5 -5
  192. package/dist/cjs/tools/displayTools/Labelmap/labelmapConfig.d.ts +5 -0
  193. package/dist/cjs/tools/displayTools/Labelmap/{LabelmapConfig.js → labelmapConfig.js} +1 -1
  194. package/dist/cjs/tools/displayTools/Labelmap/labelmapConfig.js.map +1 -0
  195. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.d.ts +11 -0
  196. package/dist/cjs/tools/displayTools/Labelmap/{LabelmapDisplay.js → labelmapDisplay.js} +78 -69
  197. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -0
  198. package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.d.ts +2 -0
  199. package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.js +12 -0
  200. package/dist/cjs/tools/displayTools/Labelmap/removeLabelmapFromElement.js.map +1 -0
  201. package/dist/cjs/tools/displayTools/Labelmap/validateRepresentationData.d.ts +3 -0
  202. package/dist/cjs/tools/displayTools/Labelmap/validateRepresentationData.js +18 -0
  203. package/dist/cjs/tools/displayTools/Labelmap/validateRepresentationData.js.map +1 -0
  204. package/dist/cjs/tools/displayTools/SegmentationDisplayTool.d.ts +3 -3
  205. package/dist/cjs/tools/displayTools/SegmentationDisplayTool.js +25 -24
  206. package/dist/cjs/tools/displayTools/SegmentationDisplayTool.js.map +1 -1
  207. package/dist/cjs/tools/segmentation/CircleScissorsTool.d.ts +2 -2
  208. package/dist/cjs/tools/segmentation/CircleScissorsTool.js +22 -20
  209. package/dist/cjs/tools/segmentation/CircleScissorsTool.js.map +1 -1
  210. package/dist/cjs/tools/segmentation/RectangleRoiStartEndThresholdTool.d.ts +3 -3
  211. package/dist/cjs/tools/segmentation/RectangleRoiStartEndThresholdTool.js +13 -13
  212. package/dist/cjs/tools/segmentation/RectangleRoiStartEndThresholdTool.js.map +1 -1
  213. package/dist/cjs/tools/segmentation/RectangleRoiThresholdTool.d.ts +4 -4
  214. package/dist/cjs/tools/segmentation/RectangleRoiThresholdTool.js +12 -12
  215. package/dist/cjs/tools/segmentation/RectangleRoiThresholdTool.js.map +1 -1
  216. package/dist/cjs/tools/segmentation/RectangleScissorsTool.d.ts +2 -2
  217. package/dist/cjs/tools/segmentation/RectangleScissorsTool.js +20 -18
  218. package/dist/cjs/tools/segmentation/RectangleScissorsTool.js.map +1 -1
  219. package/dist/cjs/tools/segmentation/SphereScissorsTool.d.ts +3 -3
  220. package/dist/cjs/tools/segmentation/SphereScissorsTool.js +23 -21
  221. package/dist/cjs/tools/segmentation/SphereScissorsTool.js.map +1 -1
  222. package/dist/cjs/tools/segmentation/strategies/eraseRectangle.d.ts +1 -2
  223. package/dist/cjs/tools/segmentation/strategies/eraseRectangle.js +2 -2
  224. package/dist/cjs/tools/segmentation/strategies/eraseRectangle.js.map +1 -1
  225. package/dist/cjs/tools/segmentation/strategies/fillCircle.d.ts +1 -2
  226. package/dist/cjs/tools/segmentation/strategies/fillCircle.js +2 -2
  227. package/dist/cjs/tools/segmentation/strategies/fillCircle.js.map +1 -1
  228. package/dist/cjs/tools/segmentation/strategies/fillRectangle.d.ts +1 -2
  229. package/dist/cjs/tools/segmentation/strategies/fillRectangle.js +2 -2
  230. package/dist/cjs/tools/segmentation/strategies/fillRectangle.js.map +1 -1
  231. package/dist/cjs/tools/segmentation/strategies/fillSphere.d.ts +1 -2
  232. package/dist/cjs/tools/segmentation/strategies/fillSphere.js +2 -2
  233. package/dist/cjs/tools/segmentation/strategies/fillSphere.js.map +1 -1
  234. package/dist/cjs/types/AnnotationTypes.d.ts +1 -1
  235. package/dist/cjs/types/EventTypes.d.ts +28 -23
  236. package/dist/cjs/types/IToolGroup.d.ts +5 -5
  237. package/dist/cjs/types/LabelmapTypes.d.ts +19 -0
  238. package/dist/cjs/types/{SegmentationRepresentationTypes.js → LabelmapTypes.js} +1 -1
  239. package/dist/cjs/types/LabelmapTypes.js.map +1 -0
  240. package/dist/cjs/types/SegmentationStateTypes.d.ts +41 -32
  241. package/dist/cjs/types/index.d.ts +2 -3
  242. package/dist/cjs/utilities/drawing/index.d.ts +0 -4
  243. package/dist/cjs/utilities/drawing/index.js +0 -1
  244. package/dist/cjs/utilities/drawing/index.js.map +1 -1
  245. package/dist/cjs/utilities/getAnnotationNearPoint.js +21 -5
  246. package/dist/cjs/utilities/getAnnotationNearPoint.js.map +1 -1
  247. package/dist/cjs/utilities/getToolsWithModesForElement.js +2 -2
  248. package/dist/cjs/utilities/getToolsWithModesForElement.js.map +1 -1
  249. package/dist/cjs/utilities/index.d.ts +2 -23
  250. package/dist/cjs/utilities/index.js +3 -23
  251. package/dist/cjs/utilities/index.js.map +1 -1
  252. package/dist/cjs/utilities/math/ellipse/index.d.ts +0 -5
  253. package/dist/cjs/utilities/math/ellipse/index.js +0 -1
  254. package/dist/cjs/utilities/math/ellipse/index.js.map +1 -1
  255. package/dist/cjs/utilities/math/index.d.ts +4 -23
  256. package/dist/cjs/utilities/math/index.js +26 -11
  257. package/dist/cjs/utilities/math/index.js.map +1 -1
  258. package/dist/cjs/utilities/math/line/distanceToPoint.d.ts +1 -1
  259. package/dist/cjs/utilities/math/line/index.d.ts +1 -6
  260. package/dist/cjs/utilities/math/line/index.js +4 -6
  261. package/dist/cjs/utilities/math/line/index.js.map +1 -1
  262. package/dist/cjs/utilities/math/line/intersectLine.d.ts +1 -1
  263. package/dist/cjs/utilities/math/rectangle/distanceToPoint.js +20 -4
  264. package/dist/cjs/utilities/math/rectangle/distanceToPoint.js.map +1 -1
  265. package/dist/cjs/utilities/math/rectangle/index.d.ts +1 -4
  266. package/dist/cjs/utilities/math/rectangle/index.js +2 -4
  267. package/dist/cjs/utilities/math/rectangle/index.js.map +1 -1
  268. package/dist/cjs/utilities/math/vec2/index.d.ts +1 -5
  269. package/dist/cjs/utilities/math/vec2/index.js +3 -1
  270. package/dist/cjs/utilities/math/vec2/index.js.map +1 -1
  271. package/dist/cjs/utilities/planar/getPointInLineOfSightWithCriteria.d.ts +1 -1
  272. package/dist/cjs/utilities/planar/getPointInLineOfSightWithCriteria.js +2 -2
  273. package/dist/cjs/utilities/planar/getPointInLineOfSightWithCriteria.js.map +1 -1
  274. package/dist/cjs/utilities/segmentation/createMergedLabelmapForIndex.d.ts +1 -1
  275. package/dist/cjs/utilities/segmentation/createMergedLabelmapForIndex.js +2 -2
  276. package/dist/cjs/utilities/segmentation/createMergedLabelmapForIndex.js.map +1 -1
  277. package/dist/cjs/utilities/segmentation/getDefaultRepresentationConfig.d.ts +2 -1
  278. package/dist/cjs/utilities/segmentation/getDefaultRepresentationConfig.js +4 -3
  279. package/dist/cjs/utilities/segmentation/getDefaultRepresentationConfig.js.map +1 -1
  280. package/dist/cjs/utilities/segmentation/index.d.ts +1 -12
  281. package/dist/cjs/utilities/segmentation/index.js +1 -12
  282. package/dist/cjs/utilities/segmentation/index.js.map +1 -1
  283. package/dist/cjs/utilities/segmentation/isValidRepresentationConfig.js +2 -2
  284. package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.d.ts +2 -2
  285. package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.js +10 -9
  286. package/dist/cjs/utilities/segmentation/thresholdVolumeByRange.js.map +1 -1
  287. package/dist/cjs/utilities/stackScrollTool/scrollThroughStack.d.ts +1 -1
  288. package/dist/cjs/utilities/stackScrollTool/scrollThroughStack.js +4 -4
  289. package/dist/cjs/utilities/stackScrollTool/scrollThroughStack.js.map +1 -1
  290. package/dist/cjs/utilities/triggerAnnotationRender.d.ts +2 -2
  291. package/dist/cjs/utilities/triggerAnnotationRender.js +8 -8
  292. package/dist/cjs/utilities/triggerAnnotationRender.js.map +1 -1
  293. package/dist/cjs/utilities/triggerAnnotationRenderForViewportIds.d.ts +3 -0
  294. package/dist/cjs/utilities/{triggerAnnotationRenderForViewportUIDs.js → triggerAnnotationRenderForViewportIds.js} +8 -8
  295. package/dist/cjs/utilities/triggerAnnotationRenderForViewportIds.js.map +1 -0
  296. package/dist/cjs/utilities/triggerSegmentationRender.d.ts +3 -3
  297. package/dist/cjs/utilities/triggerSegmentationRender.js +22 -22
  298. package/dist/cjs/utilities/triggerSegmentationRender.js.map +1 -1
  299. package/dist/cjs/utilities/viewportFilters/filterViewportsWithToolEnabled.js +1 -1
  300. package/dist/cjs/utilities/viewportFilters/filterViewportsWithToolEnabled.js.map +1 -1
  301. package/dist/cjs/utilities/viewportFilters/getViewportIdsWithToolToRender.d.ts +1 -0
  302. package/dist/cjs/utilities/viewportFilters/{getViewportUIDsWithToolToRender.js → getViewportIdsWithToolToRender.js} +6 -6
  303. package/dist/cjs/utilities/viewportFilters/getViewportIdsWithToolToRender.js.map +1 -0
  304. package/dist/cjs/utilities/viewportFilters/index.d.ts +2 -8
  305. package/dist/cjs/utilities/viewportFilters/index.js +3 -8
  306. package/dist/cjs/utilities/viewportFilters/index.js.map +1 -1
  307. package/dist/esm/{stateManagement/segmentation/helpers → constants}/COLOR_LUT.d.ts +0 -0
  308. package/dist/esm/{stateManagement/segmentation/helpers → constants}/COLOR_LUT.js +0 -0
  309. package/dist/esm/constants/COLOR_LUT.js.map +1 -0
  310. package/dist/esm/constants/index.d.ts +2 -0
  311. package/dist/esm/constants/index.js +3 -0
  312. package/dist/esm/constants/index.js.map +1 -0
  313. package/dist/esm/drawingSvg/getSvgDrawingHelper.js +2 -2
  314. package/dist/esm/drawingSvg/getSvgDrawingHelper.js.map +1 -1
  315. package/dist/esm/drawingSvg/index.d.ts +0 -11
  316. package/dist/esm/drawingSvg/index.js +0 -10
  317. package/dist/esm/drawingSvg/index.js.map +1 -1
  318. package/dist/esm/enums/Events.d.ts +3 -2
  319. package/dist/esm/enums/Events.js +3 -2
  320. package/dist/esm/enums/Events.js.map +1 -1
  321. package/dist/esm/eventDispatchers/annotationModifiedEventDispatcher.js +5 -5
  322. package/dist/esm/eventDispatchers/annotationModifiedEventDispatcher.js.map +1 -1
  323. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js +2 -2
  324. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js.map +1 -1
  325. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.js +2 -2
  326. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.js.map +1 -1
  327. package/dist/esm/eventDispatchers/shared/customCallbackHandler.js +2 -2
  328. package/dist/esm/eventDispatchers/shared/customCallbackHandler.js.map +1 -1
  329. package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.js +2 -2
  330. package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.js.map +1 -1
  331. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js +2 -2
  332. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js.map +1 -1
  333. package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.js +2 -2
  334. package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.js.map +1 -1
  335. package/dist/esm/eventListeners/annotations/annotationModifiedListener.js +4 -4
  336. package/dist/esm/eventListeners/annotations/annotationModifiedListener.js.map +1 -1
  337. package/dist/esm/eventListeners/annotations/annotationSelectionListener.js +3 -3
  338. package/dist/esm/eventListeners/annotations/annotationSelectionListener.js.map +1 -1
  339. package/dist/esm/eventListeners/index.d.ts +2 -2
  340. package/dist/esm/eventListeners/index.js +2 -2
  341. package/dist/esm/eventListeners/index.js.map +1 -1
  342. package/dist/esm/eventListeners/keyboard/keyDownListener.js +12 -12
  343. package/dist/esm/eventListeners/keyboard/keyDownListener.js.map +1 -1
  344. package/dist/esm/eventListeners/mouse/mouseDoubleClickListener.js +4 -4
  345. package/dist/esm/eventListeners/mouse/mouseDoubleClickListener.js.map +1 -1
  346. package/dist/esm/eventListeners/mouse/mouseDownListener.js +14 -14
  347. package/dist/esm/eventListeners/mouse/mouseDownListener.js.map +1 -1
  348. package/dist/esm/eventListeners/mouse/mouseMoveListener.js +4 -4
  349. package/dist/esm/eventListeners/mouse/mouseMoveListener.js.map +1 -1
  350. package/dist/esm/eventListeners/segmentation/index.d.ts +4 -2
  351. package/dist/esm/eventListeners/segmentation/index.js +4 -2
  352. package/dist/esm/eventListeners/segmentation/index.js.map +1 -1
  353. package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +10 -15
  354. package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js.map +1 -1
  355. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.d.ts +3 -0
  356. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.js +16 -0
  357. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.js.map +1 -0
  358. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.d.ts +3 -0
  359. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.js +7 -0
  360. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedEventListener.js.map +1 -0
  361. package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.d.ts +3 -0
  362. package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js +7 -0
  363. package/dist/esm/eventListeners/segmentation/segmentationRepresentationRemovedEventListener.js.map +1 -0
  364. package/dist/esm/eventListeners/wheel/wheelListener.js +4 -4
  365. package/dist/esm/eventListeners/wheel/wheelListener.js.map +1 -1
  366. package/dist/esm/index.d.ts +2 -1
  367. package/dist/esm/index.js +2 -1
  368. package/dist/esm/index.js.map +1 -1
  369. package/dist/esm/init.js +16 -20
  370. package/dist/esm/init.js.map +1 -1
  371. package/dist/esm/stateManagement/annotation/annotationState.js +6 -6
  372. package/dist/esm/stateManagement/annotation/annotationState.js.map +1 -1
  373. package/dist/esm/stateManagement/index.d.ts +2 -2
  374. package/dist/esm/stateManagement/index.js +2 -2
  375. package/dist/esm/stateManagement/index.js.map +1 -1
  376. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.d.ts +15 -18
  377. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js +91 -126
  378. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js.map +1 -1
  379. package/dist/esm/stateManagement/segmentation/activeSegmentation.d.ts +4 -12
  380. package/dist/esm/stateManagement/segmentation/activeSegmentation.js +14 -18
  381. package/dist/esm/stateManagement/segmentation/activeSegmentation.js.map +1 -1
  382. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.d.ts +3 -0
  383. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.js +23 -0
  384. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentations.js.map +1 -0
  385. package/dist/esm/stateManagement/segmentation/addSegmentations.d.ts +3 -0
  386. package/dist/esm/stateManagement/segmentation/addSegmentations.js +12 -0
  387. package/dist/esm/stateManagement/segmentation/addSegmentations.js.map +1 -0
  388. package/dist/esm/stateManagement/segmentation/createNewSegmentationForToolGroup.d.ts +2 -2
  389. package/dist/esm/stateManagement/segmentation/createNewSegmentationForToolGroup.js +13 -13
  390. package/dist/esm/stateManagement/segmentation/createNewSegmentationForToolGroup.js.map +1 -1
  391. package/dist/esm/stateManagement/segmentation/helpers/index.d.ts +2 -4
  392. package/dist/esm/stateManagement/segmentation/helpers/index.js +2 -4
  393. package/dist/esm/stateManagement/segmentation/helpers/index.js.map +1 -1
  394. package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.d.ts +3 -0
  395. package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.js +18 -0
  396. package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.js.map +1 -0
  397. package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.d.ts +3 -0
  398. package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.js +21 -0
  399. package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.js.map +1 -0
  400. package/dist/esm/stateManagement/segmentation/index.d.ts +3 -2
  401. package/dist/esm/stateManagement/segmentation/index.js +3 -2
  402. package/dist/esm/stateManagement/segmentation/index.js.map +1 -1
  403. package/dist/esm/stateManagement/segmentation/removeSegmentationsFromToolGroup.d.ts +1 -1
  404. package/dist/esm/stateManagement/segmentation/removeSegmentationsFromToolGroup.js +24 -19
  405. package/dist/esm/stateManagement/segmentation/removeSegmentationsFromToolGroup.js.map +1 -1
  406. package/dist/esm/stateManagement/segmentation/segmentIndex.d.ts +4 -11
  407. package/dist/esm/stateManagement/segmentation/segmentIndex.js +27 -33
  408. package/dist/esm/stateManagement/segmentation/segmentIndex.js.map +1 -1
  409. package/dist/esm/stateManagement/segmentation/segmentLocking.d.ts +5 -13
  410. package/dist/esm/stateManagement/segmentation/segmentLocking.js +31 -38
  411. package/dist/esm/stateManagement/segmentation/segmentLocking.js.map +1 -1
  412. package/dist/esm/stateManagement/segmentation/segmentationColor.d.ts +3 -8
  413. package/dist/esm/stateManagement/segmentation/segmentationColor.js +5 -6
  414. package/dist/esm/stateManagement/segmentation/segmentationColor.js.map +1 -1
  415. package/dist/esm/stateManagement/segmentation/segmentationConfig.d.ts +8 -25
  416. package/dist/esm/stateManagement/segmentation/segmentationConfig.js +12 -58
  417. package/dist/esm/stateManagement/segmentation/segmentationConfig.js.map +1 -1
  418. package/dist/esm/stateManagement/segmentation/segmentationState.d.ts +16 -19
  419. package/dist/esm/stateManagement/segmentation/segmentationState.js +68 -91
  420. package/dist/esm/stateManagement/segmentation/segmentationState.js.map +1 -1
  421. package/dist/esm/stateManagement/segmentation/segmentationVisibility.d.ts +2 -7
  422. package/dist/esm/stateManagement/segmentation/segmentationVisibility.js +14 -13
  423. package/dist/esm/stateManagement/segmentation/segmentationVisibility.js.map +1 -1
  424. package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.d.ts +5 -4
  425. package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.js +35 -21
  426. package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.js.map +1 -1
  427. package/dist/esm/store/SynchronizerManager/Synchronizer.d.ts +10 -10
  428. package/dist/esm/store/SynchronizerManager/Synchronizer.js +19 -19
  429. package/dist/esm/store/SynchronizerManager/Synchronizer.js.map +1 -1
  430. package/dist/esm/store/SynchronizerManager/getSynchronizers.d.ts +1 -1
  431. package/dist/esm/store/SynchronizerManager/getSynchronizers.js +7 -7
  432. package/dist/esm/store/SynchronizerManager/getSynchronizers.js.map +1 -1
  433. package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +5 -5
  434. package/dist/esm/store/ToolGroupManager/ToolGroup.js +22 -22
  435. package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
  436. package/dist/esm/store/ToolGroupManager/createToolGroup.d.ts +1 -1
  437. package/dist/esm/store/ToolGroupManager/createToolGroup.js +4 -4
  438. package/dist/esm/store/ToolGroupManager/createToolGroup.js.map +1 -1
  439. package/dist/esm/store/ToolGroupManager/destroy.js +2 -2
  440. package/dist/esm/store/ToolGroupManager/destroy.js.map +1 -1
  441. package/dist/esm/store/ToolGroupManager/destroyToolGroupById.d.ts +2 -0
  442. package/dist/esm/store/ToolGroupManager/{destroyToolGroupByToolGroupUID.js → destroyToolGroupById.js} +5 -5
  443. package/dist/esm/store/ToolGroupManager/destroyToolGroupById.js.map +1 -0
  444. package/dist/esm/store/ToolGroupManager/getToolGroup.d.ts +1 -1
  445. package/dist/esm/store/ToolGroupManager/getToolGroup.js +7 -7
  446. package/dist/esm/store/ToolGroupManager/getToolGroup.js.map +1 -1
  447. package/dist/esm/store/ToolGroupManager/getToolGroupById.d.ts +3 -0
  448. package/dist/esm/store/ToolGroupManager/getToolGroupById.js +6 -0
  449. package/dist/esm/store/ToolGroupManager/getToolGroupById.js.map +1 -0
  450. package/dist/esm/store/ToolGroupManager/index.d.ts +3 -12
  451. package/dist/esm/store/ToolGroupManager/index.js +3 -11
  452. package/dist/esm/store/ToolGroupManager/index.js.map +1 -1
  453. package/dist/esm/store/addEnabledElement.js +4 -4
  454. package/dist/esm/store/addEnabledElement.js.map +1 -1
  455. package/dist/esm/store/removeEnabledElement.js +8 -8
  456. package/dist/esm/store/removeEnabledElement.js.map +1 -1
  457. package/dist/esm/synchronizers/callbacks/cameraSyncCallback.d.ts +1 -1
  458. package/dist/esm/synchronizers/callbacks/cameraSyncCallback.js +5 -5
  459. package/dist/esm/synchronizers/callbacks/cameraSyncCallback.js.map +1 -1
  460. package/dist/esm/synchronizers/callbacks/voiSyncCallback.d.ts +1 -1
  461. package/dist/esm/synchronizers/callbacks/voiSyncCallback.js +5 -5
  462. package/dist/esm/synchronizers/callbacks/voiSyncCallback.js.map +1 -1
  463. package/dist/esm/tools/CrosshairsTool.d.ts +10 -10
  464. package/dist/esm/tools/CrosshairsTool.js +109 -109
  465. package/dist/esm/tools/CrosshairsTool.js.map +1 -1
  466. package/dist/esm/tools/MIPJumpToClickTool.js +6 -6
  467. package/dist/esm/tools/MIPJumpToClickTool.js.map +1 -1
  468. package/dist/esm/tools/StackScrollTool.js +5 -5
  469. package/dist/esm/tools/StackScrollTool.js.map +1 -1
  470. package/dist/esm/tools/StackScrollToolMouseWheelTool.js +2 -2
  471. package/dist/esm/tools/StackScrollToolMouseWheelTool.js.map +1 -1
  472. package/dist/esm/tools/WindowLevelTool.d.ts +4 -4
  473. package/dist/esm/tools/WindowLevelTool.js +17 -17
  474. package/dist/esm/tools/WindowLevelTool.js.map +1 -1
  475. package/dist/esm/tools/annotation/BidirectionalTool.d.ts +3 -3
  476. package/dist/esm/tools/annotation/BidirectionalTool.js +36 -36
  477. package/dist/esm/tools/annotation/BidirectionalTool.js.map +1 -1
  478. package/dist/esm/tools/annotation/EllipticalRoiTool.d.ts +3 -3
  479. package/dist/esm/tools/annotation/EllipticalRoiTool.js +39 -39
  480. package/dist/esm/tools/annotation/EllipticalRoiTool.js.map +1 -1
  481. package/dist/esm/tools/annotation/LengthTool.d.ts +3 -3
  482. package/dist/esm/tools/annotation/LengthTool.js +34 -34
  483. package/dist/esm/tools/annotation/LengthTool.js.map +1 -1
  484. package/dist/esm/tools/annotation/ProbeTool.d.ts +5 -5
  485. package/dist/esm/tools/annotation/ProbeTool.js +37 -37
  486. package/dist/esm/tools/annotation/ProbeTool.js.map +1 -1
  487. package/dist/esm/tools/annotation/RectangleRoiTool.d.ts +3 -3
  488. package/dist/esm/tools/annotation/RectangleRoiTool.js +38 -38
  489. package/dist/esm/tools/annotation/RectangleRoiTool.js.map +1 -1
  490. package/dist/esm/tools/base/BaseTool.d.ts +5 -5
  491. package/dist/esm/tools/base/BaseTool.js +16 -16
  492. package/dist/esm/tools/base/BaseTool.js.map +1 -1
  493. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +2 -0
  494. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +16 -0
  495. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js.map +1 -0
  496. package/dist/esm/tools/displayTools/Labelmap/index.d.ts +3 -3
  497. package/dist/esm/tools/displayTools/Labelmap/index.js +3 -3
  498. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.d.ts +5 -0
  499. package/dist/esm/tools/displayTools/Labelmap/{LabelmapConfig.js → labelmapConfig.js} +1 -1
  500. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.js.map +1 -0
  501. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.d.ts +11 -0
  502. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +158 -0
  503. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -0
  504. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.d.ts +2 -0
  505. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js +10 -0
  506. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js.map +1 -0
  507. package/dist/esm/tools/displayTools/Labelmap/validateRepresentationData.d.ts +3 -0
  508. package/dist/esm/tools/displayTools/Labelmap/validateRepresentationData.js +16 -0
  509. package/dist/esm/tools/displayTools/Labelmap/validateRepresentationData.js.map +1 -0
  510. package/dist/esm/tools/displayTools/SegmentationDisplayTool.d.ts +3 -3
  511. package/dist/esm/tools/displayTools/SegmentationDisplayTool.js +30 -29
  512. package/dist/esm/tools/displayTools/SegmentationDisplayTool.js.map +1 -1
  513. package/dist/esm/tools/segmentation/CircleScissorsTool.d.ts +2 -2
  514. package/dist/esm/tools/segmentation/CircleScissorsTool.js +23 -21
  515. package/dist/esm/tools/segmentation/CircleScissorsTool.js.map +1 -1
  516. package/dist/esm/tools/segmentation/RectangleRoiStartEndThresholdTool.d.ts +3 -3
  517. package/dist/esm/tools/segmentation/RectangleRoiStartEndThresholdTool.js +14 -14
  518. package/dist/esm/tools/segmentation/RectangleRoiStartEndThresholdTool.js.map +1 -1
  519. package/dist/esm/tools/segmentation/RectangleRoiThresholdTool.d.ts +4 -4
  520. package/dist/esm/tools/segmentation/RectangleRoiThresholdTool.js +13 -13
  521. package/dist/esm/tools/segmentation/RectangleRoiThresholdTool.js.map +1 -1
  522. package/dist/esm/tools/segmentation/RectangleScissorsTool.d.ts +2 -2
  523. package/dist/esm/tools/segmentation/RectangleScissorsTool.js +21 -19
  524. package/dist/esm/tools/segmentation/RectangleScissorsTool.js.map +1 -1
  525. package/dist/esm/tools/segmentation/SphereScissorsTool.d.ts +3 -3
  526. package/dist/esm/tools/segmentation/SphereScissorsTool.js +24 -22
  527. package/dist/esm/tools/segmentation/SphereScissorsTool.js.map +1 -1
  528. package/dist/esm/tools/segmentation/strategies/eraseRectangle.d.ts +1 -2
  529. package/dist/esm/tools/segmentation/strategies/eraseRectangle.js +2 -2
  530. package/dist/esm/tools/segmentation/strategies/eraseRectangle.js.map +1 -1
  531. package/dist/esm/tools/segmentation/strategies/fillCircle.d.ts +1 -2
  532. package/dist/esm/tools/segmentation/strategies/fillCircle.js +2 -2
  533. package/dist/esm/tools/segmentation/strategies/fillCircle.js.map +1 -1
  534. package/dist/esm/tools/segmentation/strategies/fillRectangle.d.ts +1 -2
  535. package/dist/esm/tools/segmentation/strategies/fillRectangle.js +2 -2
  536. package/dist/esm/tools/segmentation/strategies/fillRectangle.js.map +1 -1
  537. package/dist/esm/tools/segmentation/strategies/fillSphere.d.ts +1 -2
  538. package/dist/esm/tools/segmentation/strategies/fillSphere.js +2 -2
  539. package/dist/esm/tools/segmentation/strategies/fillSphere.js.map +1 -1
  540. package/dist/esm/types/AnnotationTypes.d.ts +1 -1
  541. package/dist/esm/types/EventTypes.d.ts +28 -23
  542. package/dist/esm/types/IToolGroup.d.ts +5 -5
  543. package/dist/esm/types/LabelmapTypes.d.ts +19 -0
  544. package/dist/esm/types/LabelmapTypes.js +2 -0
  545. package/dist/esm/types/LabelmapTypes.js.map +1 -0
  546. package/dist/esm/types/SegmentationStateTypes.d.ts +41 -32
  547. package/dist/esm/types/index.d.ts +2 -3
  548. package/dist/esm/utilities/drawing/index.d.ts +0 -4
  549. package/dist/esm/utilities/drawing/index.js +0 -1
  550. package/dist/esm/utilities/drawing/index.js.map +1 -1
  551. package/dist/esm/utilities/getAnnotationNearPoint.js +3 -3
  552. package/dist/esm/utilities/getAnnotationNearPoint.js.map +1 -1
  553. package/dist/esm/utilities/getToolsWithModesForElement.js +2 -2
  554. package/dist/esm/utilities/getToolsWithModesForElement.js.map +1 -1
  555. package/dist/esm/utilities/index.d.ts +2 -23
  556. package/dist/esm/utilities/index.js +2 -22
  557. package/dist/esm/utilities/index.js.map +1 -1
  558. package/dist/esm/utilities/math/ellipse/index.d.ts +0 -5
  559. package/dist/esm/utilities/math/ellipse/index.js +0 -1
  560. package/dist/esm/utilities/math/ellipse/index.js.map +1 -1
  561. package/dist/esm/utilities/math/index.d.ts +4 -23
  562. package/dist/esm/utilities/math/index.js +4 -5
  563. package/dist/esm/utilities/math/index.js.map +1 -1
  564. package/dist/esm/utilities/math/line/distanceToPoint.d.ts +1 -1
  565. package/dist/esm/utilities/math/line/index.d.ts +1 -6
  566. package/dist/esm/utilities/math/line/index.js +1 -6
  567. package/dist/esm/utilities/math/line/index.js.map +1 -1
  568. package/dist/esm/utilities/math/line/intersectLine.d.ts +1 -1
  569. package/dist/esm/utilities/math/rectangle/distanceToPoint.js +1 -1
  570. package/dist/esm/utilities/math/rectangle/distanceToPoint.js.map +1 -1
  571. package/dist/esm/utilities/math/rectangle/index.d.ts +1 -4
  572. package/dist/esm/utilities/math/rectangle/index.js +1 -4
  573. package/dist/esm/utilities/math/rectangle/index.js.map +1 -1
  574. package/dist/esm/utilities/math/vec2/index.d.ts +1 -5
  575. package/dist/esm/utilities/math/vec2/index.js +1 -1
  576. package/dist/esm/utilities/math/vec2/index.js.map +1 -1
  577. package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.d.ts +1 -1
  578. package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.js +2 -2
  579. package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.js.map +1 -1
  580. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.d.ts +1 -1
  581. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.js +3 -3
  582. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.js.map +1 -1
  583. package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.d.ts +2 -1
  584. package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.js +3 -2
  585. package/dist/esm/utilities/segmentation/getDefaultRepresentationConfig.js.map +1 -1
  586. package/dist/esm/utilities/segmentation/index.d.ts +1 -12
  587. package/dist/esm/utilities/segmentation/index.js +1 -11
  588. package/dist/esm/utilities/segmentation/index.js.map +1 -1
  589. package/dist/esm/utilities/segmentation/isValidRepresentationConfig.js +1 -1
  590. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.d.ts +2 -2
  591. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +10 -9
  592. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js.map +1 -1
  593. package/dist/esm/utilities/stackScrollTool/scrollThroughStack.d.ts +1 -1
  594. package/dist/esm/utilities/stackScrollTool/scrollThroughStack.js +4 -4
  595. package/dist/esm/utilities/stackScrollTool/scrollThroughStack.js.map +1 -1
  596. package/dist/esm/utilities/triggerAnnotationRender.d.ts +2 -2
  597. package/dist/esm/utilities/triggerAnnotationRender.js +8 -8
  598. package/dist/esm/utilities/triggerAnnotationRender.js.map +1 -1
  599. package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.d.ts +3 -0
  600. package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.js +12 -0
  601. package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.js.map +1 -0
  602. package/dist/esm/utilities/triggerSegmentationRender.d.ts +3 -3
  603. package/dist/esm/utilities/triggerSegmentationRender.js +23 -23
  604. package/dist/esm/utilities/triggerSegmentationRender.js.map +1 -1
  605. package/dist/esm/utilities/viewportFilters/filterViewportsWithToolEnabled.js +1 -1
  606. package/dist/esm/utilities/viewportFilters/filterViewportsWithToolEnabled.js.map +1 -1
  607. package/dist/esm/utilities/viewportFilters/getViewportIdsWithToolToRender.d.ts +1 -0
  608. package/dist/esm/utilities/viewportFilters/{getViewportUIDsWithToolToRender.js → getViewportIdsWithToolToRender.js} +5 -5
  609. package/dist/esm/utilities/viewportFilters/getViewportIdsWithToolToRender.js.map +1 -0
  610. package/dist/esm/utilities/viewportFilters/index.d.ts +2 -8
  611. package/dist/esm/utilities/viewportFilters/index.js +2 -7
  612. package/dist/esm/utilities/viewportFilters/index.js.map +1 -1
  613. package/dist/tools.d.ts +415 -520
  614. package/dist/umd/index.js +2 -1
  615. package/dist/umd/index.js.LICENSE.txt +6 -0
  616. package/dist/umd/index.js.map +1 -1
  617. package/package.json +5 -4
  618. package/dist/cjs/eventListeners/segmentation/segmentationStateModifiedEventListener.d.ts +0 -3
  619. package/dist/cjs/eventListeners/segmentation/segmentationStateModifiedEventListener.js.map +0 -1
  620. package/dist/cjs/stateManagement/segmentation/addSegmentationsForToolGroup.d.ts +0 -3
  621. package/dist/cjs/stateManagement/segmentation/addSegmentationsForToolGroup.js +0 -59
  622. package/dist/cjs/stateManagement/segmentation/addSegmentationsForToolGroup.js.map +0 -1
  623. package/dist/cjs/stateManagement/segmentation/helpers/COLOR_LUT.js.map +0 -1
  624. package/dist/cjs/stateManagement/segmentation/helpers/checkSegmentationDataIsValid.d.ts +0 -3
  625. package/dist/cjs/stateManagement/segmentation/helpers/checkSegmentationDataIsValid.js +0 -14
  626. package/dist/cjs/stateManagement/segmentation/helpers/checkSegmentationDataIsValid.js.map +0 -1
  627. package/dist/cjs/stateManagement/segmentation/helpers/internalAddSegmentationToElement.d.ts +0 -3
  628. package/dist/cjs/stateManagement/segmentation/helpers/internalAddSegmentationToElement.js +0 -43
  629. package/dist/cjs/stateManagement/segmentation/helpers/internalAddSegmentationToElement.js.map +0 -1
  630. package/dist/cjs/stateManagement/segmentation/helpers/internalRemoveSegmentationFromElement.d.ts +0 -3
  631. package/dist/cjs/stateManagement/segmentation/helpers/internalRemoveSegmentationFromElement.js +0 -23
  632. package/dist/cjs/stateManagement/segmentation/helpers/internalRemoveSegmentationFromElement.js.map +0 -1
  633. package/dist/cjs/store/ToolGroupManager/destroyToolGroupByToolGroupUID.d.ts +0 -2
  634. package/dist/cjs/store/ToolGroupManager/destroyToolGroupByToolGroupUID.js.map +0 -1
  635. package/dist/cjs/store/ToolGroupManager/getToolGroupByToolGroupUID.d.ts +0 -3
  636. package/dist/cjs/store/ToolGroupManager/getToolGroupByToolGroupUID.js +0 -8
  637. package/dist/cjs/store/ToolGroupManager/getToolGroupByToolGroupUID.js.map +0 -1
  638. package/dist/cjs/tools/displayTools/Labelmap/LabelmapConfig.d.ts +0 -13
  639. package/dist/cjs/tools/displayTools/Labelmap/LabelmapConfig.js.map +0 -1
  640. package/dist/cjs/tools/displayTools/Labelmap/LabelmapDisplay.d.ts +0 -11
  641. package/dist/cjs/tools/displayTools/Labelmap/LabelmapDisplay.js.map +0 -1
  642. package/dist/cjs/types/SegmentationRepresentationTypes.d.ts +0 -11
  643. package/dist/cjs/types/SegmentationRepresentationTypes.js.map +0 -1
  644. package/dist/cjs/utilities/segmentation/thresholdVolumeByRoiStats.d.ts +0 -11
  645. package/dist/cjs/utilities/segmentation/thresholdVolumeByRoiStats.js +0 -111
  646. package/dist/cjs/utilities/segmentation/thresholdVolumeByRoiStats.js.map +0 -1
  647. package/dist/cjs/utilities/triggerAnnotationRenderForViewportUIDs.d.ts +0 -3
  648. package/dist/cjs/utilities/triggerAnnotationRenderForViewportUIDs.js.map +0 -1
  649. package/dist/cjs/utilities/viewportFilters/getViewportUIDsWithToolToRender.d.ts +0 -1
  650. package/dist/cjs/utilities/viewportFilters/getViewportUIDsWithToolToRender.js.map +0 -1
  651. package/dist/esm/eventListeners/segmentation/segmentationStateModifiedEventListener.d.ts +0 -3
  652. package/dist/esm/eventListeners/segmentation/segmentationStateModifiedEventListener.js +0 -7
  653. package/dist/esm/eventListeners/segmentation/segmentationStateModifiedEventListener.js.map +0 -1
  654. package/dist/esm/stateManagement/segmentation/addSegmentationsForToolGroup.d.ts +0 -3
  655. package/dist/esm/stateManagement/segmentation/addSegmentationsForToolGroup.js +0 -40
  656. package/dist/esm/stateManagement/segmentation/addSegmentationsForToolGroup.js.map +0 -1
  657. package/dist/esm/stateManagement/segmentation/helpers/checkSegmentationDataIsValid.d.ts +0 -3
  658. package/dist/esm/stateManagement/segmentation/helpers/checkSegmentationDataIsValid.js +0 -12
  659. package/dist/esm/stateManagement/segmentation/helpers/checkSegmentationDataIsValid.js.map +0 -1
  660. package/dist/esm/stateManagement/segmentation/helpers/internalAddSegmentationToElement.d.ts +0 -3
  661. package/dist/esm/stateManagement/segmentation/helpers/internalAddSegmentationToElement.js +0 -27
  662. package/dist/esm/stateManagement/segmentation/helpers/internalAddSegmentationToElement.js.map +0 -1
  663. package/dist/esm/stateManagement/segmentation/helpers/internalRemoveSegmentationFromElement.d.ts +0 -3
  664. package/dist/esm/stateManagement/segmentation/helpers/internalRemoveSegmentationFromElement.js +0 -18
  665. package/dist/esm/stateManagement/segmentation/helpers/internalRemoveSegmentationFromElement.js.map +0 -1
  666. package/dist/esm/store/ToolGroupManager/destroyToolGroupByToolGroupUID.d.ts +0 -2
  667. package/dist/esm/store/ToolGroupManager/destroyToolGroupByToolGroupUID.js.map +0 -1
  668. package/dist/esm/store/ToolGroupManager/getToolGroupByToolGroupUID.d.ts +0 -3
  669. package/dist/esm/store/ToolGroupManager/getToolGroupByToolGroupUID.js +0 -6
  670. package/dist/esm/store/ToolGroupManager/getToolGroupByToolGroupUID.js.map +0 -1
  671. package/dist/esm/tools/displayTools/Labelmap/LabelmapConfig.d.ts +0 -13
  672. package/dist/esm/tools/displayTools/Labelmap/LabelmapConfig.js.map +0 -1
  673. package/dist/esm/tools/displayTools/Labelmap/LabelmapDisplay.d.ts +0 -11
  674. package/dist/esm/tools/displayTools/Labelmap/LabelmapDisplay.js +0 -149
  675. package/dist/esm/tools/displayTools/Labelmap/LabelmapDisplay.js.map +0 -1
  676. package/dist/esm/types/SegmentationRepresentationTypes.d.ts +0 -11
  677. package/dist/esm/types/SegmentationRepresentationTypes.js +0 -2
  678. package/dist/esm/types/SegmentationRepresentationTypes.js.map +0 -1
  679. package/dist/esm/utilities/segmentation/thresholdVolumeByRoiStats.d.ts +0 -11
  680. package/dist/esm/utilities/segmentation/thresholdVolumeByRoiStats.js +0 -86
  681. package/dist/esm/utilities/segmentation/thresholdVolumeByRoiStats.js.map +0 -1
  682. package/dist/esm/utilities/triggerAnnotationRenderForViewportUIDs.d.ts +0 -3
  683. package/dist/esm/utilities/triggerAnnotationRenderForViewportUIDs.js +0 -12
  684. package/dist/esm/utilities/triggerAnnotationRenderForViewportUIDs.js.map +0 -1
  685. package/dist/esm/utilities/viewportFilters/getViewportUIDsWithToolToRender.d.ts +0 -1
  686. package/dist/esm/utilities/viewportFilters/getViewportUIDsWithToolToRender.js.map +0 -1
@@ -0,0 +1,158 @@
1
+ import vtkColorTransferFunction from 'vtk.js/Sources/Rendering/Core/ColorTransferFunction';
2
+ import vtkPiecewiseFunction from 'vtk.js/Sources/Common/DataModel/PiecewiseFunction';
3
+ import { cache, getEnabledElementByIds, utilities, } from '@cornerstonejs/core';
4
+ import * as SegmentationState from '../../../stateManagement/segmentation/segmentationState';
5
+ import Representations from '../../../enums/SegmentationRepresentations';
6
+ import { getToolGroupById } from '../../../store/ToolGroupManager';
7
+ import addLabelmapToElement from './addLabelmapToElement';
8
+ import { deepMerge } from '../../../utilities';
9
+ import removeLabelmapFromElement from './removeLabelmapFromElement';
10
+ const MAX_NUMBER_COLORS = 255;
11
+ const labelMapConfigCache = new Map();
12
+ async function addSegmentationRepresentation(toolGroupId, representationInput, toolGroupSpecificConfig) {
13
+ const { segmentationId } = representationInput;
14
+ const segmentation = SegmentationState.getSegmentation(segmentationId);
15
+ const { volumeId } = segmentation.representations[Representations.Labelmap];
16
+ const segmentationRepresentationUID = utilities.uuidv4();
17
+ await _addLabelmapToToolGroupViewports(toolGroupId, volumeId, segmentationRepresentationUID);
18
+ const segmentsHidden = new Set();
19
+ const visibility = true;
20
+ const colorLUTIndex = 0;
21
+ const active = true;
22
+ const cfun = vtkColorTransferFunction.newInstance();
23
+ const ofun = vtkPiecewiseFunction.newInstance();
24
+ const toolGroupSpecificRepresentation = {
25
+ segmentationId,
26
+ segmentationRepresentationUID,
27
+ type: Representations.Labelmap,
28
+ segmentsHidden,
29
+ visibility,
30
+ colorLUTIndex,
31
+ active,
32
+ config: {
33
+ cfun,
34
+ ofun,
35
+ },
36
+ };
37
+ if (toolGroupSpecificConfig) {
38
+ const suppressEvents = true;
39
+ const currentToolGroupConfig = SegmentationState.getToolGroupSpecificConfig(toolGroupId);
40
+ const mergedConfig = deepMerge(currentToolGroupConfig, toolGroupSpecificConfig);
41
+ SegmentationState.setToolGroupSpecificConfig(toolGroupId, {
42
+ renderInactiveSegmentations: mergedConfig.renderInactiveSegmentations || true,
43
+ representations: {
44
+ ...mergedConfig.representations,
45
+ },
46
+ }, suppressEvents);
47
+ }
48
+ SegmentationState.addSegmentationRepresentation(toolGroupId, toolGroupSpecificRepresentation);
49
+ }
50
+ function removeSegmentationRepresentation(toolGroupId, segmentationRepresentationUID) {
51
+ _removeLabelmapFromToolGroupViewports(toolGroupId, segmentationRepresentationUID);
52
+ SegmentationState.removeSegmentationRepresentation(toolGroupId, segmentationRepresentationUID);
53
+ }
54
+ function render(viewport, representation, toolGroupConfig) {
55
+ const { colorLUTIndex, active, segmentationId, segmentationRepresentationUID, visibility, config: renderingConfig, } = representation;
56
+ const segmentation = SegmentationState.getSegmentation(segmentationId);
57
+ const labelmapData = segmentation.representations[Representations.Labelmap];
58
+ const { volumeId: labelmapUID } = labelmapData;
59
+ const labelmap = cache.getVolume(labelmapUID);
60
+ if (!labelmap) {
61
+ throw new Error(`No Labelmap found for volumeId: ${labelmapUID}`);
62
+ }
63
+ const actor = viewport.getActor(segmentationRepresentationUID);
64
+ if (!actor) {
65
+ console.warn('No actor found for actorUID: ', segmentationRepresentationUID);
66
+ return;
67
+ }
68
+ const { cfun, ofun } = renderingConfig;
69
+ const labelmapConfig = toolGroupConfig.representations[Representations.Labelmap];
70
+ const renderInactiveSegmentations = toolGroupConfig.renderInactiveSegmentations;
71
+ _setLabelmapColorAndOpacity(viewport.id, actor, cfun, ofun, colorLUTIndex, labelmapConfig, active, renderInactiveSegmentations, visibility);
72
+ }
73
+ function _setLabelmapColorAndOpacity(viewportId, actor, cfun, ofun, colorLUTIndex, labelmapConfig, isActiveLabelmap, renderInactiveSegmentations, visibility = true) {
74
+ ofun.addPoint(0, 0);
75
+ const fillAlpha = isActiveLabelmap
76
+ ? labelmapConfig.fillAlpha
77
+ : labelmapConfig.fillAlphaInactive;
78
+ const outlineWidth = isActiveLabelmap
79
+ ? labelmapConfig.outlineWidthActive
80
+ : labelmapConfig.outlineWidthInactive;
81
+ const colorLUT = SegmentationState.getColorLut(colorLUTIndex);
82
+ const numColors = Math.min(256, colorLUT.length);
83
+ const { volumeActor, uid } = actor;
84
+ const { needColorUpdate, needOpacityUpdate } = _needsTransferFunctionUpdate(viewportId, uid, fillAlpha, colorLUTIndex);
85
+ if (needColorUpdate) {
86
+ for (let i = 0; i < numColors; i++) {
87
+ const color = colorLUT[i];
88
+ cfun.addRGBPoint(i, color[0] / MAX_NUMBER_COLORS, color[1] / MAX_NUMBER_COLORS, color[2] / MAX_NUMBER_COLORS);
89
+ }
90
+ volumeActor.getProperty().setRGBTransferFunction(0, cfun);
91
+ }
92
+ if (needOpacityUpdate) {
93
+ for (let i = 0; i < numColors; i++) {
94
+ const color = colorLUT[i];
95
+ const segmentOpacity = (color[3] / 255) * fillAlpha;
96
+ ofun.addPoint(i, segmentOpacity);
97
+ }
98
+ ofun.setClamping(false);
99
+ volumeActor.getProperty().setScalarOpacity(0, ofun);
100
+ }
101
+ volumeActor.getProperty().setInterpolationTypeToNearest();
102
+ volumeActor.getProperty().setUseLabelOutline(labelmapConfig.renderOutline);
103
+ volumeActor.getProperty().setLabelOutlineThickness(outlineWidth);
104
+ const visible = visibility && (isActiveLabelmap || renderInactiveSegmentations);
105
+ volumeActor.setVisibility(visible);
106
+ }
107
+ function _needsTransferFunctionUpdate(viewportId, actorUID, fillAlpha, colorLUTIndex) {
108
+ const cacheUID = `${viewportId}-${actorUID}`;
109
+ const config = labelMapConfigCache.get(cacheUID);
110
+ let needColorUpdate = false;
111
+ let needOpacityUpdate = false;
112
+ labelMapConfigCache.set(cacheUID, {
113
+ fillAlpha,
114
+ colorLUTIndex,
115
+ });
116
+ if (!config) {
117
+ needColorUpdate = true;
118
+ needOpacityUpdate = true;
119
+ }
120
+ if (config && config.fillAlpha !== fillAlpha) {
121
+ needOpacityUpdate = true;
122
+ }
123
+ if (config && config.colorLUTIndex !== colorLUTIndex) {
124
+ needColorUpdate = true;
125
+ }
126
+ return { needColorUpdate, needOpacityUpdate };
127
+ }
128
+ function _removeLabelmapFromToolGroupViewports(toolGroupId, segmentationRepresentationUID) {
129
+ const toolGroup = getToolGroupById(toolGroupId);
130
+ if (toolGroup === undefined) {
131
+ throw new Error(`ToolGroup with ToolGroupId ${toolGroupId} does not exist`);
132
+ }
133
+ const { viewportsInfo } = toolGroup;
134
+ for (const viewportInfo of viewportsInfo) {
135
+ const { viewportId, renderingEngineId } = viewportInfo;
136
+ const enabledElement = getEnabledElementByIds(viewportId, renderingEngineId);
137
+ removeLabelmapFromElement(enabledElement.viewport.element, segmentationRepresentationUID);
138
+ }
139
+ }
140
+ async function _addLabelmapToToolGroupViewports(toolGroupId, volumeId, segmentationRepresentationUID) {
141
+ const toolGroup = getToolGroupById(toolGroupId);
142
+ const { viewportsInfo } = toolGroup;
143
+ for (const viewportInfo of viewportsInfo) {
144
+ const { viewportId, renderingEngineId } = viewportInfo;
145
+ const enabledElement = getEnabledElementByIds(viewportId, renderingEngineId);
146
+ if (!enabledElement) {
147
+ throw new Error(`No enabled element found for rendering engine: ${renderingEngineId} and viewport: ${viewportId}`);
148
+ }
149
+ const { viewport } = enabledElement;
150
+ addLabelmapToElement(viewport.element, volumeId, segmentationRepresentationUID);
151
+ }
152
+ }
153
+ export default {
154
+ render,
155
+ addSegmentationRepresentation,
156
+ removeSegmentationRepresentation,
157
+ };
158
+ //# sourceMappingURL=labelmapDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"labelmapDisplay.js","sourceRoot":"","sources":["../../../../../src/tools/displayTools/Labelmap/labelmapDisplay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare function removeLabelmapFromElement(element: HTMLElement, segmentationRepresentationUID: string, removeFromCache?: boolean): void;
2
+ export default removeLabelmapFromElement;
@@ -0,0 +1,10 @@
1
+ import { getEnabledElement } from '@cornerstonejs/core';
2
+ function removeLabelmapFromElement(element, segmentationRepresentationUID, removeFromCache = false) {
3
+ const enabledElement = getEnabledElement(element);
4
+ const { viewport } = enabledElement;
5
+ viewport.removeVolumeActors([
6
+ segmentationRepresentationUID,
7
+ ]);
8
+ }
9
+ export default removeLabelmapFromElement;
10
+ //# sourceMappingURL=removeLabelmapFromElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeLabelmapFromElement.js","sourceRoot":"","sources":["../../../../../src/tools/displayTools/Labelmap/removeLabelmapFromElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAavD,SAAS,yBAAyB,CAChC,OAAoB,EACpB,6BAAqC,EACrC,eAAe,GAAG,KAAK;IAEvB,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAElC;IAAC,QAAkC,CAAC,kBAAkB,CAAC;QACtD,6BAA6B;KAC9B,CAAC,CAAA;AACJ,CAAC;AAED,eAAe,yBAAyB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { SegmentationPublicInput } from '../../../types/SegmentationStateTypes';
2
+ declare function validate(segmentationInput: SegmentationPublicInput): void;
3
+ export default validate;
@@ -0,0 +1,16 @@
1
+ import { cache } from '@cornerstonejs/core';
2
+ function validate(segmentationInput) {
3
+ if (!segmentationInput.representation.data) {
4
+ throw new Error('The segmentationInput.representationData.data is undefined, please provide a valid representationData.data');
5
+ }
6
+ const representationData = segmentationInput.representation.data;
7
+ if (!representationData.volumeId) {
8
+ throw new Error('The segmentationInput.representationData.volumeId is undefined, please provide a valid representationData.volumeId');
9
+ }
10
+ const cachedVolume = cache.getVolume(representationData.volumeId);
11
+ if (!cachedVolume) {
12
+ throw new Error(`volumeId of ${representationData.volumeId} not found in cache, you should load and cache volume before adding segmentation`);
13
+ }
14
+ }
15
+ export default validate;
16
+ //# sourceMappingURL=validateRepresentationData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateRepresentationData.js","sourceRoot":"","sources":["../../../../../src/tools/displayTools/Labelmap/validateRepresentationData.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAE3C,SAAS,QAAQ,CAAC,iBAA0C;IAC1D,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE;QAC1C,MAAM,IAAI,KAAK,CACb,4GAA4G,CAC7G,CAAA;KACF;IAED,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAA;IAEhE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE;QAChC,MAAM,IAAI,KAAK,CACb,oHAAoH,CACrH,CAAA;KACF;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAEjE,IAAI,CAAC,YAAY,EAAE;QACjB,MAAM,IAAI,KAAK,CACb,eAAe,kBAAkB,CAAC,QAAQ,kFAAkF,CAC7H,CAAA;KACF;AACH,CAAC;AAED,eAAe,QAAQ,CAAA"}
@@ -1,11 +1,11 @@
1
1
  import { BaseTool } from '../base';
2
- import { SegmentationConfig } from '../../types/SegmentationStateTypes';
3
2
  import { PublicToolProps, ToolProps } from '../../types';
3
+ import { SegmentationRepresentationConfig } from '../../types/SegmentationStateTypes';
4
4
  export default class SegmentationDisplayTool extends BaseTool {
5
5
  static toolName: string;
6
6
  constructor(toolProps?: PublicToolProps, defaultToolProps?: ToolProps);
7
7
  enableCallback(): void;
8
8
  disableCallback(): void;
9
- renderSegmentation: (toolGroupUID: string) => void;
10
- _getSegmentationConfig(toolGroupUID: string): SegmentationConfig;
9
+ renderSegmentation: (toolGroupId: string) => void;
10
+ _getMergedRepresentationsConfig(toolGroupId: string): SegmentationRepresentationConfig;
11
11
  }
@@ -1,35 +1,34 @@
1
1
  import { BaseTool } from '../base';
2
- import { getEnabledElementByUIDs } from '@cornerstonejs/core';
2
+ import { getEnabledElementByIds } from '@cornerstonejs/core';
3
3
  import Representations from '../../enums/SegmentationRepresentations';
4
- import { getSegmentationState } from '../../stateManagement/segmentation/segmentationState';
5
- import { LabelmapDisplay } from './Labelmap';
4
+ import { getSegmentationRepresentations } from '../../stateManagement/segmentation/segmentationState';
5
+ import { labelmapDisplay } from './Labelmap';
6
6
  import { segmentationConfig } from '../../stateManagement/segmentation';
7
- import { triggerSegmentationStateModified } from '../../stateManagement/segmentation/triggerSegmentationEvents';
8
- import { getToolGroupByToolGroupUID } from '../../store/ToolGroupManager';
7
+ import { triggerSegmentationRepresentationModified } from '../../stateManagement/segmentation/triggerSegmentationEvents';
8
+ import { getToolGroupById } from '../../store/ToolGroupManager';
9
9
  import { deepMerge } from '../../utilities';
10
10
  export default class SegmentationDisplayTool extends BaseTool {
11
11
  constructor(toolProps = {}, defaultToolProps = {
12
12
  configuration: {},
13
13
  }) {
14
14
  super(toolProps, defaultToolProps);
15
- this.renderSegmentation = (toolGroupUID) => {
16
- const toolGroup = getToolGroupByToolGroupUID(toolGroupUID);
15
+ this.renderSegmentation = (toolGroupId) => {
16
+ const toolGroup = getToolGroupById(toolGroupId);
17
17
  if (!toolGroup) {
18
18
  return;
19
19
  }
20
- const toolGroupSegmentationState = getSegmentationState(toolGroupUID);
21
- const toolGroupViewports = toolGroup.viewportsInfo.map(({ renderingEngineUID, viewportUID }) => {
22
- const enabledElement = getEnabledElementByUIDs(viewportUID, renderingEngineUID);
20
+ const toolGroupSegmentationRepresentations = getSegmentationRepresentations(toolGroupId);
21
+ const toolGroupViewports = toolGroup.viewportsInfo.map(({ renderingEngineId, viewportId }) => {
22
+ const enabledElement = getEnabledElementByIds(viewportId, renderingEngineId);
23
23
  if (enabledElement) {
24
24
  return enabledElement.viewport;
25
25
  }
26
26
  });
27
- toolGroupSegmentationState.forEach((segmentationData) => {
28
- const config = this._getSegmentationConfig(toolGroupUID);
29
- const { representation } = segmentationData;
27
+ toolGroupSegmentationRepresentations.forEach((representation) => {
28
+ const config = this._getMergedRepresentationsConfig(toolGroupId);
30
29
  toolGroupViewports.forEach((viewport) => {
31
30
  if (representation.type == Representations.Labelmap) {
32
- LabelmapDisplay.render(viewport, segmentationData, config);
31
+ labelmapDisplay.render(viewport, representation, config);
33
32
  }
34
33
  else {
35
34
  throw new Error(`Render for ${representation.type} is not supported yet`);
@@ -42,30 +41,32 @@ export default class SegmentationDisplayTool extends BaseTool {
42
41
  };
43
42
  }
44
43
  enableCallback() {
45
- const toolGroupUID = this.toolGroupUID;
46
- const toolGroupSegmentationState = getSegmentationState(toolGroupUID);
47
- if (toolGroupSegmentationState.length === 0) {
44
+ const toolGroupId = this.toolGroupId;
45
+ const toolGroupSegmentationRepresentations = getSegmentationRepresentations(toolGroupId);
46
+ if (!toolGroupSegmentationRepresentations ||
47
+ toolGroupSegmentationRepresentations.length === 0) {
48
48
  return;
49
49
  }
50
- for (const segmentationData of toolGroupSegmentationState) {
51
- segmentationData.visibility = true;
50
+ for (const segmentationRepresentation of toolGroupSegmentationRepresentations) {
51
+ segmentationRepresentation.visibility = true;
52
+ triggerSegmentationRepresentationModified(toolGroupId, segmentationRepresentation.segmentationRepresentationUID);
52
53
  }
53
- triggerSegmentationStateModified(toolGroupUID);
54
54
  }
55
55
  disableCallback() {
56
- const toolGroupUID = this.toolGroupUID;
57
- const toolGroupSegmentationState = getSegmentationState(toolGroupUID);
58
- if (toolGroupSegmentationState.length === 0) {
56
+ const toolGroupId = this.toolGroupId;
57
+ const toolGroupSegmentationRepresentations = getSegmentationRepresentations(toolGroupId);
58
+ if (!toolGroupSegmentationRepresentations ||
59
+ toolGroupSegmentationRepresentations.length === 0) {
59
60
  return;
60
61
  }
61
- for (const segmentationData of toolGroupSegmentationState) {
62
- segmentationData.visibility = false;
62
+ for (const segmentationRepresentation of toolGroupSegmentationRepresentations) {
63
+ segmentationRepresentation.visibility = false;
64
+ triggerSegmentationRepresentationModified(toolGroupId, segmentationRepresentation.segmentationRepresentationUID);
63
65
  }
64
- triggerSegmentationStateModified(toolGroupUID);
65
66
  }
66
- _getSegmentationConfig(toolGroupUID) {
67
- const toolGroupConfig = segmentationConfig.getSegmentationConfig(toolGroupUID);
68
- const globalConfig = segmentationConfig.getGlobalSegmentationConfig();
67
+ _getMergedRepresentationsConfig(toolGroupId) {
68
+ const toolGroupConfig = segmentationConfig.getToolGroupSpecificConfig(toolGroupId);
69
+ const globalConfig = segmentationConfig.getGlobalConfig();
69
70
  const mergedConfig = deepMerge(globalConfig, toolGroupConfig);
70
71
  return mergedConfig;
71
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentationDisplayTool.js","sourceRoot":"","sources":["../../../../src/tools/displayTools/SegmentationDisplayTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SegmentationDisplayTool.js","sourceRoot":"","sources":["../../../../src/tools/displayTools/SegmentationDisplayTool.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,10 @@ export default class CircleScissorsTool extends BaseTool {
7
7
  annotation: any;
8
8
  segmentation: any;
9
9
  segmentIndex: number;
10
- segmentationDataUID: string;
10
+ segmentationId: string;
11
11
  segmentsLocked: number[];
12
12
  segmentColor: [number, number, number, number];
13
- viewportUIDsToRender: string[];
13
+ viewportIdsToRender: string[];
14
14
  handleIndex?: number;
15
15
  movingTextBox: boolean;
16
16
  newAnnotation?: boolean;
@@ -1,11 +1,12 @@
1
- import { cache, getEnabledElement, StackViewport, } from '@cornerstonejs/core';
1
+ import { cache, getEnabledElement, StackViewport } from '@cornerstonejs/core';
2
2
  import { BaseTool } from '../base';
3
3
  import { fillInsideCircle } from './strategies/fillCircle';
4
4
  import { Events } from '../../enums';
5
5
  import { drawCircle as drawCircleSvg } from '../../drawingSvg';
6
6
  import { resetElementCursor, hideElementCursor, } from '../../cursors/elementCursor';
7
- import triggerAnnotationRenderForViewportUIDs from '../../utilities/triggerAnnotationRenderForViewportUIDs';
7
+ import triggerAnnotationRenderForViewportIds from '../../utilities/triggerAnnotationRenderForViewportIds';
8
8
  import { segmentLocking, activeSegmentation, segmentIndex as segmentIndexController, segmentationColor, } from '../../stateManagement/segmentation';
9
+ import { getSegmentation } from '../../stateManagement/segmentation/segmentationState';
9
10
  export default class CircleScissorsTool extends BaseTool {
10
11
  constructor(toolProps = {}, defaultToolProps = {
11
12
  supportedInteractionTypes: ['Mouse', 'Touch'],
@@ -28,16 +29,18 @@ export default class CircleScissorsTool extends BaseTool {
28
29
  this.isDrawing = true;
29
30
  const camera = viewport.getCamera();
30
31
  const { viewPlaneNormal, viewUp } = camera;
31
- const toolGroupUID = this.toolGroupUID;
32
- const activeSegmentationInfo = activeSegmentation.getActiveSegmentationInfo(toolGroupUID);
33
- if (!activeSegmentationInfo) {
32
+ const toolGroupId = this.toolGroupId;
33
+ const activeSegmentationRepresentation = activeSegmentation.getActiveSegmentationRepresentation(toolGroupId);
34
+ if (!activeSegmentationRepresentation) {
34
35
  throw new Error('No active segmentation detected, create one before using scissors tool');
35
36
  }
36
- const { volumeUID, segmentationDataUID } = activeSegmentationInfo;
37
- const segmentIndex = segmentIndexController.getActiveSegmentIndex(toolGroupUID);
38
- const segmentsLocked = segmentLocking.getSegmentsLockedForSegmentation(volumeUID);
39
- const segmentColor = segmentationColor.getColorForSegmentIndex(toolGroupUID, activeSegmentationInfo.segmentationDataUID, segmentIndex);
40
- const segmentation = cache.getVolume(volumeUID);
37
+ const { segmentationRepresentationUID, segmentationId, type } = activeSegmentationRepresentation;
38
+ const segmentIndex = segmentIndexController.getActiveSegmentIndex(toolGroupId);
39
+ const segmentsLocked = segmentLocking.getSegmentsLockedForSegmentation(segmentationId);
40
+ const segmentColor = segmentationColor.getColorForSegmentIndex(toolGroupId, segmentationRepresentationUID, segmentIndex);
41
+ const { representations } = getSegmentation(segmentationId);
42
+ const { volumeId } = representations[type];
43
+ const segmentation = cache.getVolume(volumeId);
41
44
  const annotation = {
42
45
  invalidated: true,
43
46
  highlighted: true,
@@ -58,16 +61,16 @@ export default class CircleScissorsTool extends BaseTool {
58
61
  cachedStats: {},
59
62
  },
60
63
  };
61
- const viewportUIDsToRender = [viewport.uid];
64
+ const viewportIdsToRender = [viewport.id];
62
65
  this.editData = {
63
66
  annotation,
64
67
  segmentation,
65
68
  centerCanvas: canvasPos,
66
69
  segmentIndex,
67
- segmentationDataUID,
70
+ segmentationId,
68
71
  segmentsLocked,
69
72
  segmentColor,
70
- viewportUIDsToRender,
73
+ viewportIdsToRender,
71
74
  handleIndex: 3,
72
75
  movingTextBox: false,
73
76
  newAnnotation: true,
@@ -76,7 +79,7 @@ export default class CircleScissorsTool extends BaseTool {
76
79
  this._activateDraw(element);
77
80
  hideElementCursor(element);
78
81
  evt.preventDefault();
79
- triggerAnnotationRenderForViewportUIDs(renderingEngine, viewportUIDsToRender);
82
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
80
83
  };
81
84
  this._mouseDragCallback = (evt) => {
82
85
  this.isDrawing = true;
@@ -87,7 +90,7 @@ export default class CircleScissorsTool extends BaseTool {
87
90
  const enabledElement = getEnabledElement(element);
88
91
  const { renderingEngine, viewport } = enabledElement;
89
92
  const { canvasToWorld } = viewport;
90
- const { annotation, viewportUIDsToRender, centerCanvas } = this.editData;
93
+ const { annotation, viewportIdsToRender, centerCanvas } = this.editData;
91
94
  const { data } = annotation;
92
95
  const dX = Math.abs(currentCanvasPoints[0] - centerCanvas[0]);
93
96
  const dY = Math.abs(currentCanvasPoints[1] - centerCanvas[1]);
@@ -110,12 +113,12 @@ export default class CircleScissorsTool extends BaseTool {
110
113
  ];
111
114
  annotation.invalidated = true;
112
115
  this.editData.hasMoved = true;
113
- triggerAnnotationRenderForViewportUIDs(renderingEngine, viewportUIDsToRender);
116
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
114
117
  };
115
118
  this._mouseUpCallback = (evt) => {
116
119
  const eventDetail = evt.detail;
117
120
  const { element } = eventDetail;
118
- const { annotation, newAnnotation, hasMoved, segmentation, segmentIndex, segmentsLocked, segmentationDataUID, } = this.editData;
121
+ const { annotation, newAnnotation, hasMoved, segmentation, segmentIndex, segmentsLocked, segmentationId, } = this.editData;
119
122
  const { data } = annotation;
120
123
  const { viewPlaneNormal, viewUp } = annotation.metadata;
121
124
  if (newAnnotation && !hasMoved) {
@@ -138,8 +141,7 @@ export default class CircleScissorsTool extends BaseTool {
138
141
  segmentIndex,
139
142
  segmentsLocked,
140
143
  viewPlaneNormal,
141
- toolGroupUID: this.toolGroupUID,
142
- segmentationDataUID,
144
+ segmentationId,
143
145
  viewUp,
144
146
  };
145
147
  this.applyActiveStrategy(enabledElement, operationData);
@@ -159,8 +161,8 @@ export default class CircleScissorsTool extends BaseTool {
159
161
  return;
160
162
  }
161
163
  const { viewport } = enabledElement;
162
- const { viewportUIDsToRender } = this.editData;
163
- if (!viewportUIDsToRender.includes(viewport.uid)) {
164
+ const { viewportIdsToRender } = this.editData;
165
+ if (!viewportIdsToRender.includes(viewport.id)) {
164
166
  return;
165
167
  }
166
168
  const { annotation } = this.editData;
@@ -1 +1 @@
1
- {"version":3,"file":"CircleScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/CircleScissorsTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CircleScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/CircleScissorsTool.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export interface RectangleRoiStartEndThresholdAnnotation extends Annotation {
12
12
  referencedImageId?: string;
13
13
  toolName: string;
14
14
  enabledElement: any;
15
- volumeUID: string;
15
+ volumeId: string;
16
16
  spacingInNormal: number;
17
17
  };
18
18
  data: {
@@ -34,7 +34,7 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
34
34
  _throttledCalculateCachedStats: any;
35
35
  editData: {
36
36
  annotation: any;
37
- viewportUIDsToRender: string[];
37
+ viewportIdsToRender: string[];
38
38
  handleIndex?: number;
39
39
  newAnnotation?: boolean;
40
40
  hasMoved?: boolean;
@@ -52,7 +52,7 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
52
52
  FrameOfReferenceUID: string;
53
53
  referencedImageId: any;
54
54
  toolName: string;
55
- volumeUID: any;
55
+ volumeId: any;
56
56
  spacingInNormal: number;
57
57
  };
58
58
  data: {
@@ -4,10 +4,10 @@ import { Events } from '../../enums';
4
4
  import { addAnnotation, getAnnotations } from '../../stateManagement';
5
5
  import { isAnnotationLocked } from '../../stateManagement/annotation/annotationLocking';
6
6
  import { drawHandles as drawHandlesSvg, drawRect as drawRectSvg, } from '../../drawingSvg';
7
- import { getViewportUIDsWithToolToRender } from '../../utilities/viewportFilters';
7
+ import { getViewportIdsWithToolToRender } from '../../utilities/viewportFilters';
8
8
  import throttle from '../../utilities/throttle';
9
9
  import { hideElementCursor } from '../../cursors/elementCursor';
10
- import triggerAnnotationRenderForViewportUIDs from '../../utilities/triggerAnnotationRenderForViewportUIDs';
10
+ import triggerAnnotationRenderForViewportIds from '../../utilities/triggerAnnotationRenderForViewportIds';
11
11
  import RectangleRoiTool from '../annotation/RectangleRoiTool';
12
12
  export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool {
13
13
  constructor(toolProps = {}, defaultToolProps = {
@@ -25,13 +25,13 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
25
25
  this.isDrawing = true;
26
26
  const camera = viewport.getCamera();
27
27
  const { viewPlaneNormal, viewUp } = camera;
28
- let referencedImageId, imageVolume, volumeUID;
28
+ let referencedImageId, imageVolume, volumeId;
29
29
  if (viewport instanceof StackViewport) {
30
30
  throw new Error('Stack Viewport Not implemented');
31
31
  }
32
32
  else {
33
- volumeUID = this.getTargetUID(viewport);
34
- imageVolume = cache.getVolume(volumeUID);
33
+ volumeId = this.getTargetId(viewport);
34
+ imageVolume = cache.getVolume(volumeId);
35
35
  referencedImageId = csUtils.getClosestImageId(imageVolume, worldPos, viewPlaneNormal, viewUp);
36
36
  }
37
37
  if (referencedImageId) {
@@ -54,7 +54,7 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
54
54
  FrameOfReferenceUID: viewport.getFrameOfReferenceUID(),
55
55
  referencedImageId,
56
56
  toolName: RectangleRoiStartEndThresholdTool.toolName,
57
- volumeUID,
57
+ volumeId,
58
58
  spacingInNormal,
59
59
  },
60
60
  data: {
@@ -85,10 +85,10 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
85
85
  this._computeProjectionPoints(annotation, imageVolume);
86
86
  Settings.getObjectSettings(annotation, RectangleRoiStartEndThresholdTool);
87
87
  addAnnotation(element, annotation);
88
- const viewportUIDsToRender = getViewportUIDsWithToolToRender(element, RectangleRoiStartEndThresholdTool.toolName);
88
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, RectangleRoiStartEndThresholdTool.toolName);
89
89
  this.editData = {
90
90
  annotation,
91
- viewportUIDsToRender,
91
+ viewportIdsToRender,
92
92
  handleIndex: 3,
93
93
  newAnnotation: true,
94
94
  hasMoved: false,
@@ -96,7 +96,7 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
96
96
  this._activateDraw(element);
97
97
  hideElementCursor(element);
98
98
  evt.preventDefault();
99
- triggerAnnotationRenderForViewportUIDs(renderingEngine, viewportUIDsToRender);
99
+ triggerAnnotationRenderForViewportIds(renderingEngine, viewportIdsToRender);
100
100
  return annotation;
101
101
  };
102
102
  this.renderAnnotation = (enabledElement, svgDrawingHelper) => {
@@ -195,17 +195,17 @@ export default class RectangleRoiStartEndThresholdTool extends RectangleRoiTool
195
195
  }
196
196
  _calculateCachedStatsTool(annotation, enabledElement) {
197
197
  const data = annotation.data;
198
- const { viewportUID, renderingEngineUID, viewport } = enabledElement;
198
+ const { viewportId, renderingEngineId, viewport } = enabledElement;
199
199
  const { cachedStats } = data;
200
- const volumeUID = this.getTargetUID(viewport);
201
- const imageVolume = cache.getVolume(volumeUID);
200
+ const volumeId = this.getTargetId(viewport);
201
+ const imageVolume = cache.getVolume(volumeId);
202
202
  this._computeProjectionPoints(annotation, imageVolume);
203
203
  annotation.invalidated = false;
204
204
  const eventType = Events.ANNOTATION_MODIFIED;
205
205
  const eventDetail = {
206
206
  annotation,
207
- viewportUID,
208
- renderingEngineUID,
207
+ viewportId,
208
+ renderingEngineId,
209
209
  };
210
210
  triggerEvent(eventTarget, eventType, eventDetail);
211
211
  return cachedStats;