@cornerstonejs/tools 3.0.2 → 3.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1262) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +4 -183
  3. package/dist/esm/config.d.ts +30 -0
  4. package/dist/esm/config.js +23 -0
  5. package/dist/esm/constants/COLOR_LUT.d.ts +3 -0
  6. package/dist/esm/constants/COLOR_LUT.js +258 -0
  7. package/dist/esm/constants/index.d.ts +2 -0
  8. package/dist/esm/constants/index.js +2 -0
  9. package/dist/esm/cursors/ImageMouseCursor.d.ts +9 -0
  10. package/dist/esm/cursors/ImageMouseCursor.js +22 -0
  11. package/dist/esm/cursors/MouseCursor.d.ts +12 -0
  12. package/dist/esm/cursors/MouseCursor.js +88 -0
  13. package/dist/esm/cursors/SVGCursorDescriptor.d.ts +9 -0
  14. package/dist/esm/cursors/SVGCursorDescriptor.js +442 -0
  15. package/dist/esm/cursors/SVGMouseCursor.d.ts +6 -0
  16. package/dist/esm/cursors/SVGMouseCursor.js +74 -0
  17. package/dist/esm/cursors/elementCursor.d.ts +6 -0
  18. package/dist/esm/cursors/elementCursor.js +36 -0
  19. package/dist/esm/cursors/index.d.ts +8 -0
  20. package/dist/esm/cursors/index.js +8 -0
  21. package/dist/esm/cursors/setCursorForElement.d.ts +2 -0
  22. package/dist/esm/cursors/setCursorForElement.js +15 -0
  23. package/dist/esm/drawingSvg/_getHash.d.ts +2 -0
  24. package/dist/esm/drawingSvg/_getHash.js +4 -0
  25. package/dist/esm/drawingSvg/clearByToolType.d.ts +2 -0
  26. package/dist/esm/drawingSvg/clearByToolType.js +13 -0
  27. package/dist/esm/drawingSvg/draw.d.ts +3 -0
  28. package/dist/esm/drawingSvg/draw.js +7 -0
  29. package/dist/esm/drawingSvg/drawArrow.d.ts +3 -0
  30. package/dist/esm/drawingSvg/drawArrow.js +79 -0
  31. package/dist/esm/drawingSvg/drawCircle.d.ts +4 -0
  32. package/dist/esm/drawingSvg/drawCircle.js +42 -0
  33. package/dist/esm/drawingSvg/drawEllipse.d.ts +4 -0
  34. package/dist/esm/drawingSvg/drawEllipse.js +10 -0
  35. package/dist/esm/drawingSvg/drawEllipseByCoordinates.d.ts +4 -0
  36. package/dist/esm/drawingSvg/drawEllipseByCoordinates.js +46 -0
  37. package/dist/esm/drawingSvg/drawHandle.d.ts +4 -0
  38. package/dist/esm/drawingSvg/drawHandle.js +60 -0
  39. package/dist/esm/drawingSvg/drawHandles.d.ts +4 -0
  40. package/dist/esm/drawingSvg/drawHandles.js +7 -0
  41. package/dist/esm/drawingSvg/drawHeight.d.ts +3 -0
  42. package/dist/esm/drawingSvg/drawHeight.js +45 -0
  43. package/dist/esm/drawingSvg/drawLine.d.ts +3 -0
  44. package/dist/esm/drawingSvg/drawLine.js +39 -0
  45. package/dist/esm/drawingSvg/drawLink.d.ts +4 -0
  46. package/dist/esm/drawingSvg/drawLink.js +26 -0
  47. package/dist/esm/drawingSvg/drawLinkedTextBox.d.ts +4 -0
  48. package/dist/esm/drawingSvg/drawLinkedTextBox.js +15 -0
  49. package/dist/esm/drawingSvg/drawPath.d.ts +11 -0
  50. package/dist/esm/drawingSvg/drawPath.js +48 -0
  51. package/dist/esm/drawingSvg/drawPolyline.d.ts +13 -0
  52. package/dist/esm/drawingSvg/drawPolyline.js +40 -0
  53. package/dist/esm/drawingSvg/drawRect.d.ts +3 -0
  54. package/dist/esm/drawingSvg/drawRect.js +9 -0
  55. package/dist/esm/drawingSvg/drawRectByCoordinates.d.ts +3 -0
  56. package/dist/esm/drawingSvg/drawRectByCoordinates.js +52 -0
  57. package/dist/esm/drawingSvg/drawRedactionRect.d.ts +3 -0
  58. package/dist/esm/drawingSvg/drawRedactionRect.js +37 -0
  59. package/dist/esm/drawingSvg/drawTextBox.d.ts +4 -0
  60. package/dist/esm/drawingSvg/drawTextBox.js +123 -0
  61. package/dist/esm/drawingSvg/getSvgDrawingHelper.d.ts +3 -0
  62. package/dist/esm/drawingSvg/getSvgDrawingHelper.js +65 -0
  63. package/dist/esm/drawingSvg/index.d.ts +19 -0
  64. package/dist/esm/drawingSvg/index.js +19 -0
  65. package/dist/esm/drawingSvg/setAttributesIfNecessary.d.ts +2 -0
  66. package/dist/esm/drawingSvg/setAttributesIfNecessary.js +13 -0
  67. package/dist/esm/drawingSvg/setNewAttributesIfValid.d.ts +2 -0
  68. package/dist/esm/drawingSvg/setNewAttributesIfValid.js +9 -0
  69. package/dist/esm/enums/AnnotationStyleStates.d.ts +8 -0
  70. package/dist/esm/enums/AnnotationStyleStates.js +9 -0
  71. package/dist/esm/enums/ChangeTypes.d.ts +11 -0
  72. package/dist/esm/enums/ChangeTypes.js +12 -0
  73. package/dist/esm/enums/Events.d.ts +42 -0
  74. package/dist/esm/enums/Events.js +43 -0
  75. package/dist/esm/enums/SegmentationRepresentations.d.ts +6 -0
  76. package/dist/esm/enums/SegmentationRepresentations.js +7 -0
  77. package/dist/esm/enums/StrategyCallbacks.d.ts +19 -0
  78. package/dist/esm/enums/StrategyCallbacks.js +20 -0
  79. package/dist/esm/enums/ToolBindings.d.ts +26 -0
  80. package/dist/esm/enums/ToolBindings.js +28 -0
  81. package/dist/esm/enums/ToolModes.d.ts +7 -0
  82. package/dist/esm/enums/ToolModes.js +8 -0
  83. package/dist/esm/enums/Touch.d.ts +7 -0
  84. package/dist/esm/enums/Touch.js +8 -0
  85. package/dist/esm/enums/WorkerTypes.d.ts +10 -0
  86. package/dist/esm/enums/WorkerTypes.js +11 -0
  87. package/dist/esm/enums/index.d.ts +11 -0
  88. package/dist/esm/enums/index.js +10 -0
  89. package/dist/esm/eventDispatchers/annotationInterpolationEventDispatcher.d.ts +5 -0
  90. package/dist/esm/eventDispatchers/annotationInterpolationEventDispatcher.js +17 -0
  91. package/dist/esm/eventDispatchers/annotationModifiedEventDispatcher.d.ts +5 -0
  92. package/dist/esm/eventDispatchers/annotationModifiedEventDispatcher.js +18 -0
  93. package/dist/esm/eventDispatchers/cameraModifiedEventDispatcher.d.ts +5 -0
  94. package/dist/esm/eventDispatchers/cameraModifiedEventDispatcher.js +26 -0
  95. package/dist/esm/eventDispatchers/cameraResetEventDispatcher.d.ts +5 -0
  96. package/dist/esm/eventDispatchers/cameraResetEventDispatcher.js +26 -0
  97. package/dist/esm/eventDispatchers/imageRenderedEventDispatcher.d.ts +5 -0
  98. package/dist/esm/eventDispatchers/imageRenderedEventDispatcher.js +15 -0
  99. package/dist/esm/eventDispatchers/imageSpacingCalibratedEventDispatcher.d.ts +5 -0
  100. package/dist/esm/eventDispatchers/imageSpacingCalibratedEventDispatcher.js +26 -0
  101. package/dist/esm/eventDispatchers/index.d.ts +9 -0
  102. package/dist/esm/eventDispatchers/index.js +9 -0
  103. package/dist/esm/eventDispatchers/keyboardEventHandlers/index.d.ts +3 -0
  104. package/dist/esm/eventDispatchers/keyboardEventHandlers/index.js +3 -0
  105. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.d.ts +2 -0
  106. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js +25 -0
  107. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.d.ts +2 -0
  108. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyUp.js +16 -0
  109. package/dist/esm/eventDispatchers/keyboardToolEventDispatcher.d.ts +5 -0
  110. package/dist/esm/eventDispatchers/keyboardToolEventDispatcher.js +15 -0
  111. package/dist/esm/eventDispatchers/mouseEventHandlers/index.d.ts +9 -0
  112. package/dist/esm/eventDispatchers/mouseEventHandlers/index.js +9 -0
  113. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseClick.d.ts +2 -0
  114. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseClick.js +3 -0
  115. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDoubleClick.d.ts +2 -0
  116. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDoubleClick.js +3 -0
  117. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.d.ts +2 -0
  118. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDown.js +90 -0
  119. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownActivate.d.ts +2 -0
  120. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownActivate.js +19 -0
  121. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.d.ts +2 -0
  122. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDownAnnotationAction.js +34 -0
  123. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDrag.d.ts +2 -0
  124. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseDrag.js +13 -0
  125. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseMove.d.ts +2 -0
  126. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseMove.js +37 -0
  127. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseUp.d.ts +2 -0
  128. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseUp.js +3 -0
  129. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.d.ts +3 -0
  130. package/dist/esm/eventDispatchers/mouseEventHandlers/mouseWheel.js +16 -0
  131. package/dist/esm/eventDispatchers/mouseToolEventDispatcher.d.ts +5 -0
  132. package/dist/esm/eventDispatchers/mouseToolEventDispatcher.js +27 -0
  133. package/dist/esm/eventDispatchers/shared/customCallbackHandler.d.ts +1 -0
  134. package/dist/esm/eventDispatchers/shared/customCallbackHandler.js +30 -0
  135. package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.d.ts +2 -0
  136. package/dist/esm/eventDispatchers/shared/getActiveToolForKeyboardEvent.js +29 -0
  137. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.d.ts +2 -0
  138. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js +28 -0
  139. package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.d.ts +2 -0
  140. package/dist/esm/eventDispatchers/shared/getActiveToolForTouchEvent.js +29 -0
  141. package/dist/esm/eventDispatchers/shared/getMouseModifier.d.ts +3 -0
  142. package/dist/esm/eventDispatchers/shared/getMouseModifier.js +32 -0
  143. package/dist/esm/eventDispatchers/shared/getToolsWithActionsForKeyboardEvents.d.ts +3 -0
  144. package/dist/esm/eventDispatchers/shared/getToolsWithActionsForKeyboardEvents.js +28 -0
  145. package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.d.ts +4 -0
  146. package/dist/esm/eventDispatchers/shared/getToolsWithActionsForMouseEvent.js +32 -0
  147. package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.d.ts +5 -0
  148. package/dist/esm/eventDispatchers/shared/getToolsWithModesForMouseEvent.js +23 -0
  149. package/dist/esm/eventDispatchers/shared/getToolsWithModesForTouchEvent.d.ts +5 -0
  150. package/dist/esm/eventDispatchers/shared/getToolsWithModesForTouchEvent.js +23 -0
  151. package/dist/esm/eventDispatchers/touchEventHandlers/index.d.ts +7 -0
  152. package/dist/esm/eventDispatchers/touchEventHandlers/index.js +7 -0
  153. package/dist/esm/eventDispatchers/touchEventHandlers/touchDrag.d.ts +2 -0
  154. package/dist/esm/eventDispatchers/touchEventHandlers/touchDrag.js +13 -0
  155. package/dist/esm/eventDispatchers/touchEventHandlers/touchEnd.d.ts +2 -0
  156. package/dist/esm/eventDispatchers/touchEventHandlers/touchEnd.js +3 -0
  157. package/dist/esm/eventDispatchers/touchEventHandlers/touchPress.d.ts +2 -0
  158. package/dist/esm/eventDispatchers/touchEventHandlers/touchPress.js +3 -0
  159. package/dist/esm/eventDispatchers/touchEventHandlers/touchStart.d.ts +2 -0
  160. package/dist/esm/eventDispatchers/touchEventHandlers/touchStart.js +79 -0
  161. package/dist/esm/eventDispatchers/touchEventHandlers/touchStartActivate.d.ts +2 -0
  162. package/dist/esm/eventDispatchers/touchEventHandlers/touchStartActivate.js +19 -0
  163. package/dist/esm/eventDispatchers/touchEventHandlers/touchTap.d.ts +2 -0
  164. package/dist/esm/eventDispatchers/touchEventHandlers/touchTap.js +3 -0
  165. package/dist/esm/eventDispatchers/touchToolEventDispatcher.d.ts +5 -0
  166. package/dist/esm/eventDispatchers/touchToolEventDispatcher.js +22 -0
  167. package/dist/esm/eventListeners/annotations/annotationCompletedListener.d.ts +2 -0
  168. package/dist/esm/eventListeners/annotations/annotationCompletedListener.js +8 -0
  169. package/dist/esm/eventListeners/annotations/annotationModifiedListener.d.ts +2 -0
  170. package/dist/esm/eventListeners/annotations/annotationModifiedListener.js +6 -0
  171. package/dist/esm/eventListeners/annotations/annotationRemovedListener.d.ts +2 -0
  172. package/dist/esm/eventListeners/annotations/annotationRemovedListener.js +8 -0
  173. package/dist/esm/eventListeners/annotations/annotationSelectionListener.d.ts +2 -0
  174. package/dist/esm/eventListeners/annotations/annotationSelectionListener.js +15 -0
  175. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts +5 -0
  176. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +233 -0
  177. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.d.ts +2 -0
  178. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationRemoved.js +5 -0
  179. package/dist/esm/eventListeners/annotations/contourSegmentation/index.d.ts +2 -0
  180. package/dist/esm/eventListeners/annotations/contourSegmentation/index.js +2 -0
  181. package/dist/esm/eventListeners/annotations/index.d.ts +5 -0
  182. package/dist/esm/eventListeners/annotations/index.js +5 -0
  183. package/dist/esm/eventListeners/index.d.ts +7 -0
  184. package/dist/esm/eventListeners/index.js +7 -0
  185. package/dist/esm/eventListeners/keyboard/index.d.ts +9 -0
  186. package/dist/esm/eventListeners/keyboard/index.js +13 -0
  187. package/dist/esm/eventListeners/keyboard/keyDownListener.d.ts +4 -0
  188. package/dist/esm/eventListeners/keyboard/keyDownListener.js +64 -0
  189. package/dist/esm/eventListeners/mouse/getMouseEventPoints.d.ts +2 -0
  190. package/dist/esm/eventListeners/mouse/getMouseEventPoints.js +31 -0
  191. package/dist/esm/eventListeners/mouse/index.d.ts +7 -0
  192. package/dist/esm/eventListeners/mouse/index.js +24 -0
  193. package/dist/esm/eventListeners/mouse/mouseDoubleClickListener.d.ts +2 -0
  194. package/dist/esm/eventListeners/mouse/mouseDoubleClickListener.js +32 -0
  195. package/dist/esm/eventListeners/mouse/mouseDownListener.d.ts +4 -0
  196. package/dist/esm/eventListeners/mouse/mouseDownListener.js +266 -0
  197. package/dist/esm/eventListeners/mouse/mouseMoveListener.d.ts +2 -0
  198. package/dist/esm/eventListeners/mouse/mouseMoveListener.js +28 -0
  199. package/dist/esm/eventListeners/segmentation/imageChangeEventListener.d.ts +5 -0
  200. package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +128 -0
  201. package/dist/esm/eventListeners/segmentation/index.d.ts +4 -0
  202. package/dist/esm/eventListeners/segmentation/index.js +4 -0
  203. package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.d.ts +3 -0
  204. package/dist/esm/eventListeners/segmentation/labelmap/onLabelmapSegmentationDataModified.js +83 -0
  205. package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.d.ts +3 -0
  206. package/dist/esm/eventListeners/segmentation/segmentationDataModifiedEventListener.js +12 -0
  207. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.d.ts +3 -0
  208. package/dist/esm/eventListeners/segmentation/segmentationModifiedEventListener.js +6 -0
  209. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedListener.d.ts +3 -0
  210. package/dist/esm/eventListeners/segmentation/segmentationRepresentationModifiedListener.js +6 -0
  211. package/dist/esm/eventListeners/touch/getTouchEventPoints.d.ts +2 -0
  212. package/dist/esm/eventListeners/touch/getTouchEventPoints.js +38 -0
  213. package/dist/esm/eventListeners/touch/index.d.ts +7 -0
  214. package/dist/esm/eventListeners/touch/index.js +17 -0
  215. package/dist/esm/eventListeners/touch/preventGhostClick.d.ts +7 -0
  216. package/dist/esm/eventListeners/touch/preventGhostClick.js +47 -0
  217. package/dist/esm/eventListeners/touch/touchStartListener.d.ts +2 -0
  218. package/dist/esm/eventListeners/touch/touchStartListener.js +282 -0
  219. package/dist/esm/eventListeners/wheel/index.d.ts +7 -0
  220. package/dist/esm/eventListeners/wheel/index.js +12 -0
  221. package/dist/esm/eventListeners/wheel/normalizeWheel.d.ts +6 -0
  222. package/dist/esm/eventListeners/wheel/normalizeWheel.js +48 -0
  223. package/dist/esm/eventListeners/wheel/wheelListener.d.ts +2 -0
  224. package/dist/esm/eventListeners/wheel/wheelListener.js +34 -0
  225. package/dist/esm/index.d.ts +17 -0
  226. package/dist/esm/index.js +17 -0
  227. package/dist/esm/init.d.ts +4 -0
  228. package/dist/esm/init.js +70 -0
  229. package/dist/esm/stateManagement/annotation/AnnotationGroup.d.ts +18 -0
  230. package/dist/esm/stateManagement/annotation/AnnotationGroup.js +69 -0
  231. package/dist/esm/stateManagement/annotation/AnnotationRenderingEngine.d.ts +20 -0
  232. package/dist/esm/stateManagement/annotation/AnnotationRenderingEngine.js +112 -0
  233. package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.d.ts +27 -0
  234. package/dist/esm/stateManagement/annotation/FrameOfReferenceSpecificAnnotationManager.js +210 -0
  235. package/dist/esm/stateManagement/annotation/annotationLocking.d.ts +7 -0
  236. package/dist/esm/stateManagement/annotation/annotationLocking.js +73 -0
  237. package/dist/esm/stateManagement/annotation/annotationSelection.d.ts +7 -0
  238. package/dist/esm/stateManagement/annotation/annotationSelection.js +85 -0
  239. package/dist/esm/stateManagement/annotation/annotationState.d.ts +18 -0
  240. package/dist/esm/stateManagement/annotation/annotationState.js +118 -0
  241. package/dist/esm/stateManagement/annotation/annotationVisibility.d.ts +5 -0
  242. package/dist/esm/stateManagement/annotation/annotationVisibility.js +65 -0
  243. package/dist/esm/stateManagement/annotation/config/ToolStyle.d.ts +18 -0
  244. package/dist/esm/stateManagement/annotation/config/ToolStyle.js +135 -0
  245. package/dist/esm/stateManagement/annotation/config/getFont.d.ts +4 -0
  246. package/dist/esm/stateManagement/annotation/config/getFont.js +7 -0
  247. package/dist/esm/stateManagement/annotation/config/getState.d.ts +4 -0
  248. package/dist/esm/stateManagement/annotation/config/getState.js +21 -0
  249. package/dist/esm/stateManagement/annotation/config/helpers.d.ts +4 -0
  250. package/dist/esm/stateManagement/annotation/config/helpers.js +21 -0
  251. package/dist/esm/stateManagement/annotation/config/index.d.ts +4 -0
  252. package/dist/esm/stateManagement/annotation/config/index.js +4 -0
  253. package/dist/esm/stateManagement/annotation/helpers/state.d.ts +10 -0
  254. package/dist/esm/stateManagement/annotation/helpers/state.js +76 -0
  255. package/dist/esm/stateManagement/annotation/index.d.ts +34 -0
  256. package/dist/esm/stateManagement/annotation/index.js +15 -0
  257. package/dist/esm/stateManagement/annotation/resetAnnotationManager.d.ts +1 -0
  258. package/dist/esm/stateManagement/annotation/resetAnnotationManager.js +21 -0
  259. package/dist/esm/stateManagement/annotation/utilities/defineProperties.d.ts +4 -0
  260. package/dist/esm/stateManagement/annotation/utilities/defineProperties.js +22 -0
  261. package/dist/esm/stateManagement/index.d.ts +18 -0
  262. package/dist/esm/stateManagement/index.js +6 -0
  263. package/dist/esm/stateManagement/segmentation/SegmentationRenderingEngine.d.ts +20 -0
  264. package/dist/esm/stateManagement/segmentation/SegmentationRenderingEngine.js +153 -0
  265. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.d.ts +91 -0
  266. package/dist/esm/stateManagement/segmentation/SegmentationStateManager.js +470 -0
  267. package/dist/esm/stateManagement/segmentation/SegmentationStyle.d.ts +39 -0
  268. package/dist/esm/stateManagement/segmentation/SegmentationStyle.js +223 -0
  269. package/dist/esm/stateManagement/segmentation/activeSegmentation.d.ts +4 -0
  270. package/dist/esm/stateManagement/segmentation/activeSegmentation.js +9 -0
  271. package/dist/esm/stateManagement/segmentation/addColorLUT.d.ts +2 -0
  272. package/dist/esm/stateManagement/segmentation/addColorLUT.js +25 -0
  273. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentationsToViewport.d.ts +15 -0
  274. package/dist/esm/stateManagement/segmentation/addSegmentationRepresentationsToViewport.js +49 -0
  275. package/dist/esm/stateManagement/segmentation/addSegmentations.d.ts +3 -0
  276. package/dist/esm/stateManagement/segmentation/addSegmentations.js +14 -0
  277. package/dist/esm/stateManagement/segmentation/config/index.d.ts +4 -0
  278. package/dist/esm/stateManagement/segmentation/config/index.js +4 -0
  279. package/dist/esm/stateManagement/segmentation/config/segmentationColor.d.ts +6 -0
  280. package/dist/esm/stateManagement/segmentation/config/segmentationColor.js +50 -0
  281. package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.d.ts +22 -0
  282. package/dist/esm/stateManagement/segmentation/config/segmentationVisibility.js +49 -0
  283. package/dist/esm/stateManagement/segmentation/config/styleHelpers.d.ts +25 -0
  284. package/dist/esm/stateManagement/segmentation/config/styleHelpers.js +37 -0
  285. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationAdded.d.ts +1 -0
  286. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationAdded.js +8 -0
  287. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationDataModified.d.ts +1 -0
  288. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationDataModified.js +12 -0
  289. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationModified.d.ts +1 -0
  290. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationModified.js +8 -0
  291. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRemoved.d.ts +1 -0
  292. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRemoved.js +8 -0
  293. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationModified.d.ts +2 -0
  294. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationModified.js +10 -0
  295. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationRemoved.d.ts +2 -0
  296. package/dist/esm/stateManagement/segmentation/events/triggerSegmentationRepresentationRemoved.js +10 -0
  297. package/dist/esm/stateManagement/segmentation/getActiveSegmentIndex.d.ts +1 -0
  298. package/dist/esm/stateManagement/segmentation/getActiveSegmentIndex.js +9 -0
  299. package/dist/esm/stateManagement/segmentation/getActiveSegmentation.d.ts +2 -0
  300. package/dist/esm/stateManagement/segmentation/getActiveSegmentation.js +5 -0
  301. package/dist/esm/stateManagement/segmentation/getColorLUT.d.ts +2 -0
  302. package/dist/esm/stateManagement/segmentation/getColorLUT.js +5 -0
  303. package/dist/esm/stateManagement/segmentation/getCurrentLabelmapImageIdForViewport.d.ts +1 -0
  304. package/dist/esm/stateManagement/segmentation/getCurrentLabelmapImageIdForViewport.js +5 -0
  305. package/dist/esm/stateManagement/segmentation/getGlobalStyle.d.ts +3 -0
  306. package/dist/esm/stateManagement/segmentation/getGlobalStyle.js +4 -0
  307. package/dist/esm/stateManagement/segmentation/getLabelmapImageIds.d.ts +1 -0
  308. package/dist/esm/stateManagement/segmentation/getLabelmapImageIds.js +7 -0
  309. package/dist/esm/stateManagement/segmentation/getNextColorLUTIndex.d.ts +1 -0
  310. package/dist/esm/stateManagement/segmentation/getNextColorLUTIndex.js +5 -0
  311. package/dist/esm/stateManagement/segmentation/getSegmentation.d.ts +2 -0
  312. package/dist/esm/stateManagement/segmentation/getSegmentation.js +5 -0
  313. package/dist/esm/stateManagement/segmentation/getSegmentationRepresentation.d.ts +14 -0
  314. package/dist/esm/stateManagement/segmentation/getSegmentationRepresentation.js +17 -0
  315. package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationVisibility.d.ts +5 -0
  316. package/dist/esm/stateManagement/segmentation/getSegmentationRepresentationVisibility.js +5 -0
  317. package/dist/esm/stateManagement/segmentation/getSegmentations.d.ts +2 -0
  318. package/dist/esm/stateManagement/segmentation/getSegmentations.js +6 -0
  319. package/dist/esm/stateManagement/segmentation/getStackSegmentationImageIdsForViewport.d.ts +1 -0
  320. package/dist/esm/stateManagement/segmentation/getStackSegmentationImageIdsForViewport.js +5 -0
  321. package/dist/esm/stateManagement/segmentation/getViewportIdsWithSegmentation.d.ts +1 -0
  322. package/dist/esm/stateManagement/segmentation/getViewportIdsWithSegmentation.js +10 -0
  323. package/dist/esm/stateManagement/segmentation/getViewportSegmentations.d.ts +3 -0
  324. package/dist/esm/stateManagement/segmentation/getViewportSegmentations.js +15 -0
  325. package/dist/esm/stateManagement/segmentation/helpers/clearSegmentValue.d.ts +1 -0
  326. package/dist/esm/stateManagement/segmentation/helpers/clearSegmentValue.js +30 -0
  327. package/dist/esm/stateManagement/segmentation/helpers/computeStackLabelmapFromVolume.d.ts +13 -0
  328. package/dist/esm/stateManagement/segmentation/helpers/computeStackLabelmapFromVolume.js +22 -0
  329. package/dist/esm/stateManagement/segmentation/helpers/computeVolumeLabelmapFromStack.d.ts +3 -0
  330. package/dist/esm/stateManagement/segmentation/helpers/computeVolumeLabelmapFromStack.js +4 -0
  331. package/dist/esm/stateManagement/segmentation/helpers/convertStackToVolumeLabelmap.d.ts +1 -0
  332. package/dist/esm/stateManagement/segmentation/helpers/convertStackToVolumeLabelmap.js +7 -0
  333. package/dist/esm/stateManagement/segmentation/helpers/getSegmentationActor.d.ts +6 -0
  334. package/dist/esm/stateManagement/segmentation/helpers/getSegmentationActor.js +34 -0
  335. package/dist/esm/stateManagement/segmentation/helpers/index.d.ts +3 -0
  336. package/dist/esm/stateManagement/segmentation/helpers/index.js +3 -0
  337. package/dist/esm/stateManagement/segmentation/helpers/internalGetHiddenSegmentIndices.d.ts +5 -0
  338. package/dist/esm/stateManagement/segmentation/helpers/internalGetHiddenSegmentIndices.js +14 -0
  339. package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.d.ts +3 -0
  340. package/dist/esm/stateManagement/segmentation/helpers/normalizeSegmentationInput.js +71 -0
  341. package/dist/esm/stateManagement/segmentation/helpers/updateStackSegmentationState.d.ts +8 -0
  342. package/dist/esm/stateManagement/segmentation/helpers/updateStackSegmentationState.js +31 -0
  343. package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.d.ts +3 -0
  344. package/dist/esm/stateManagement/segmentation/helpers/validateSegmentationInput.js +20 -0
  345. package/dist/esm/stateManagement/segmentation/index.d.ts +28 -0
  346. package/dist/esm/stateManagement/segmentation/index.js +28 -0
  347. package/dist/esm/stateManagement/segmentation/internalAddRepresentationData.d.ts +12 -0
  348. package/dist/esm/stateManagement/segmentation/internalAddRepresentationData.js +32 -0
  349. package/dist/esm/stateManagement/segmentation/internalAddSegmentationRepresentation.d.ts +3 -0
  350. package/dist/esm/stateManagement/segmentation/internalAddSegmentationRepresentation.js +38 -0
  351. package/dist/esm/stateManagement/segmentation/removeColorLUT.d.ts +1 -0
  352. package/dist/esm/stateManagement/segmentation/removeColorLUT.js +5 -0
  353. package/dist/esm/stateManagement/segmentation/removeSegment.d.ts +3 -0
  354. package/dist/esm/stateManagement/segmentation/removeSegment.js +50 -0
  355. package/dist/esm/stateManagement/segmentation/removeSegmentation.d.ts +2 -0
  356. package/dist/esm/stateManagement/segmentation/removeSegmentation.js +24 -0
  357. package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.d.ts +20 -0
  358. package/dist/esm/stateManagement/segmentation/removeSegmentationRepresentations.js +73 -0
  359. package/dist/esm/stateManagement/segmentation/segmentIndex.d.ts +3 -0
  360. package/dist/esm/stateManagement/segmentation/segmentIndex.js +48 -0
  361. package/dist/esm/stateManagement/segmentation/segmentLocking.d.ts +4 -0
  362. package/dist/esm/stateManagement/segmentation/segmentLocking.js +29 -0
  363. package/dist/esm/stateManagement/segmentation/segmentationState.d.ts +17 -0
  364. package/dist/esm/stateManagement/segmentation/segmentationState.js +20 -0
  365. package/dist/esm/stateManagement/segmentation/setActiveSegmentation.d.ts +1 -0
  366. package/dist/esm/stateManagement/segmentation/setActiveSegmentation.js +5 -0
  367. package/dist/esm/stateManagement/segmentation/setGlobalStyle.d.ts +3 -0
  368. package/dist/esm/stateManagement/segmentation/setGlobalStyle.js +8 -0
  369. package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationVisibility.d.ts +5 -0
  370. package/dist/esm/stateManagement/segmentation/setSegmentationRepresentationVisibility.js +5 -0
  371. package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.d.ts +6 -0
  372. package/dist/esm/stateManagement/segmentation/triggerSegmentationEvents.js +6 -0
  373. package/dist/esm/stateManagement/segmentation/updateLabelmapSegmentationImageReferences.d.ts +1 -0
  374. package/dist/esm/stateManagement/segmentation/updateLabelmapSegmentationImageReferences.js +5 -0
  375. package/dist/esm/stateManagement/segmentation/updateSegmentations.d.ts +5 -0
  376. package/dist/esm/stateManagement/segmentation/updateSegmentations.js +11 -0
  377. package/dist/esm/store/SynchronizerManager/Synchronizer.d.ts +48 -0
  378. package/dist/esm/store/SynchronizerManager/Synchronizer.js +221 -0
  379. package/dist/esm/store/SynchronizerManager/createSynchronizer.d.ts +4 -0
  380. package/dist/esm/store/SynchronizerManager/createSynchronizer.js +12 -0
  381. package/dist/esm/store/SynchronizerManager/destroy.d.ts +2 -0
  382. package/dist/esm/store/SynchronizerManager/destroy.js +8 -0
  383. package/dist/esm/store/SynchronizerManager/destroySynchronizer.d.ts +2 -0
  384. package/dist/esm/store/SynchronizerManager/destroySynchronizer.js +10 -0
  385. package/dist/esm/store/SynchronizerManager/getAllSynchronizers.d.ts +3 -0
  386. package/dist/esm/store/SynchronizerManager/getAllSynchronizers.js +5 -0
  387. package/dist/esm/store/SynchronizerManager/getSynchronizer.d.ts +3 -0
  388. package/dist/esm/store/SynchronizerManager/getSynchronizer.js +5 -0
  389. package/dist/esm/store/SynchronizerManager/getSynchronizersForViewport.d.ts +3 -0
  390. package/dist/esm/store/SynchronizerManager/getSynchronizersForViewport.js +18 -0
  391. package/dist/esm/store/SynchronizerManager/index.d.ts +7 -0
  392. package/dist/esm/store/SynchronizerManager/index.js +7 -0
  393. package/dist/esm/store/ToolGroupManager/ToolGroup.d.ts +48 -0
  394. package/dist/esm/store/ToolGroupManager/ToolGroup.js +460 -0
  395. package/dist/esm/store/ToolGroupManager/createToolGroup.d.ts +3 -0
  396. package/dist/esm/store/ToolGroupManager/createToolGroup.js +13 -0
  397. package/dist/esm/store/ToolGroupManager/destroy.d.ts +2 -0
  398. package/dist/esm/store/ToolGroupManager/destroy.js +10 -0
  399. package/dist/esm/store/ToolGroupManager/destroyToolGroup.d.ts +2 -0
  400. package/dist/esm/store/ToolGroupManager/destroyToolGroup.js +8 -0
  401. package/dist/esm/store/ToolGroupManager/getAllToolGroups.d.ts +3 -0
  402. package/dist/esm/store/ToolGroupManager/getAllToolGroups.js +5 -0
  403. package/dist/esm/store/ToolGroupManager/getToolGroup.d.ts +3 -0
  404. package/dist/esm/store/ToolGroupManager/getToolGroup.js +5 -0
  405. package/dist/esm/store/ToolGroupManager/getToolGroupForViewport.d.ts +3 -0
  406. package/dist/esm/store/ToolGroupManager/getToolGroupForViewport.js +18 -0
  407. package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.d.ts +3 -0
  408. package/dist/esm/store/ToolGroupManager/getToolGroupsWithToolName.js +21 -0
  409. package/dist/esm/store/ToolGroupManager/index.d.ts +8 -0
  410. package/dist/esm/store/ToolGroupManager/index.js +8 -0
  411. package/dist/esm/store/addEnabledElement.d.ts +2 -0
  412. package/dist/esm/store/addEnabledElement.js +68 -0
  413. package/dist/esm/store/addTool.d.ts +5 -0
  414. package/dist/esm/store/addTool.js +31 -0
  415. package/dist/esm/store/cancelActiveManipulations.d.ts +1 -0
  416. package/dist/esm/store/cancelActiveManipulations.js +16 -0
  417. package/dist/esm/store/filterMoveableAnnotationTools.d.ts +3 -0
  418. package/dist/esm/store/filterMoveableAnnotationTools.js +20 -0
  419. package/dist/esm/store/filterToolsWithAnnotationsForElement.d.ts +3 -0
  420. package/dist/esm/store/filterToolsWithAnnotationsForElement.js +22 -0
  421. package/dist/esm/store/filterToolsWithMoveableHandles.d.ts +3 -0
  422. package/dist/esm/store/filterToolsWithMoveableHandles.js +21 -0
  423. package/dist/esm/store/index.d.ts +10 -0
  424. package/dist/esm/store/index.js +10 -0
  425. package/dist/esm/store/removeEnabledElement.d.ts +3 -0
  426. package/dist/esm/store/removeEnabledElement.js +85 -0
  427. package/dist/esm/store/state.d.ts +18 -0
  428. package/dist/esm/store/state.js +34 -0
  429. package/dist/esm/store/svgNodeCache.d.ts +3 -0
  430. package/dist/esm/store/svgNodeCache.js +5 -0
  431. package/dist/esm/synchronizers/callbacks/areViewportsCoplanar.d.ts +2 -0
  432. package/dist/esm/synchronizers/callbacks/areViewportsCoplanar.js +7 -0
  433. package/dist/esm/synchronizers/callbacks/cameraSyncCallback.d.ts +3 -0
  434. package/dist/esm/synchronizers/callbacks/cameraSyncCallback.js +11 -0
  435. package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.d.ts +3 -0
  436. package/dist/esm/synchronizers/callbacks/imageSliceSyncCallback.js +67 -0
  437. package/dist/esm/synchronizers/callbacks/presentationViewSyncCallback.d.ts +2 -0
  438. package/dist/esm/synchronizers/callbacks/presentationViewSyncCallback.js +12 -0
  439. package/dist/esm/synchronizers/callbacks/slabThicknessSyncCallback.d.ts +2 -0
  440. package/dist/esm/synchronizers/callbacks/slabThicknessSyncCallback.js +15 -0
  441. package/dist/esm/synchronizers/callbacks/voiSyncCallback.d.ts +5 -0
  442. package/dist/esm/synchronizers/callbacks/voiSyncCallback.js +35 -0
  443. package/dist/esm/synchronizers/callbacks/zoomPanSyncCallback.d.ts +3 -0
  444. package/dist/esm/synchronizers/callbacks/zoomPanSyncCallback.js +19 -0
  445. package/dist/esm/synchronizers/index.d.ts +8 -0
  446. package/dist/esm/synchronizers/index.js +8 -0
  447. package/dist/esm/synchronizers/synchronizers/createCameraPositionSynchronizer.d.ts +2 -0
  448. package/dist/esm/synchronizers/synchronizers/createCameraPositionSynchronizer.js +8 -0
  449. package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.d.ts +2 -0
  450. package/dist/esm/synchronizers/synchronizers/createImageSliceSynchronizer.js +14 -0
  451. package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.d.ts +3 -0
  452. package/dist/esm/synchronizers/synchronizers/createPresentationViewSynchronizer.js +8 -0
  453. package/dist/esm/synchronizers/synchronizers/createSlabThicknessSynchronizer.d.ts +2 -0
  454. package/dist/esm/synchronizers/synchronizers/createSlabThicknessSynchronizer.js +8 -0
  455. package/dist/esm/synchronizers/synchronizers/createVOISynchronizer.d.ts +7 -0
  456. package/dist/esm/synchronizers/synchronizers/createVOISynchronizer.js +15 -0
  457. package/dist/esm/synchronizers/synchronizers/createZoomPanSynchronizer.d.ts +2 -0
  458. package/dist/esm/synchronizers/synchronizers/createZoomPanSynchronizer.js +8 -0
  459. package/dist/esm/synchronizers/synchronizers/index.d.ts +7 -0
  460. package/dist/esm/synchronizers/synchronizers/index.js +7 -0
  461. package/dist/esm/tools/AdvancedMagnifyTool.d.ts +130 -0
  462. package/dist/esm/tools/AdvancedMagnifyTool.js +927 -0
  463. package/dist/esm/tools/AnnotationEraserTool.d.ts +10 -0
  464. package/dist/esm/tools/AnnotationEraserTool.js +56 -0
  465. package/dist/esm/tools/CrosshairsTool.d.ts +71 -0
  466. package/dist/esm/tools/CrosshairsTool.js +1449 -0
  467. package/dist/esm/tools/MIPJumpToClickTool.d.ts +8 -0
  468. package/dist/esm/tools/MIPJumpToClickTool.js +56 -0
  469. package/dist/esm/tools/MagnifyTool.d.ts +25 -0
  470. package/dist/esm/tools/MagnifyTool.js +180 -0
  471. package/dist/esm/tools/OrientationMarkerTool.d.ts +78 -0
  472. package/dist/esm/tools/OrientationMarkerTool.js +284 -0
  473. package/dist/esm/tools/OverlayGridTool.d.ts +29 -0
  474. package/dist/esm/tools/OverlayGridTool.js +164 -0
  475. package/dist/esm/tools/PanTool.d.ts +10 -0
  476. package/dist/esm/tools/PanTool.js +44 -0
  477. package/dist/esm/tools/PlanarRotateTool.d.ts +12 -0
  478. package/dist/esm/tools/PlanarRotateTool.js +64 -0
  479. package/dist/esm/tools/ReferenceCursors.d.ts +24 -0
  480. package/dist/esm/tools/ReferenceCursors.js +308 -0
  481. package/dist/esm/tools/ReferenceLinesTool.d.ts +27 -0
  482. package/dist/esm/tools/ReferenceLinesTool.js +232 -0
  483. package/dist/esm/tools/ScaleOverlayTool.d.ts +38 -0
  484. package/dist/esm/tools/ScaleOverlayTool.js +397 -0
  485. package/dist/esm/tools/SculptorTool/CircleSculptCursor.d.ts +20 -0
  486. package/dist/esm/tools/SculptorTool/CircleSculptCursor.js +107 -0
  487. package/dist/esm/tools/SculptorTool.d.ts +41 -0
  488. package/dist/esm/tools/SculptorTool.js +289 -0
  489. package/dist/esm/tools/SegmentationIntersectionTool.d.ts +18 -0
  490. package/dist/esm/tools/SegmentationIntersectionTool.js +177 -0
  491. package/dist/esm/tools/StackScrollTool.d.ts +15 -0
  492. package/dist/esm/tools/StackScrollTool.js +78 -0
  493. package/dist/esm/tools/TrackballRotateTool.d.ts +19 -0
  494. package/dist/esm/tools/TrackballRotateTool.js +179 -0
  495. package/dist/esm/tools/VolumeRotateTool.d.ts +10 -0
  496. package/dist/esm/tools/VolumeRotateTool.js +52 -0
  497. package/dist/esm/tools/WindowLevelRegionTool.d.ts +26 -0
  498. package/dist/esm/tools/WindowLevelRegionTool.js +220 -0
  499. package/dist/esm/tools/WindowLevelTool.d.ts +37 -0
  500. package/dist/esm/tools/WindowLevelTool.js +201 -0
  501. package/dist/esm/tools/ZoomTool.d.ts +19 -0
  502. package/dist/esm/tools/ZoomTool.js +180 -0
  503. package/dist/esm/tools/annotation/AngleTool.d.ts +37 -0
  504. package/dist/esm/tools/annotation/AngleTool.js +486 -0
  505. package/dist/esm/tools/annotation/ArrowAnnotateTool.d.ts +39 -0
  506. package/dist/esm/tools/annotation/ArrowAnnotateTool.js +467 -0
  507. package/dist/esm/tools/annotation/BidirectionalTool.d.ts +40 -0
  508. package/dist/esm/tools/annotation/BidirectionalTool.js +728 -0
  509. package/dist/esm/tools/annotation/CircleROITool.d.ts +39 -0
  510. package/dist/esm/tools/annotation/CircleROITool.js +638 -0
  511. package/dist/esm/tools/annotation/CobbAngleTool.d.ts +61 -0
  512. package/dist/esm/tools/annotation/CobbAngleTool.js +688 -0
  513. package/dist/esm/tools/annotation/DragProbeTool.d.ts +23 -0
  514. package/dist/esm/tools/annotation/DragProbeTool.js +130 -0
  515. package/dist/esm/tools/annotation/ETDRSGridTool.d.ts +41 -0
  516. package/dist/esm/tools/annotation/ETDRSGridTool.js +354 -0
  517. package/dist/esm/tools/annotation/EllipticalROITool.d.ts +45 -0
  518. package/dist/esm/tools/annotation/EllipticalROITool.js +710 -0
  519. package/dist/esm/tools/annotation/HeightTool.d.ts +36 -0
  520. package/dist/esm/tools/annotation/HeightTool.js +434 -0
  521. package/dist/esm/tools/annotation/KeyImageTool.d.ts +34 -0
  522. package/dist/esm/tools/annotation/KeyImageTool.js +269 -0
  523. package/dist/esm/tools/annotation/LabelTool.d.ts +35 -0
  524. package/dist/esm/tools/annotation/LabelTool.js +323 -0
  525. package/dist/esm/tools/annotation/LengthTool.d.ts +38 -0
  526. package/dist/esm/tools/annotation/LengthTool.js +468 -0
  527. package/dist/esm/tools/annotation/LivewireContourSegmentationTool.d.ts +10 -0
  528. package/dist/esm/tools/annotation/LivewireContourSegmentationTool.js +89 -0
  529. package/dist/esm/tools/annotation/LivewireContourTool.d.ts +67 -0
  530. package/dist/esm/tools/annotation/LivewireContourTool.js +657 -0
  531. package/dist/esm/tools/annotation/PlanarFreehandContourSegmentationTool.d.ts +9 -0
  532. package/dist/esm/tools/annotation/PlanarFreehandContourSegmentationTool.js +29 -0
  533. package/dist/esm/tools/annotation/PlanarFreehandROITool.d.ts +59 -0
  534. package/dist/esm/tools/annotation/PlanarFreehandROITool.js +530 -0
  535. package/dist/esm/tools/annotation/ProbeTool.d.ts +35 -0
  536. package/dist/esm/tools/annotation/ProbeTool.js +363 -0
  537. package/dist/esm/tools/annotation/RectangleROITool.d.ts +43 -0
  538. package/dist/esm/tools/annotation/RectangleROITool.js +566 -0
  539. package/dist/esm/tools/annotation/RegionSegmentPlusTool.d.ts +16 -0
  540. package/dist/esm/tools/annotation/RegionSegmentPlusTool.js +55 -0
  541. package/dist/esm/tools/annotation/RegionSegmentTool.d.ts +21 -0
  542. package/dist/esm/tools/annotation/RegionSegmentTool.js +102 -0
  543. package/dist/esm/tools/annotation/SplineContourSegmentationTool.d.ts +8 -0
  544. package/dist/esm/tools/annotation/SplineContourSegmentationTool.js +17 -0
  545. package/dist/esm/tools/annotation/SplineROITool.d.ts +73 -0
  546. package/dist/esm/tools/annotation/SplineROITool.js +788 -0
  547. package/dist/esm/tools/annotation/UltrasoundDirectionalTool.d.ts +34 -0
  548. package/dist/esm/tools/annotation/UltrasoundDirectionalTool.js +461 -0
  549. package/dist/esm/tools/annotation/VideoRedactionTool.d.ts +46 -0
  550. package/dist/esm/tools/annotation/VideoRedactionTool.js +442 -0
  551. package/dist/esm/tools/annotation/WholeBodySegmentTool.d.ts +29 -0
  552. package/dist/esm/tools/annotation/WholeBodySegmentTool.js +223 -0
  553. package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.d.ts +2 -0
  554. package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.js +260 -0
  555. package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.d.ts +2 -0
  556. package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.js +289 -0
  557. package/dist/esm/tools/annotation/planarFreehandROITool/editLoopCommon.d.ts +2 -0
  558. package/dist/esm/tools/annotation/planarFreehandROITool/editLoopCommon.js +146 -0
  559. package/dist/esm/tools/annotation/planarFreehandROITool/findOpenUShapedContourVectorToPeak.d.ts +4 -0
  560. package/dist/esm/tools/annotation/planarFreehandROITool/findOpenUShapedContourVectorToPeak.js +39 -0
  561. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.d.ts +2 -0
  562. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.js +329 -0
  563. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEndEditLoop.d.ts +2 -0
  564. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEndEditLoop.js +48 -0
  565. package/dist/esm/tools/annotation/planarFreehandROITool/renderMethods.d.ts +2 -0
  566. package/dist/esm/tools/annotation/planarFreehandROITool/renderMethods.js +216 -0
  567. package/dist/esm/tools/annotation/splines/BSpline.d.ts +5 -0
  568. package/dist/esm/tools/annotation/splines/BSpline.js +9 -0
  569. package/dist/esm/tools/annotation/splines/CardinalSpline.d.ts +12 -0
  570. package/dist/esm/tools/annotation/splines/CardinalSpline.js +32 -0
  571. package/dist/esm/tools/annotation/splines/CatmullRomSpline.d.ts +5 -0
  572. package/dist/esm/tools/annotation/splines/CatmullRomSpline.js +7 -0
  573. package/dist/esm/tools/annotation/splines/CubicSpline.d.ts +13 -0
  574. package/dist/esm/tools/annotation/splines/CubicSpline.js +164 -0
  575. package/dist/esm/tools/annotation/splines/LinearSpline.d.ts +5 -0
  576. package/dist/esm/tools/annotation/splines/LinearSpline.js +7 -0
  577. package/dist/esm/tools/annotation/splines/QuadraticBezier.d.ts +6 -0
  578. package/dist/esm/tools/annotation/splines/QuadraticBezier.js +15 -0
  579. package/dist/esm/tools/annotation/splines/QuadraticSpline.d.ts +9 -0
  580. package/dist/esm/tools/annotation/splines/QuadraticSpline.js +13 -0
  581. package/dist/esm/tools/annotation/splines/Spline.d.ts +51 -0
  582. package/dist/esm/tools/annotation/splines/Spline.js +395 -0
  583. package/dist/esm/tools/annotation/splines/index.d.ts +9 -0
  584. package/dist/esm/tools/annotation/splines/index.js +9 -0
  585. package/dist/esm/tools/base/AnnotationDisplayTool.d.ts +14 -0
  586. package/dist/esm/tools/base/AnnotationDisplayTool.js +98 -0
  587. package/dist/esm/tools/base/AnnotationTool.d.ts +71 -0
  588. package/dist/esm/tools/base/AnnotationTool.js +271 -0
  589. package/dist/esm/tools/base/BaseTool.d.ts +38 -0
  590. package/dist/esm/tools/base/BaseTool.js +128 -0
  591. package/dist/esm/tools/base/ContourBaseTool.d.ts +25 -0
  592. package/dist/esm/tools/base/ContourBaseTool.js +121 -0
  593. package/dist/esm/tools/base/ContourSegmentationBaseTool.d.ts +19 -0
  594. package/dist/esm/tools/base/ContourSegmentationBaseTool.js +133 -0
  595. package/dist/esm/tools/base/GrowCutBaseTool.d.ts +64 -0
  596. package/dist/esm/tools/base/GrowCutBaseTool.js +209 -0
  597. package/dist/esm/tools/base/index.d.ts +4 -0
  598. package/dist/esm/tools/base/index.js +4 -0
  599. package/dist/esm/tools/displayTools/Contour/contourConfig.d.ts +3 -0
  600. package/dist/esm/tools/displayTools/Contour/contourConfig.js +20 -0
  601. package/dist/esm/tools/displayTools/Contour/contourDisplay.d.ts +9 -0
  602. package/dist/esm/tools/displayTools/Contour/contourDisplay.js +51 -0
  603. package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.d.ts +5 -0
  604. package/dist/esm/tools/displayTools/Contour/contourHandler/handleContourSegmentation.js +77 -0
  605. package/dist/esm/tools/displayTools/Contour/contourHandler/utils.d.ts +4 -0
  606. package/dist/esm/tools/displayTools/Contour/contourHandler/utils.js +41 -0
  607. package/dist/esm/tools/displayTools/Contour/index.d.ts +2 -0
  608. package/dist/esm/tools/displayTools/Contour/index.js +2 -0
  609. package/dist/esm/tools/displayTools/Contour/removeContourFromElement.d.ts +2 -0
  610. package/dist/esm/tools/displayTools/Contour/removeContourFromElement.js +12 -0
  611. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.d.ts +7 -0
  612. package/dist/esm/tools/displayTools/Labelmap/addLabelmapToElement.js +93 -0
  613. package/dist/esm/tools/displayTools/Labelmap/addVolumesAsIndependentComponents.d.ts +10 -0
  614. package/dist/esm/tools/displayTools/Labelmap/addVolumesAsIndependentComponents.js +123 -0
  615. package/dist/esm/tools/displayTools/Labelmap/index.d.ts +4 -0
  616. package/dist/esm/tools/displayTools/Labelmap/index.js +4 -0
  617. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.d.ts +3 -0
  618. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.js +17 -0
  619. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.d.ts +11 -0
  620. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +267 -0
  621. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.d.ts +2 -0
  622. package/dist/esm/tools/displayTools/Labelmap/removeLabelmapFromElement.js +8 -0
  623. package/dist/esm/tools/displayTools/Surface/addOrUpdateSurfaceToElement.d.ts +3 -0
  624. package/dist/esm/tools/displayTools/Surface/addOrUpdateSurfaceToElement.js +67 -0
  625. package/dist/esm/tools/displayTools/Surface/index.d.ts +2 -0
  626. package/dist/esm/tools/displayTools/Surface/index.js +2 -0
  627. package/dist/esm/tools/displayTools/Surface/removeSurfaceFromElement.d.ts +2 -0
  628. package/dist/esm/tools/displayTools/Surface/removeSurfaceFromElement.js +10 -0
  629. package/dist/esm/tools/displayTools/Surface/surfaceConfig.d.ts +3 -0
  630. package/dist/esm/tools/displayTools/Surface/surfaceConfig.js +8 -0
  631. package/dist/esm/tools/displayTools/Surface/surfaceDisplay.d.ts +10 -0
  632. package/dist/esm/tools/displayTools/Surface/surfaceDisplay.js +76 -0
  633. package/dist/esm/tools/distancePointToContour.d.ts +3 -0
  634. package/dist/esm/tools/distancePointToContour.js +18 -0
  635. package/dist/esm/tools/index.d.ts +57 -0
  636. package/dist/esm/tools/index.js +57 -0
  637. package/dist/esm/tools/segmentation/BrushTool.d.ts +27 -0
  638. package/dist/esm/tools/segmentation/BrushTool.js +355 -0
  639. package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.d.ts +68 -0
  640. package/dist/esm/tools/segmentation/CircleROIStartEndThresholdTool.js +478 -0
  641. package/dist/esm/tools/segmentation/CircleScissorsTool.d.ts +34 -0
  642. package/dist/esm/tools/segmentation/CircleScissorsTool.js +233 -0
  643. package/dist/esm/tools/segmentation/LabelmapBaseTool.d.ts +99 -0
  644. package/dist/esm/tools/segmentation/LabelmapBaseTool.js +289 -0
  645. package/dist/esm/tools/segmentation/PaintFillTool.d.ts +13 -0
  646. package/dist/esm/tools/segmentation/PaintFillTool.js +231 -0
  647. package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.d.ts +69 -0
  648. package/dist/esm/tools/segmentation/RectangleROIStartEndThresholdTool.js +437 -0
  649. package/dist/esm/tools/segmentation/RectangleROIThresholdTool.d.ts +45 -0
  650. package/dist/esm/tools/segmentation/RectangleROIThresholdTool.js +145 -0
  651. package/dist/esm/tools/segmentation/RectangleScissorsTool.d.ts +32 -0
  652. package/dist/esm/tools/segmentation/RectangleScissorsTool.js +227 -0
  653. package/dist/esm/tools/segmentation/SegmentSelectTool.d.ts +20 -0
  654. package/dist/esm/tools/segmentation/SegmentSelectTool.js +99 -0
  655. package/dist/esm/tools/segmentation/SphereScissorsTool.d.ts +33 -0
  656. package/dist/esm/tools/segmentation/SphereScissorsTool.js +227 -0
  657. package/dist/esm/tools/segmentation/strategies/BrushStrategy.d.ts +125 -0
  658. package/dist/esm/tools/segmentation/strategies/BrushStrategy.js +156 -0
  659. package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.d.ts +6 -0
  660. package/dist/esm/tools/segmentation/strategies/compositions/determineSegmentIndex.js +59 -0
  661. package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.d.ts +7 -0
  662. package/dist/esm/tools/segmentation/strategies/compositions/dynamicThreshold.js +83 -0
  663. package/dist/esm/tools/segmentation/strategies/compositions/ensureImageVolume.d.ts +4 -0
  664. package/dist/esm/tools/segmentation/strategies/compositions/ensureImageVolume.js +35 -0
  665. package/dist/esm/tools/segmentation/strategies/compositions/ensureSegmentationVolume.d.ts +4 -0
  666. package/dist/esm/tools/segmentation/strategies/compositions/ensureSegmentationVolume.js +20 -0
  667. package/dist/esm/tools/segmentation/strategies/compositions/erase.d.ts +5 -0
  668. package/dist/esm/tools/segmentation/strategies/compositions/erase.js +6 -0
  669. package/dist/esm/tools/segmentation/strategies/compositions/index.d.ts +47 -0
  670. package/dist/esm/tools/segmentation/strategies/compositions/index.js +24 -0
  671. package/dist/esm/tools/segmentation/strategies/compositions/islandRemovalComposition.d.ts +5 -0
  672. package/dist/esm/tools/segmentation/strategies/compositions/islandRemovalComposition.js +28 -0
  673. package/dist/esm/tools/segmentation/strategies/compositions/labelmapStatistics.d.ts +7 -0
  674. package/dist/esm/tools/segmentation/strategies/compositions/labelmapStatistics.js +12 -0
  675. package/dist/esm/tools/segmentation/strategies/compositions/preview.d.ts +8 -0
  676. package/dist/esm/tools/segmentation/strategies/compositions/preview.js +92 -0
  677. package/dist/esm/tools/segmentation/strategies/compositions/regionFill.d.ts +5 -0
  678. package/dist/esm/tools/segmentation/strategies/compositions/regionFill.js +23 -0
  679. package/dist/esm/tools/segmentation/strategies/compositions/setValue.d.ts +8 -0
  680. package/dist/esm/tools/segmentation/strategies/compositions/setValue.js +29 -0
  681. package/dist/esm/tools/segmentation/strategies/compositions/threshold.d.ts +5 -0
  682. package/dist/esm/tools/segmentation/strategies/compositions/threshold.js +21 -0
  683. package/dist/esm/tools/segmentation/strategies/eraseCircle.d.ts +2 -0
  684. package/dist/esm/tools/segmentation/strategies/eraseCircle.js +6 -0
  685. package/dist/esm/tools/segmentation/strategies/eraseRectangle.d.ts +8 -0
  686. package/dist/esm/tools/segmentation/strategies/eraseRectangle.js +13 -0
  687. package/dist/esm/tools/segmentation/strategies/eraseSphere.d.ts +2 -0
  688. package/dist/esm/tools/segmentation/strategies/eraseSphere.js +6 -0
  689. package/dist/esm/tools/segmentation/strategies/fillCircle.d.ts +14 -0
  690. package/dist/esm/tools/segmentation/strategies/fillCircle.js +71 -0
  691. package/dist/esm/tools/segmentation/strategies/fillRectangle.d.ts +6 -0
  692. package/dist/esm/tools/segmentation/strategies/fillRectangle.js +71 -0
  693. package/dist/esm/tools/segmentation/strategies/fillSphere.d.ts +7 -0
  694. package/dist/esm/tools/segmentation/strategies/fillSphere.js +40 -0
  695. package/dist/esm/tools/segmentation/strategies/index.d.ts +3 -0
  696. package/dist/esm/tools/segmentation/strategies/index.js +3 -0
  697. package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.d.ts +15 -0
  698. package/dist/esm/tools/segmentation/strategies/utils/getStrategyData.js +112 -0
  699. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +5 -0
  700. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js +8 -0
  701. package/dist/esm/types/AnnotationGroupSelector.d.ts +2 -0
  702. package/dist/esm/types/AnnotationGroupSelector.js +0 -0
  703. package/dist/esm/types/AnnotationRenderContext.d.ts +12 -0
  704. package/dist/esm/types/AnnotationRenderContext.js +0 -0
  705. package/dist/esm/types/AnnotationStyle.d.ts +30 -0
  706. package/dist/esm/types/AnnotationStyle.js +0 -0
  707. package/dist/esm/types/AnnotationTypes.d.ts +45 -0
  708. package/dist/esm/types/AnnotationTypes.js +0 -0
  709. package/dist/esm/types/BoundsIJK.d.ts +3 -0
  710. package/dist/esm/types/BoundsIJK.js +0 -0
  711. package/dist/esm/types/CINETypes.d.ts +30 -0
  712. package/dist/esm/types/CINETypes.js +0 -0
  713. package/dist/esm/types/CalculatorTypes.d.ts +42 -0
  714. package/dist/esm/types/CalculatorTypes.js +0 -0
  715. package/dist/esm/types/CardinalSplineProps.d.ts +5 -0
  716. package/dist/esm/types/CardinalSplineProps.js +0 -0
  717. package/dist/esm/types/ClosestControlPoint.d.ts +4 -0
  718. package/dist/esm/types/ClosestControlPoint.js +0 -0
  719. package/dist/esm/types/ClosestPoint.d.ts +5 -0
  720. package/dist/esm/types/ClosestPoint.js +0 -0
  721. package/dist/esm/types/ClosestSplinePoint.d.ts +4 -0
  722. package/dist/esm/types/ClosestSplinePoint.js +0 -0
  723. package/dist/esm/types/ContourAnnotation.d.ts +20 -0
  724. package/dist/esm/types/ContourAnnotation.js +6 -0
  725. package/dist/esm/types/ContourSegmentationAnnotation.d.ts +24 -0
  726. package/dist/esm/types/ContourSegmentationAnnotation.js +0 -0
  727. package/dist/esm/types/ContourTypes.d.ts +27 -0
  728. package/dist/esm/types/ContourTypes.js +0 -0
  729. package/dist/esm/types/ControlPointInfo.d.ts +5 -0
  730. package/dist/esm/types/ControlPointInfo.js +0 -0
  731. package/dist/esm/types/CursorTypes.d.ts +18 -0
  732. package/dist/esm/types/CursorTypes.js +0 -0
  733. package/dist/esm/types/EventTypes.d.ts +234 -0
  734. package/dist/esm/types/EventTypes.js +0 -0
  735. package/dist/esm/types/FloodFillTypes.d.ts +16 -0
  736. package/dist/esm/types/FloodFillTypes.js +0 -0
  737. package/dist/esm/types/IAnnotationManager.d.ts +14 -0
  738. package/dist/esm/types/IAnnotationManager.js +0 -0
  739. package/dist/esm/types/IBaseTool.d.ts +2 -0
  740. package/dist/esm/types/IBaseTool.js +0 -0
  741. package/dist/esm/types/IDistance.d.ts +7 -0
  742. package/dist/esm/types/IDistance.js +0 -0
  743. package/dist/esm/types/IPoints.d.ts +8 -0
  744. package/dist/esm/types/IPoints.js +0 -0
  745. package/dist/esm/types/ISculptToolShape.d.ts +12 -0
  746. package/dist/esm/types/ISculptToolShape.js +0 -0
  747. package/dist/esm/types/ISetToolModeOptions.d.ts +16 -0
  748. package/dist/esm/types/ISetToolModeOptions.js +0 -0
  749. package/dist/esm/types/ISpline.d.ts +30 -0
  750. package/dist/esm/types/ISpline.js +0 -0
  751. package/dist/esm/types/ISynchronizerEventHandler.d.ts +5 -0
  752. package/dist/esm/types/ISynchronizerEventHandler.js +0 -0
  753. package/dist/esm/types/IToolClassReference.d.ts +3 -0
  754. package/dist/esm/types/IToolClassReference.js +0 -0
  755. package/dist/esm/types/IToolGroup.d.ts +3 -0
  756. package/dist/esm/types/IToolGroup.js +0 -0
  757. package/dist/esm/types/ITouchPoints.d.ts +11 -0
  758. package/dist/esm/types/ITouchPoints.js +0 -0
  759. package/dist/esm/types/InteractionTypes.d.ts +2 -0
  760. package/dist/esm/types/InteractionTypes.js +0 -0
  761. package/dist/esm/types/InternalToolTypes.d.ts +15 -0
  762. package/dist/esm/types/InternalToolTypes.js +0 -0
  763. package/dist/esm/types/InterpolationTypes.d.ts +20 -0
  764. package/dist/esm/types/InterpolationTypes.js +0 -0
  765. package/dist/esm/types/LabelmapToolOperationData.d.ts +26 -0
  766. package/dist/esm/types/LabelmapToolOperationData.js +0 -0
  767. package/dist/esm/types/LabelmapTypes.d.ts +29 -0
  768. package/dist/esm/types/LabelmapTypes.js +0 -0
  769. package/dist/esm/types/PlanarBoundingBox.d.ts +7 -0
  770. package/dist/esm/types/PlanarBoundingBox.js +0 -0
  771. package/dist/esm/types/SVGDrawingHelper.d.ts +9 -0
  772. package/dist/esm/types/SVGDrawingHelper.js +0 -0
  773. package/dist/esm/types/SegmentationStateTypes.d.ts +96 -0
  774. package/dist/esm/types/SegmentationStateTypes.js +0 -0
  775. package/dist/esm/types/SplineCurveSegment.d.ts +14 -0
  776. package/dist/esm/types/SplineCurveSegment.js +0 -0
  777. package/dist/esm/types/SplineLineSegment.d.ts +10 -0
  778. package/dist/esm/types/SplineLineSegment.js +0 -0
  779. package/dist/esm/types/SplineProps.d.ts +5 -0
  780. package/dist/esm/types/SplineProps.js +0 -0
  781. package/dist/esm/types/SurfaceTypes.d.ts +5 -0
  782. package/dist/esm/types/SurfaceTypes.js +0 -0
  783. package/dist/esm/types/ToolAction.d.ts +8 -0
  784. package/dist/esm/types/ToolAction.js +0 -0
  785. package/dist/esm/types/ToolHandle.d.ts +15 -0
  786. package/dist/esm/types/ToolHandle.js +0 -0
  787. package/dist/esm/types/ToolProps.d.ts +13 -0
  788. package/dist/esm/types/ToolProps.js +0 -0
  789. package/dist/esm/types/ToolSpecificAnnotationTypes.d.ts +477 -0
  790. package/dist/esm/types/ToolSpecificAnnotationTypes.js +0 -0
  791. package/dist/esm/types/index.d.ts +49 -0
  792. package/dist/esm/types/index.js +0 -0
  793. package/dist/esm/utilities/AnnotationMultiSlice.d.ts +11 -0
  794. package/dist/esm/utilities/AnnotationMultiSlice.js +68 -0
  795. package/dist/esm/utilities/BucketQueue.d.ts +20 -0
  796. package/dist/esm/utilities/BucketQueue.js +78 -0
  797. package/dist/esm/utilities/annotationHydration.d.ts +9 -0
  798. package/dist/esm/utilities/annotationHydration.js +82 -0
  799. package/dist/esm/utilities/boundingBox/extend2DBoundingBoxInViewAxis.d.ts +3 -0
  800. package/dist/esm/utilities/boundingBox/extend2DBoundingBoxInViewAxis.js +10 -0
  801. package/dist/esm/utilities/boundingBox/getBoundingBoxAroundShape.d.ts +5 -0
  802. package/dist/esm/utilities/boundingBox/getBoundingBoxAroundShape.js +55 -0
  803. package/dist/esm/utilities/boundingBox/index.d.ts +3 -0
  804. package/dist/esm/utilities/boundingBox/index.js +3 -0
  805. package/dist/esm/utilities/calibrateImageSpacing.d.ts +2 -0
  806. package/dist/esm/utilities/calibrateImageSpacing.js +18 -0
  807. package/dist/esm/utilities/cine/events.d.ts +5 -0
  808. package/dist/esm/utilities/cine/events.js +6 -0
  809. package/dist/esm/utilities/cine/index.d.ts +4 -0
  810. package/dist/esm/utilities/cine/index.js +4 -0
  811. package/dist/esm/utilities/cine/playClip.d.ts +8 -0
  812. package/dist/esm/utilities/cine/playClip.js +352 -0
  813. package/dist/esm/utilities/cine/state.d.ts +5 -0
  814. package/dist/esm/utilities/cine/state.js +16 -0
  815. package/dist/esm/utilities/contourSegmentation/addContourSegmentationAnnotation.d.ts +2 -0
  816. package/dist/esm/utilities/contourSegmentation/addContourSegmentationAnnotation.js +24 -0
  817. package/dist/esm/utilities/contourSegmentation/areSameSegment.d.ts +2 -0
  818. package/dist/esm/utilities/contourSegmentation/areSameSegment.js +6 -0
  819. package/dist/esm/utilities/contourSegmentation/index.d.ts +4 -0
  820. package/dist/esm/utilities/contourSegmentation/index.js +4 -0
  821. package/dist/esm/utilities/contourSegmentation/isContourSegmentationAnnotation.d.ts +3 -0
  822. package/dist/esm/utilities/contourSegmentation/isContourSegmentationAnnotation.js +3 -0
  823. package/dist/esm/utilities/contourSegmentation/removeContourSegmentationAnnotation.d.ts +2 -0
  824. package/dist/esm/utilities/contourSegmentation/removeContourSegmentationAnnotation.js +17 -0
  825. package/dist/esm/utilities/contours/AnnotationToPointData.d.ts +11 -0
  826. package/dist/esm/utilities/contours/AnnotationToPointData.js +38 -0
  827. package/dist/esm/utilities/contours/RectangleROIStartEndThreshold.d.ts +6 -0
  828. package/dist/esm/utilities/contours/RectangleROIStartEndThreshold.js +40 -0
  829. package/dist/esm/utilities/contours/areCoplanarContours.d.ts +2 -0
  830. package/dist/esm/utilities/contours/areCoplanarContours.js +15 -0
  831. package/dist/esm/utilities/contours/calculatePerimeter.d.ts +2 -0
  832. package/dist/esm/utilities/contours/calculatePerimeter.js +16 -0
  833. package/dist/esm/utilities/contours/contourFinder.d.ts +7 -0
  834. package/dist/esm/utilities/contours/contourFinder.js +62 -0
  835. package/dist/esm/utilities/contours/detectContourHoles.d.ts +5 -0
  836. package/dist/esm/utilities/contours/detectContourHoles.js +73 -0
  837. package/dist/esm/utilities/contours/findHandlePolylineIndex.d.ts +2 -0
  838. package/dist/esm/utilities/contours/findHandlePolylineIndex.js +31 -0
  839. package/dist/esm/utilities/contours/generateContourSetsFromLabelmap.d.ts +4 -0
  840. package/dist/esm/utilities/contours/generateContourSetsFromLabelmap.js +110 -0
  841. package/dist/esm/utilities/contours/getContourHolesDataCanvas.d.ts +3 -0
  842. package/dist/esm/utilities/contours/getContourHolesDataCanvas.js +14 -0
  843. package/dist/esm/utilities/contours/getContourHolesDataWorld.d.ts +3 -0
  844. package/dist/esm/utilities/contours/getContourHolesDataWorld.js +5 -0
  845. package/dist/esm/utilities/contours/getDeduplicatedVTKPolyDataPoints.d.ts +11 -0
  846. package/dist/esm/utilities/contours/getDeduplicatedVTKPolyDataPoints.js +45 -0
  847. package/dist/esm/utilities/contours/index.d.ts +13 -0
  848. package/dist/esm/utilities/contours/index.js +13 -0
  849. package/dist/esm/utilities/contours/interpolation/acceptAutogeneratedInterpolations.d.ts +3 -0
  850. package/dist/esm/utilities/contours/interpolation/acceptAutogeneratedInterpolations.js +4 -0
  851. package/dist/esm/utilities/contours/interpolation/createPolylineToolData.d.ts +2 -0
  852. package/dist/esm/utilities/contours/interpolation/createPolylineToolData.js +38 -0
  853. package/dist/esm/utilities/contours/interpolation/findAnnotationForInterpolation.d.ts +7 -0
  854. package/dist/esm/utilities/contours/interpolation/findAnnotationForInterpolation.js +106 -0
  855. package/dist/esm/utilities/contours/interpolation/getInterpolationData.d.ts +7 -0
  856. package/dist/esm/utilities/contours/interpolation/getInterpolationData.js +47 -0
  857. package/dist/esm/utilities/contours/interpolation/getInterpolationDataCollection.d.ts +4 -0
  858. package/dist/esm/utilities/contours/interpolation/getInterpolationDataCollection.js +14 -0
  859. package/dist/esm/utilities/contours/interpolation/interpolate.d.ts +11 -0
  860. package/dist/esm/utilities/contours/interpolation/interpolate.js +339 -0
  861. package/dist/esm/utilities/contours/interpolation/selectHandles.d.ts +4 -0
  862. package/dist/esm/utilities/contours/interpolation/selectHandles.js +162 -0
  863. package/dist/esm/utilities/contours/interpolation/updateChildInterpolationUID.d.ts +2 -0
  864. package/dist/esm/utilities/contours/interpolation/updateChildInterpolationUID.js +12 -0
  865. package/dist/esm/utilities/contours/reverseIfAntiClockwise.d.ts +2 -0
  866. package/dist/esm/utilities/contours/reverseIfAntiClockwise.js +11 -0
  867. package/dist/esm/utilities/contours/updateContourPolyline.d.ts +17 -0
  868. package/dist/esm/utilities/contours/updateContourPolyline.js +52 -0
  869. package/dist/esm/utilities/debounce.d.ts +6 -0
  870. package/dist/esm/utilities/debounce.js +113 -0
  871. package/dist/esm/utilities/drawing/getTextBoxCoordsCanvas.d.ts +2 -0
  872. package/dist/esm/utilities/drawing/getTextBoxCoordsCanvas.js +24 -0
  873. package/dist/esm/utilities/drawing/index.d.ts +2 -0
  874. package/dist/esm/utilities/drawing/index.js +2 -0
  875. package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.d.ts +12 -0
  876. package/dist/esm/utilities/dynamicVolume/generateImageFromTimeData.js +98 -0
  877. package/dist/esm/utilities/dynamicVolume/getDataInTime.d.ts +8 -0
  878. package/dist/esm/utilities/dynamicVolume/getDataInTime.js +111 -0
  879. package/dist/esm/utilities/dynamicVolume/index.d.ts +4 -0
  880. package/dist/esm/utilities/dynamicVolume/index.js +4 -0
  881. package/dist/esm/utilities/geometricSurfaceUtils.d.ts +8 -0
  882. package/dist/esm/utilities/geometricSurfaceUtils.js +103 -0
  883. package/dist/esm/utilities/getAnnotationNearPoint.d.ts +5 -0
  884. package/dist/esm/utilities/getAnnotationNearPoint.js +46 -0
  885. package/dist/esm/utilities/getCalibratedUnits.d.ts +16 -0
  886. package/dist/esm/utilities/getCalibratedUnits.js +155 -0
  887. package/dist/esm/utilities/getPixelValueUnits.d.ts +8 -0
  888. package/dist/esm/utilities/getPixelValueUnits.js +31 -0
  889. package/dist/esm/utilities/getSphereBoundsInfo.d.ts +14 -0
  890. package/dist/esm/utilities/getSphereBoundsInfo.js +64 -0
  891. package/dist/esm/utilities/getToolsWithModesForElement.d.ts +4 -0
  892. package/dist/esm/utilities/getToolsWithModesForElement.js +24 -0
  893. package/dist/esm/utilities/getVOIMultipliers.d.ts +5 -0
  894. package/dist/esm/utilities/getVOIMultipliers.js +18 -0
  895. package/dist/esm/utilities/getViewportForAnnotation.d.ts +3 -0
  896. package/dist/esm/utilities/getViewportForAnnotation.js +5 -0
  897. package/dist/esm/utilities/getViewportsForAnnotation.d.ts +3 -0
  898. package/dist/esm/utilities/getViewportsForAnnotation.js +16 -0
  899. package/dist/esm/utilities/index.d.ts +40 -0
  900. package/dist/esm/utilities/index.js +40 -0
  901. package/dist/esm/utilities/isObject.d.ts +2 -0
  902. package/dist/esm/utilities/isObject.js +5 -0
  903. package/dist/esm/utilities/livewire/LiveWirePath.d.ts +19 -0
  904. package/dist/esm/utilities/livewire/LiveWirePath.js +71 -0
  905. package/dist/esm/utilities/livewire/LivewireScissors.d.ts +38 -0
  906. package/dist/esm/utilities/livewire/LivewireScissors.js +305 -0
  907. package/dist/esm/utilities/math/aabb/distanceToPoint.d.ts +2 -0
  908. package/dist/esm/utilities/math/aabb/distanceToPoint.js +4 -0
  909. package/dist/esm/utilities/math/aabb/distanceToPointSquared.d.ts +2 -0
  910. package/dist/esm/utilities/math/aabb/distanceToPointSquared.js +20 -0
  911. package/dist/esm/utilities/math/aabb/index.d.ts +3 -0
  912. package/dist/esm/utilities/math/aabb/index.js +3 -0
  913. package/dist/esm/utilities/math/aabb/intersectAABB.d.ts +2 -0
  914. package/dist/esm/utilities/math/aabb/intersectAABB.js +6 -0
  915. package/dist/esm/utilities/math/angle/angleBetweenLines.d.ts +6 -0
  916. package/dist/esm/utilities/math/angle/angleBetweenLines.js +30 -0
  917. package/dist/esm/utilities/math/angle/index.d.ts +2 -0
  918. package/dist/esm/utilities/math/angle/index.js +2 -0
  919. package/dist/esm/utilities/math/basic/BasicStatsCalculator.d.ts +26 -0
  920. package/dist/esm/utilities/math/basic/BasicStatsCalculator.js +119 -0
  921. package/dist/esm/utilities/math/basic/Calculator.d.ts +8 -0
  922. package/dist/esm/utilities/math/basic/Calculator.js +3 -0
  923. package/dist/esm/utilities/math/basic/index.d.ts +3 -0
  924. package/dist/esm/utilities/math/basic/index.js +3 -0
  925. package/dist/esm/utilities/math/circle/_types.d.ts +5 -0
  926. package/dist/esm/utilities/math/circle/_types.js +0 -0
  927. package/dist/esm/utilities/math/circle/getCanvasCircleCorners.d.ts +3 -0
  928. package/dist/esm/utilities/math/circle/getCanvasCircleCorners.js +8 -0
  929. package/dist/esm/utilities/math/circle/getCanvasCircleRadius.d.ts +2 -0
  930. package/dist/esm/utilities/math/circle/getCanvasCircleRadius.js +5 -0
  931. package/dist/esm/utilities/math/circle/index.d.ts +3 -0
  932. package/dist/esm/utilities/math/circle/index.js +3 -0
  933. package/dist/esm/utilities/math/ellipse/getCanvasEllipseCorners.d.ts +8 -0
  934. package/dist/esm/utilities/math/ellipse/getCanvasEllipseCorners.js +6 -0
  935. package/dist/esm/utilities/math/ellipse/index.d.ts +3 -0
  936. package/dist/esm/utilities/math/ellipse/index.js +3 -0
  937. package/dist/esm/utilities/math/ellipse/pointInEllipse.d.ts +11 -0
  938. package/dist/esm/utilities/math/ellipse/pointInEllipse.js +36 -0
  939. package/dist/esm/utilities/math/ellipse/pointInEllipsoidWithConstraint.d.ts +9 -0
  940. package/dist/esm/utilities/math/ellipse/pointInEllipsoidWithConstraint.js +2 -0
  941. package/dist/esm/utilities/math/index.d.ts +11 -0
  942. package/dist/esm/utilities/math/index.js +11 -0
  943. package/dist/esm/utilities/math/line/distanceToPoint.d.ts +2 -0
  944. package/dist/esm/utilities/math/line/distanceToPoint.js +7 -0
  945. package/dist/esm/utilities/math/line/distanceToPointSquared.d.ts +2 -0
  946. package/dist/esm/utilities/math/line/distanceToPointSquared.js +4 -0
  947. package/dist/esm/utilities/math/line/distanceToPointSquaredInfo.d.ts +5 -0
  948. package/dist/esm/utilities/math/line/distanceToPointSquaredInfo.js +29 -0
  949. package/dist/esm/utilities/math/line/index.d.ts +6 -0
  950. package/dist/esm/utilities/math/line/index.js +6 -0
  951. package/dist/esm/utilities/math/line/intersectLine.d.ts +2 -0
  952. package/dist/esm/utilities/math/line/intersectLine.js +41 -0
  953. package/dist/esm/utilities/math/line/isPointOnLineSegment.d.ts +2 -0
  954. package/dist/esm/utilities/math/line/isPointOnLineSegment.js +18 -0
  955. package/dist/esm/utilities/math/midPoint.d.ts +5 -0
  956. package/dist/esm/utilities/math/midPoint.js +15 -0
  957. package/dist/esm/utilities/math/point/distanceToPoint.d.ts +4 -0
  958. package/dist/esm/utilities/math/point/distanceToPoint.js +4 -0
  959. package/dist/esm/utilities/math/point/distanceToPointSquared.d.ts +4 -0
  960. package/dist/esm/utilities/math/point/distanceToPointSquared.js +11 -0
  961. package/dist/esm/utilities/math/point/index.d.ts +3 -0
  962. package/dist/esm/utilities/math/point/index.js +3 -0
  963. package/dist/esm/utilities/math/point/mirror.d.ts +2 -0
  964. package/dist/esm/utilities/math/point/mirror.js +7 -0
  965. package/dist/esm/utilities/math/polyline/addCanvasPointsToArray.d.ts +4 -0
  966. package/dist/esm/utilities/math/polyline/addCanvasPointsToArray.js +38 -0
  967. package/dist/esm/utilities/math/polyline/areLineSegmentsIntersecting.d.ts +2 -0
  968. package/dist/esm/utilities/math/polyline/areLineSegmentsIntersecting.js +55 -0
  969. package/dist/esm/utilities/math/polyline/combinePolyline.d.ts +4 -0
  970. package/dist/esm/utilities/math/polyline/combinePolyline.js +186 -0
  971. package/dist/esm/utilities/math/polyline/containsPoint.d.ts +5 -0
  972. package/dist/esm/utilities/math/polyline/containsPoint.js +39 -0
  973. package/dist/esm/utilities/math/polyline/containsPoints.d.ts +2 -0
  974. package/dist/esm/utilities/math/polyline/containsPoints.js +9 -0
  975. package/dist/esm/utilities/math/polyline/decimate.d.ts +2 -0
  976. package/dist/esm/utilities/math/polyline/decimate.js +46 -0
  977. package/dist/esm/utilities/math/polyline/getAABB.d.ts +4 -0
  978. package/dist/esm/utilities/math/polyline/getAABB.js +40 -0
  979. package/dist/esm/utilities/math/polyline/getArea.d.ts +2 -0
  980. package/dist/esm/utilities/math/polyline/getArea.js +10 -0
  981. package/dist/esm/utilities/math/polyline/getClosestLineSegmentIntersection.d.ts +5 -0
  982. package/dist/esm/utilities/math/polyline/getClosestLineSegmentIntersection.js +44 -0
  983. package/dist/esm/utilities/math/polyline/getFirstLineSegmentIntersectionIndexes.d.ts +2 -0
  984. package/dist/esm/utilities/math/polyline/getFirstLineSegmentIntersectionIndexes.js +21 -0
  985. package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsCoordinates.d.ts +2 -0
  986. package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsCoordinates.js +13 -0
  987. package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsIndexes.d.ts +2 -0
  988. package/dist/esm/utilities/math/polyline/getLineSegmentIntersectionsIndexes.js +15 -0
  989. package/dist/esm/utilities/math/polyline/getLinesIntersection.d.ts +2 -0
  990. package/dist/esm/utilities/math/polyline/getLinesIntersection.js +51 -0
  991. package/dist/esm/utilities/math/polyline/getNormal2.d.ts +2 -0
  992. package/dist/esm/utilities/math/polyline/getNormal2.js +5 -0
  993. package/dist/esm/utilities/math/polyline/getNormal3.d.ts +2 -0
  994. package/dist/esm/utilities/math/polyline/getNormal3.js +25 -0
  995. package/dist/esm/utilities/math/polyline/getSignedArea.d.ts +2 -0
  996. package/dist/esm/utilities/math/polyline/getSignedArea.js +19 -0
  997. package/dist/esm/utilities/math/polyline/getSubPixelSpacingAndXYDirections.d.ts +7 -0
  998. package/dist/esm/utilities/math/polyline/getSubPixelSpacingAndXYDirections.js +72 -0
  999. package/dist/esm/utilities/math/polyline/getWindingDirection.d.ts +2 -0
  1000. package/dist/esm/utilities/math/polyline/getWindingDirection.js +5 -0
  1001. package/dist/esm/utilities/math/polyline/index.d.ts +23 -0
  1002. package/dist/esm/utilities/math/polyline/index.js +23 -0
  1003. package/dist/esm/utilities/math/polyline/intersectPolyline.d.ts +2 -0
  1004. package/dist/esm/utilities/math/polyline/intersectPolyline.js +13 -0
  1005. package/dist/esm/utilities/math/polyline/isClosed.d.ts +2 -0
  1006. package/dist/esm/utilities/math/polyline/isClosed.js +12 -0
  1007. package/dist/esm/utilities/math/polyline/isPointInsidePolyline3D.d.ts +4 -0
  1008. package/dist/esm/utilities/math/polyline/isPointInsidePolyline3D.js +25 -0
  1009. package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts +25 -0
  1010. package/dist/esm/utilities/math/polyline/planarFreehandROIInternalTypes.js +0 -0
  1011. package/dist/esm/utilities/math/polyline/pointCanProjectOnLine.d.ts +3 -0
  1012. package/dist/esm/utilities/math/polyline/pointCanProjectOnLine.js +32 -0
  1013. package/dist/esm/utilities/math/polyline/pointsAreWithinCloseContourProximity.d.ts +3 -0
  1014. package/dist/esm/utilities/math/polyline/pointsAreWithinCloseContourProximity.js +5 -0
  1015. package/dist/esm/utilities/math/polyline/projectTo2D.d.ts +5 -0
  1016. package/dist/esm/utilities/math/polyline/projectTo2D.js +25 -0
  1017. package/dist/esm/utilities/math/rectangle/distanceToPoint.d.ts +2 -0
  1018. package/dist/esm/utilities/math/rectangle/distanceToPoint.js +34 -0
  1019. package/dist/esm/utilities/math/rectangle/index.d.ts +2 -0
  1020. package/dist/esm/utilities/math/rectangle/index.js +2 -0
  1021. package/dist/esm/utilities/math/sphere/index.d.ts +2 -0
  1022. package/dist/esm/utilities/math/sphere/index.js +2 -0
  1023. package/dist/esm/utilities/math/sphere/pointInSphere.d.ts +9 -0
  1024. package/dist/esm/utilities/math/sphere/pointInSphere.js +8 -0
  1025. package/dist/esm/utilities/math/vec2/findClosestPoint.d.ts +2 -0
  1026. package/dist/esm/utilities/math/vec2/findClosestPoint.js +17 -0
  1027. package/dist/esm/utilities/math/vec2/index.d.ts +3 -0
  1028. package/dist/esm/utilities/math/vec2/index.js +3 -0
  1029. package/dist/esm/utilities/math/vec2/liangBarksyClip.d.ts +1 -0
  1030. package/dist/esm/utilities/math/vec2/liangBarksyClip.js +68 -0
  1031. package/dist/esm/utilities/math/vec3/interpolateVec3.d.ts +2 -0
  1032. package/dist/esm/utilities/math/vec3/interpolateVec3.js +8 -0
  1033. package/dist/esm/utilities/normalizeViewportPlane.d.ts +19 -0
  1034. package/dist/esm/utilities/normalizeViewportPlane.js +35 -0
  1035. package/dist/esm/utilities/orientation/getOrientationStringLPS.d.ts +2 -0
  1036. package/dist/esm/utilities/orientation/getOrientationStringLPS.js +41 -0
  1037. package/dist/esm/utilities/orientation/index.d.ts +3 -0
  1038. package/dist/esm/utilities/orientation/index.js +3 -0
  1039. package/dist/esm/utilities/orientation/invertOrientationStringLPS.d.ts +1 -0
  1040. package/dist/esm/utilities/orientation/invertOrientationStringLPS.js +10 -0
  1041. package/dist/esm/utilities/planar/filterAnnotationsForDisplay.d.ts +3 -0
  1042. package/dist/esm/utilities/planar/filterAnnotationsForDisplay.js +26 -0
  1043. package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.d.ts +3 -0
  1044. package/dist/esm/utilities/planar/filterAnnotationsWithinPlane.js +26 -0
  1045. package/dist/esm/utilities/planar/filterAnnotationsWithinSlice.d.ts +3 -0
  1046. package/dist/esm/utilities/planar/filterAnnotationsWithinSlice.js +46 -0
  1047. package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.d.ts +6 -0
  1048. package/dist/esm/utilities/planar/getPointInLineOfSightWithCriteria.js +49 -0
  1049. package/dist/esm/utilities/planar/getWorldWidthAndHeightFromCorners.d.ts +5 -0
  1050. package/dist/esm/utilities/planar/getWorldWidthAndHeightFromCorners.js +18 -0
  1051. package/dist/esm/utilities/planar/getWorldWidthAndHeightFromTwoPoints.d.ts +5 -0
  1052. package/dist/esm/utilities/planar/getWorldWidthAndHeightFromTwoPoints.js +18 -0
  1053. package/dist/esm/utilities/planar/index.d.ts +19 -0
  1054. package/dist/esm/utilities/planar/index.js +18 -0
  1055. package/dist/esm/utilities/planar/isPlaneIntersectingAABB.d.ts +1 -0
  1056. package/dist/esm/utilities/planar/isPlaneIntersectingAABB.js +27 -0
  1057. package/dist/esm/utilities/planarFreehandROITool/index.d.ts +6 -0
  1058. package/dist/esm/utilities/planarFreehandROITool/index.js +5 -0
  1059. package/dist/esm/utilities/planarFreehandROITool/interpolation/algorithms/bspline.d.ts +2 -0
  1060. package/dist/esm/utilities/planarFreehandROITool/interpolation/algorithms/bspline.js +22 -0
  1061. package/dist/esm/utilities/planarFreehandROITool/interpolation/interpolateSegmentPoints.d.ts +2 -0
  1062. package/dist/esm/utilities/planarFreehandROITool/interpolation/interpolateSegmentPoints.js +41 -0
  1063. package/dist/esm/utilities/planarFreehandROITool/smoothAnnotation.d.ts +6 -0
  1064. package/dist/esm/utilities/planarFreehandROITool/smoothAnnotation.js +56 -0
  1065. package/dist/esm/utilities/planarFreehandROITool/smoothPoints.d.ts +11 -0
  1066. package/dist/esm/utilities/planarFreehandROITool/smoothPoints.js +91 -0
  1067. package/dist/esm/utilities/pointInSurroundingSphereCallback.d.ts +8 -0
  1068. package/dist/esm/utilities/pointInSurroundingSphereCallback.js +71 -0
  1069. package/dist/esm/utilities/pointToString.d.ts +1 -0
  1070. package/dist/esm/utilities/pointToString.js +8 -0
  1071. package/dist/esm/utilities/polyData/utils.d.ts +5 -0
  1072. package/dist/esm/utilities/polyData/utils.js +53 -0
  1073. package/dist/esm/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.d.ts +5 -0
  1074. package/dist/esm/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.js +44 -0
  1075. package/dist/esm/utilities/rectangleROITool/index.d.ts +3 -0
  1076. package/dist/esm/utilities/rectangleROITool/index.js +3 -0
  1077. package/dist/esm/utilities/rectangleROITool/isAxisAlignedRectangle.d.ts +2 -0
  1078. package/dist/esm/utilities/rectangleROITool/isAxisAlignedRectangle.js +22 -0
  1079. package/dist/esm/utilities/registerComputeWorker.d.ts +1 -0
  1080. package/dist/esm/utilities/registerComputeWorker.js +23 -0
  1081. package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.d.ts +11 -0
  1082. package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.js +177 -0
  1083. package/dist/esm/utilities/segmentation/InterpolationManager/deleteRelatedAnnotations.d.ts +2 -0
  1084. package/dist/esm/utilities/segmentation/InterpolationManager/deleteRelatedAnnotations.js +66 -0
  1085. package/dist/esm/utilities/segmentation/VolumetricCalculator.d.ts +15 -0
  1086. package/dist/esm/utilities/segmentation/VolumetricCalculator.js +48 -0
  1087. package/dist/esm/utilities/segmentation/brushSizeForToolGroup.d.ts +2 -0
  1088. package/dist/esm/utilities/segmentation/brushSizeForToolGroup.js +40 -0
  1089. package/dist/esm/utilities/segmentation/brushThresholdForToolGroup.d.ts +7 -0
  1090. package/dist/esm/utilities/segmentation/brushThresholdForToolGroup.js +45 -0
  1091. package/dist/esm/utilities/segmentation/computeAndAddRepresentation.d.ts +3 -0
  1092. package/dist/esm/utilities/segmentation/computeAndAddRepresentation.js +45 -0
  1093. package/dist/esm/utilities/segmentation/contourAndFindLargestBidirectional.d.ts +1 -0
  1094. package/dist/esm/utilities/segmentation/contourAndFindLargestBidirectional.js +23 -0
  1095. package/dist/esm/utilities/segmentation/createBidirectionalToolData.d.ts +14 -0
  1096. package/dist/esm/utilities/segmentation/createBidirectionalToolData.js +35 -0
  1097. package/dist/esm/utilities/segmentation/createLabelmapMemo.d.ts +44 -0
  1098. package/dist/esm/utilities/segmentation/createLabelmapMemo.js +68 -0
  1099. package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.d.ts +9 -0
  1100. package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js +28 -0
  1101. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.d.ts +3 -0
  1102. package/dist/esm/utilities/segmentation/createMergedLabelmapForIndex.js +34 -0
  1103. package/dist/esm/utilities/segmentation/findLargestBidirectional.d.ts +1 -0
  1104. package/dist/esm/utilities/segmentation/findLargestBidirectional.js +95 -0
  1105. package/dist/esm/utilities/segmentation/floodFill.d.ts +4 -0
  1106. package/dist/esm/utilities/segmentation/floodFill.js +120 -0
  1107. package/dist/esm/utilities/segmentation/getBrushToolInstances.d.ts +1 -0
  1108. package/dist/esm/utilities/segmentation/getBrushToolInstances.js +17 -0
  1109. package/dist/esm/utilities/segmentation/getHoveredContourSegmentationAnnotation.d.ts +1 -0
  1110. package/dist/esm/utilities/segmentation/getHoveredContourSegmentationAnnotation.js +13 -0
  1111. package/dist/esm/utilities/segmentation/getOrCreateSegmentationVolume.d.ts +2 -0
  1112. package/dist/esm/utilities/segmentation/getOrCreateSegmentationVolume.js +21 -0
  1113. package/dist/esm/utilities/segmentation/getSVGStyleForSegment.d.ts +17 -0
  1114. package/dist/esm/utilities/segmentation/getSVGStyleForSegment.js +68 -0
  1115. package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.d.ts +7 -0
  1116. package/dist/esm/utilities/segmentation/getSegmentIndexAtLabelmapBorder.js +76 -0
  1117. package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.d.ts +11 -0
  1118. package/dist/esm/utilities/segmentation/getSegmentIndexAtWorldPoint.js +74 -0
  1119. package/dist/esm/utilities/segmentation/getStatistics.d.ts +5 -0
  1120. package/dist/esm/utilities/segmentation/getStatistics.js +210 -0
  1121. package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.d.ts +2 -0
  1122. package/dist/esm/utilities/segmentation/getUniqueSegmentIndices.js +80 -0
  1123. package/dist/esm/utilities/segmentation/growCut/growCutShader.d.ts +2 -0
  1124. package/dist/esm/utilities/segmentation/growCut/growCutShader.js +106 -0
  1125. package/dist/esm/utilities/segmentation/growCut/index.d.ts +7 -0
  1126. package/dist/esm/utilities/segmentation/growCut/index.js +4 -0
  1127. package/dist/esm/utilities/segmentation/growCut/runGrowCut.d.ts +16 -0
  1128. package/dist/esm/utilities/segmentation/growCut/runGrowCut.js +269 -0
  1129. package/dist/esm/utilities/segmentation/growCut/runGrowCutForBoundingBox.d.ts +15 -0
  1130. package/dist/esm/utilities/segmentation/growCut/runGrowCutForBoundingBox.js +110 -0
  1131. package/dist/esm/utilities/segmentation/growCut/runGrowCutForSphere.d.ts +9 -0
  1132. package/dist/esm/utilities/segmentation/growCut/runGrowCutForSphere.js +164 -0
  1133. package/dist/esm/utilities/segmentation/growCut/runOneClickGrowCut.d.ts +9 -0
  1134. package/dist/esm/utilities/segmentation/growCut/runOneClickGrowCut.js +176 -0
  1135. package/dist/esm/utilities/segmentation/index.d.ts +28 -0
  1136. package/dist/esm/utilities/segmentation/index.js +28 -0
  1137. package/dist/esm/utilities/segmentation/invalidateBrushCursor.d.ts +1 -0
  1138. package/dist/esm/utilities/segmentation/invalidateBrushCursor.js +20 -0
  1139. package/dist/esm/utilities/segmentation/isLineInSegment.d.ts +9 -0
  1140. package/dist/esm/utilities/segmentation/isLineInSegment.js +49 -0
  1141. package/dist/esm/utilities/segmentation/islandRemoval.d.ts +28 -0
  1142. package/dist/esm/utilities/segmentation/islandRemoval.js +181 -0
  1143. package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.d.ts +20 -0
  1144. package/dist/esm/utilities/segmentation/rectangleROIThresholdVolumeByRange.js +35 -0
  1145. package/dist/esm/utilities/segmentation/segmentContourAction.d.ts +17 -0
  1146. package/dist/esm/utilities/segmentation/segmentContourAction.js +95 -0
  1147. package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.d.ts +4 -0
  1148. package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.js +58 -0
  1149. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.d.ts +11 -0
  1150. package/dist/esm/utilities/segmentation/thresholdVolumeByRange.js +79 -0
  1151. package/dist/esm/utilities/segmentation/utilities.d.ts +25 -0
  1152. package/dist/esm/utilities/segmentation/utilities.js +86 -0
  1153. package/dist/esm/utilities/segmentation/validateLabelmap.d.ts +4 -0
  1154. package/dist/esm/utilities/segmentation/validateLabelmap.js +32 -0
  1155. package/dist/esm/utilities/stackPrefetch/index.d.ts +3 -0
  1156. package/dist/esm/utilities/stackPrefetch/index.js +3 -0
  1157. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.d.ts +16 -0
  1158. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +221 -0
  1159. package/dist/esm/utilities/stackPrefetch/stackPrefetch.d.ts +14 -0
  1160. package/dist/esm/utilities/stackPrefetch/stackPrefetch.js +150 -0
  1161. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.d.ts +14 -0
  1162. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +76 -0
  1163. package/dist/esm/utilities/stackPrefetch/state.d.ts +22 -0
  1164. package/dist/esm/utilities/stackPrefetch/state.js +13 -0
  1165. package/dist/esm/utilities/throttle.d.ts +5 -0
  1166. package/dist/esm/utilities/throttle.js +19 -0
  1167. package/dist/esm/utilities/touch/index.d.ts +10 -0
  1168. package/dist/esm/utilities/touch/index.js +152 -0
  1169. package/dist/esm/utilities/triggerAnnotationRender.d.ts +2 -0
  1170. package/dist/esm/utilities/triggerAnnotationRender.js +5 -0
  1171. package/dist/esm/utilities/triggerAnnotationRenderForToolGroupIds.d.ts +2 -0
  1172. package/dist/esm/utilities/triggerAnnotationRenderForToolGroupIds.js +24 -0
  1173. package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.d.ts +2 -0
  1174. package/dist/esm/utilities/triggerAnnotationRenderForViewportIds.js +22 -0
  1175. package/dist/esm/utilities/viewport/index.d.ts +2 -0
  1176. package/dist/esm/utilities/viewport/index.js +2 -0
  1177. package/dist/esm/utilities/viewport/isViewportPreScaled.d.ts +3 -0
  1178. package/dist/esm/utilities/viewport/isViewportPreScaled.js +16 -0
  1179. package/dist/esm/utilities/viewportFilters/filterViewportsWithFrameOfReferenceUID.d.ts +2 -0
  1180. package/dist/esm/utilities/viewportFilters/filterViewportsWithFrameOfReferenceUID.js +11 -0
  1181. package/dist/esm/utilities/viewportFilters/filterViewportsWithParallelNormals.d.ts +2 -0
  1182. package/dist/esm/utilities/viewportFilters/filterViewportsWithParallelNormals.js +10 -0
  1183. package/dist/esm/utilities/viewportFilters/filterViewportsWithSameOrientation.d.ts +2 -0
  1184. package/dist/esm/utilities/viewportFilters/filterViewportsWithSameOrientation.js +9 -0
  1185. package/dist/esm/utilities/viewportFilters/filterViewportsWithToolEnabled.d.ts +2 -0
  1186. package/dist/esm/utilities/viewportFilters/filterViewportsWithToolEnabled.js +28 -0
  1187. package/dist/esm/utilities/viewportFilters/getViewportIdsWithToolToRender.d.ts +1 -0
  1188. package/dist/esm/utilities/viewportFilters/getViewportIdsWithToolToRender.js +17 -0
  1189. package/dist/esm/utilities/viewportFilters/index.d.ts +5 -0
  1190. package/dist/esm/utilities/viewportFilters/index.js +5 -0
  1191. package/dist/esm/utilities/voi/colorbar/Colorbar.d.ts +44 -0
  1192. package/dist/esm/utilities/voi/colorbar/Colorbar.js +242 -0
  1193. package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.d.ts +29 -0
  1194. package/dist/esm/utilities/voi/colorbar/ColorbarCanvas.js +182 -0
  1195. package/dist/esm/utilities/voi/colorbar/ColorbarTicks.d.ts +46 -0
  1196. package/dist/esm/utilities/voi/colorbar/ColorbarTicks.js +280 -0
  1197. package/dist/esm/utilities/voi/colorbar/ViewportColorbar.d.ts +25 -0
  1198. package/dist/esm/utilities/voi/colorbar/ViewportColorbar.js +146 -0
  1199. package/dist/esm/utilities/voi/colorbar/common/areColorbarRangesEqual.d.ts +3 -0
  1200. package/dist/esm/utilities/voi/colorbar/common/areColorbarRangesEqual.js +4 -0
  1201. package/dist/esm/utilities/voi/colorbar/common/areColorbarSizesEqual.d.ts +3 -0
  1202. package/dist/esm/utilities/voi/colorbar/common/areColorbarSizesEqual.js +4 -0
  1203. package/dist/esm/utilities/voi/colorbar/common/index.d.ts +4 -0
  1204. package/dist/esm/utilities/voi/colorbar/common/index.js +4 -0
  1205. package/dist/esm/utilities/voi/colorbar/common/isColorbarSizeValid.d.ts +3 -0
  1206. package/dist/esm/utilities/voi/colorbar/common/isColorbarSizeValid.js +4 -0
  1207. package/dist/esm/utilities/voi/colorbar/common/isRangeTextPositionValid.d.ts +3 -0
  1208. package/dist/esm/utilities/voi/colorbar/common/isRangeTextPositionValid.js +9 -0
  1209. package/dist/esm/utilities/voi/colorbar/common/isRangeValid.d.ts +3 -0
  1210. package/dist/esm/utilities/voi/colorbar/common/isRangeValid.js +4 -0
  1211. package/dist/esm/utilities/voi/colorbar/enums/ColorbarRangeTextPosition.d.ts +6 -0
  1212. package/dist/esm/utilities/voi/colorbar/enums/ColorbarRangeTextPosition.js +7 -0
  1213. package/dist/esm/utilities/voi/colorbar/enums/index.d.ts +1 -0
  1214. package/dist/esm/utilities/voi/colorbar/enums/index.js +1 -0
  1215. package/dist/esm/utilities/voi/colorbar/index.d.ts +6 -0
  1216. package/dist/esm/utilities/voi/colorbar/index.js +4 -0
  1217. package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.d.ts +12 -0
  1218. package/dist/esm/utilities/voi/colorbar/types/ColorbarCanvasProps.js +0 -0
  1219. package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.d.ts +11 -0
  1220. package/dist/esm/utilities/voi/colorbar/types/ColorbarCommonProps.js +0 -0
  1221. package/dist/esm/utilities/voi/colorbar/types/ColorbarImageRange.d.ts +4 -0
  1222. package/dist/esm/utilities/voi/colorbar/types/ColorbarImageRange.js +0 -0
  1223. package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.d.ts +7 -0
  1224. package/dist/esm/utilities/voi/colorbar/types/ColorbarProps.js +0 -0
  1225. package/dist/esm/utilities/voi/colorbar/types/ColorbarSize.d.ts +4 -0
  1226. package/dist/esm/utilities/voi/colorbar/types/ColorbarSize.js +0 -0
  1227. package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksProps.d.ts +7 -0
  1228. package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksProps.js +0 -0
  1229. package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksStyle.d.ts +8 -0
  1230. package/dist/esm/utilities/voi/colorbar/types/ColorbarTicksStyle.js +0 -0
  1231. package/dist/esm/utilities/voi/colorbar/types/ColorbarVOIRange.d.ts +2 -0
  1232. package/dist/esm/utilities/voi/colorbar/types/ColorbarVOIRange.js +0 -0
  1233. package/dist/esm/utilities/voi/colorbar/types/ViewportColorbarProps.d.ts +5 -0
  1234. package/dist/esm/utilities/voi/colorbar/types/ViewportColorbarProps.js +0 -0
  1235. package/dist/esm/utilities/voi/colorbar/types/index.d.ts +8 -0
  1236. package/dist/esm/utilities/voi/colorbar/types/index.js +0 -0
  1237. package/dist/esm/utilities/voi/index.d.ts +3 -0
  1238. package/dist/esm/utilities/voi/index.js +3 -0
  1239. package/dist/esm/utilities/voi/windowlevel/calculateMinMaxMean.d.ts +6 -0
  1240. package/dist/esm/utilities/voi/windowlevel/calculateMinMaxMean.js +25 -0
  1241. package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.d.ts +11 -0
  1242. package/dist/esm/utilities/voi/windowlevel/extractWindowLevelRegionToolData.js +42 -0
  1243. package/dist/esm/utilities/voi/windowlevel/getLuminanceFromRegion.d.ts +2 -0
  1244. package/dist/esm/utilities/voi/windowlevel/getLuminanceFromRegion.js +27 -0
  1245. package/dist/esm/utilities/voi/windowlevel/index.d.ts +4 -0
  1246. package/dist/esm/utilities/voi/windowlevel/index.js +4 -0
  1247. package/dist/esm/widgets/Widget.d.ts +17 -0
  1248. package/dist/esm/widgets/Widget.js +66 -0
  1249. package/dist/esm/widgets/types/WidgetProps.d.ts +4 -0
  1250. package/dist/esm/widgets/types/WidgetProps.js +0 -0
  1251. package/dist/esm/widgets/types/WidgetSize.d.ts +4 -0
  1252. package/dist/esm/widgets/types/WidgetSize.js +0 -0
  1253. package/dist/esm/widgets/types/index.d.ts +2 -0
  1254. package/dist/esm/widgets/types/index.js +0 -0
  1255. package/dist/esm/workers/computeWorker.d.ts +1 -0
  1256. package/dist/esm/workers/computeWorker.js +78 -0
  1257. package/package.json +113 -100
  1258. package/changelog.md +0 -304
  1259. package/dist/cornerstoneTools.js +0 -27391
  1260. package/dist/cornerstoneTools.js.map +0 -1
  1261. package/dist/cornerstoneTools.min.js +0 -3
  1262. package/dist/cornerstoneTools.min.js.map +0 -1
@@ -0,0 +1,657 @@
1
+ import { vec3 } from 'gl-matrix';
2
+ import { getEnabledElement, utilities as csUtils, VolumeViewport, utilities, triggerEvent, eventTarget, } from '@cornerstonejs/core';
3
+ import { removeAnnotation } from '../../stateManagement/annotation/annotationState';
4
+ import { drawHandles as drawHandlesSvg, drawLinkedTextBox as drawLinkedTextBoxSvg, } from '../../drawingSvg';
5
+ import { state } from '../../store/state';
6
+ import { Events, KeyboardBindings, ChangeTypes } from '../../enums';
7
+ import { resetElementCursor } from '../../cursors/elementCursor';
8
+ import getMouseModifierKey from '../../eventDispatchers/shared/getMouseModifier';
9
+ import * as math from '../../utilities/math';
10
+ import triggerAnnotationRenderForViewportIds from '../../utilities/triggerAnnotationRenderForViewportIds';
11
+ import findHandlePolylineIndex from '../../utilities/contours/findHandlePolylineIndex';
12
+ import { ContourWindingDirection } from '../../types/ContourAnnotation';
13
+ import { triggerAnnotationModified, triggerContourAnnotationCompleted, } from '../../stateManagement/annotation/helpers/state';
14
+ import { LivewireScissors } from '../../utilities/livewire/LivewireScissors';
15
+ import { LivewirePath } from '../../utilities/livewire/LiveWirePath';
16
+ import { getViewportIdsWithToolToRender } from '../../utilities/viewportFilters';
17
+ import ContourSegmentationBaseTool from '../base/ContourSegmentationBaseTool';
18
+ import { getTextBoxCoordsCanvas } from '../../utilities/drawing';
19
+ import { getCalibratedLengthUnitsAndScale, throttle } from '../../utilities';
20
+ const CLICK_CLOSE_CURVE_SQR_DIST = 10 ** 2;
21
+ class LivewireContourTool extends ContourSegmentationBaseTool {
22
+ static { this.toolName = 'LivewireContour'; }
23
+ constructor(toolProps = {}, defaultToolProps = {
24
+ supportedInteractionTypes: ['Mouse', 'Touch'],
25
+ configuration: {
26
+ getTextLines: defaultGetTextLines,
27
+ calculateStats: true,
28
+ preventHandleOutsideImage: false,
29
+ contourHoleAdditionModifierKey: KeyboardBindings.Shift,
30
+ snapHandleNearby: 2,
31
+ interpolation: {
32
+ enabled: false,
33
+ nearestEdge: 2,
34
+ showInterpolationPolyline: false,
35
+ },
36
+ decimate: {
37
+ enabled: false,
38
+ epsilon: 0.1,
39
+ },
40
+ actions: {
41
+ cancelInProgress: {
42
+ method: 'cancelInProgress',
43
+ bindings: [
44
+ {
45
+ key: 'Escape',
46
+ },
47
+ ],
48
+ },
49
+ },
50
+ },
51
+ }) {
52
+ super(toolProps, defaultToolProps);
53
+ this.isHandleOutsideImage = false;
54
+ this.isPointNearTool = (element, annotation, canvasCoords, proximity) => {
55
+ const enabledElement = getEnabledElement(element);
56
+ const { viewport } = enabledElement;
57
+ const proximitySquared = proximity * proximity;
58
+ const canvasPoints = annotation.data.contour.polyline.map((p) => viewport.worldToCanvas(p));
59
+ let startPoint = canvasPoints[canvasPoints.length - 1];
60
+ for (let i = 0; i < canvasPoints.length; i++) {
61
+ const endPoint = canvasPoints[i];
62
+ const distanceToPointSquared = math.lineSegment.distanceToPointSquared(startPoint, endPoint, canvasCoords);
63
+ if (distanceToPointSquared <= proximitySquared) {
64
+ return true;
65
+ }
66
+ startPoint = endPoint;
67
+ }
68
+ return false;
69
+ };
70
+ this.toolSelectedCallback = (evt, annotation) => {
71
+ const eventDetail = evt.detail;
72
+ const { element } = eventDetail;
73
+ annotation.highlighted = true;
74
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
75
+ this.editData = {
76
+ annotation,
77
+ viewportIdsToRender,
78
+ movingTextBox: false,
79
+ };
80
+ const enabledElement = getEnabledElement(element);
81
+ const { renderingEngine } = enabledElement;
82
+ this._activateModify(element);
83
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
84
+ evt.preventDefault();
85
+ };
86
+ this.handleSelectedCallback = (evt, annotation, handle) => {
87
+ const eventDetail = evt.detail;
88
+ const { element } = eventDetail;
89
+ const { data } = annotation;
90
+ annotation.highlighted = true;
91
+ let movingTextBox = false;
92
+ let handleIndex;
93
+ if (handle.worldPosition) {
94
+ movingTextBox = true;
95
+ }
96
+ else {
97
+ const { points } = data.handles;
98
+ handleIndex = points.findIndex((p) => p === handle);
99
+ }
100
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
101
+ this.editData = {
102
+ annotation,
103
+ viewportIdsToRender,
104
+ handleIndex,
105
+ movingTextBox,
106
+ };
107
+ this._activateModify(element);
108
+ const enabledElement = getEnabledElement(element);
109
+ const { renderingEngine } = enabledElement;
110
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
111
+ evt.preventDefault();
112
+ };
113
+ this._endCallback = (evt, clearAnnotation = false) => {
114
+ const eventDetail = evt.detail;
115
+ const { element } = eventDetail;
116
+ const { annotation, viewportIdsToRender, newAnnotation, contourHoleProcessingEnabled, } = this.editData;
117
+ const { data } = annotation;
118
+ this.doneEditMemo();
119
+ data.handles.activeHandleIndex = null;
120
+ this._deactivateModify(element);
121
+ this._deactivateDraw(element);
122
+ resetElementCursor(element);
123
+ const enabledElement = getEnabledElement(element);
124
+ if ((this.isHandleOutsideImage &&
125
+ this.configuration.preventHandleOutsideImage) ||
126
+ clearAnnotation) {
127
+ removeAnnotation(annotation.annotationUID);
128
+ this.clearEditData();
129
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
130
+ return;
131
+ }
132
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
133
+ const changeType = newAnnotation
134
+ ? ChangeTypes.Completed
135
+ : ChangeTypes.HandlesUpdated;
136
+ this.triggerChangeEvent(annotation, enabledElement, changeType, contourHoleProcessingEnabled);
137
+ this.clearEditData();
138
+ };
139
+ this.triggerChangeEvent = (annotation, enabledElement, changeType = ChangeTypes.StatsUpdated, contourHoleProcessingEnabled = false) => {
140
+ if (changeType === ChangeTypes.Completed) {
141
+ triggerContourAnnotationCompleted(annotation, contourHoleProcessingEnabled);
142
+ }
143
+ else {
144
+ triggerAnnotationModified(annotation, enabledElement.viewport.element, changeType);
145
+ }
146
+ };
147
+ this._mouseDownCallback = (evt) => {
148
+ const doubleClick = evt.type === Events.MOUSE_DOUBLE_CLICK;
149
+ const { annotation, viewportIdsToRender, worldToSlice, sliceToWorld, newAnnotation, } = this.editData;
150
+ if (this.editData.closed) {
151
+ return;
152
+ }
153
+ const eventDetail = evt.detail;
154
+ const { element } = eventDetail;
155
+ const { currentPoints } = eventDetail;
156
+ const { canvas: canvasPos, world: worldPosOriginal } = currentPoints;
157
+ let worldPos = worldPosOriginal;
158
+ const enabledElement = getEnabledElement(element);
159
+ const { viewport, renderingEngine } = enabledElement;
160
+ const controlPoints = this.editData.currentPath.getControlPoints();
161
+ let closePath = controlPoints.length >= 2 && doubleClick;
162
+ this.doneEditMemo();
163
+ this.createMemo(element, annotation, {
164
+ newAnnotation: newAnnotation && controlPoints.length === 1,
165
+ });
166
+ if (controlPoints.length >= 2) {
167
+ const closestHandlePoint = {
168
+ index: -1,
169
+ distSquared: Infinity,
170
+ };
171
+ for (let i = 0, len = controlPoints.length; i < len; i++) {
172
+ const controlPoint = controlPoints[i];
173
+ const worldControlPoint = sliceToWorld(controlPoint);
174
+ const canvasControlPoint = viewport.worldToCanvas(worldControlPoint);
175
+ const distSquared = math.point.distanceToPointSquared(canvasPos, canvasControlPoint);
176
+ if (distSquared <= CLICK_CLOSE_CURVE_SQR_DIST &&
177
+ distSquared < closestHandlePoint.distSquared) {
178
+ closestHandlePoint.distSquared = distSquared;
179
+ closestHandlePoint.index = i;
180
+ }
181
+ }
182
+ if (closestHandlePoint.index === 0) {
183
+ closePath = true;
184
+ }
185
+ }
186
+ const { snapHandleNearby } = this.configuration;
187
+ if (snapHandleNearby && !this.editData.closed) {
188
+ const currentPath = new LivewirePath();
189
+ const snapPoint = this.scissors.findMinNearby(worldToSlice(worldPosOriginal), 1);
190
+ const pathPoints = this.scissors.findPathToPoint(snapPoint);
191
+ currentPath.addPoints(pathPoints);
192
+ currentPath.prependPath(this.editData.confirmedPath);
193
+ worldPos = sliceToWorld(snapPoint);
194
+ this.editData.currentPath = currentPath;
195
+ }
196
+ this.editData.closed = this.editData.closed || closePath;
197
+ this.editData.confirmedPath = this.editData.currentPath;
198
+ const lastPoint = this.editData.currentPath.getLastPoint();
199
+ this.editData.confirmedPath.addControlPoint(lastPoint);
200
+ annotation.data.handles.points.push(sliceToWorld(lastPoint));
201
+ this.scissors.startSearch(worldToSlice(worldPos));
202
+ annotation.invalidated = true;
203
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
204
+ if (this.editData.closed) {
205
+ this.updateAnnotation(this.editData.confirmedPath);
206
+ this._endCallback(evt);
207
+ }
208
+ evt.preventDefault();
209
+ };
210
+ this._mouseMoveCallback = (evt) => {
211
+ const { element, currentPoints } = evt.detail;
212
+ const { world: worldPos, canvas: canvasPos } = currentPoints;
213
+ const { renderingEngine } = getEnabledElement(element);
214
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
215
+ this.editData.lastCanvasPoint = canvasPos;
216
+ const { width: imgWidth, height: imgHeight } = this.scissors;
217
+ const { worldToSlice } = this.editData;
218
+ const slicePoint = worldToSlice(worldPos);
219
+ if (slicePoint[0] < 0 ||
220
+ slicePoint[1] < 0 ||
221
+ slicePoint[0] >= imgWidth ||
222
+ slicePoint[1] >= imgHeight) {
223
+ return;
224
+ }
225
+ const pathPoints = this.scissors.findPathToPoint(slicePoint);
226
+ const currentPath = new LivewirePath();
227
+ currentPath.addPoints(pathPoints);
228
+ currentPath.prependPath(this.editData.confirmedPath);
229
+ this.editData.currentPath = currentPath;
230
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
231
+ evt.preventDefault();
232
+ };
233
+ this._dragCallback = (evt) => {
234
+ this.isDrawing = true;
235
+ const eventDetail = evt.detail;
236
+ const { element } = eventDetail;
237
+ const { annotation, viewportIdsToRender, movingTextBox, handleIndex, newAnnotation, } = this.editData;
238
+ this.createMemo(element, annotation, { newAnnotation });
239
+ const { data } = annotation;
240
+ if (movingTextBox) {
241
+ const { deltaPoints } = eventDetail;
242
+ const worldPosDelta = deltaPoints.world;
243
+ const { textBox } = data.handles;
244
+ const { worldPosition } = textBox;
245
+ worldPosition[0] += worldPosDelta[0];
246
+ worldPosition[1] += worldPosDelta[1];
247
+ worldPosition[2] += worldPosDelta[2];
248
+ textBox.hasMoved = true;
249
+ }
250
+ else if (handleIndex === undefined) {
251
+ console.warn('Drag annotation not implemented');
252
+ }
253
+ else {
254
+ const { currentPoints } = eventDetail;
255
+ const worldPos = currentPoints.world;
256
+ this.editHandle(worldPos, element, annotation, handleIndex);
257
+ }
258
+ this.editData.hasMoved = true;
259
+ const enabledElement = getEnabledElement(element);
260
+ const { renderingEngine } = enabledElement;
261
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
262
+ };
263
+ this.cancel = (element) => {
264
+ if (!this.isDrawing) {
265
+ return;
266
+ }
267
+ this.isDrawing = false;
268
+ this._deactivateDraw(element);
269
+ this._deactivateModify(element);
270
+ resetElementCursor(element);
271
+ const { annotation, viewportIdsToRender, newAnnotation } = this.editData;
272
+ if (newAnnotation) {
273
+ removeAnnotation(annotation.annotationUID);
274
+ }
275
+ triggerAnnotationRenderForViewportIds(viewportIdsToRender);
276
+ this.doneEditMemo();
277
+ this.scissors = null;
278
+ return annotation.annotationUID;
279
+ };
280
+ this._activateModify = (element) => {
281
+ state.isInteractingWithTool = true;
282
+ element.addEventListener(Events.MOUSE_UP, this._endCallback);
283
+ element.addEventListener(Events.MOUSE_DRAG, this._dragCallback);
284
+ element.addEventListener(Events.MOUSE_CLICK, this._endCallback);
285
+ element.addEventListener(Events.TOUCH_END, this._endCallback);
286
+ element.addEventListener(Events.TOUCH_DRAG, this._dragCallback);
287
+ element.addEventListener(Events.TOUCH_TAP, this._endCallback);
288
+ };
289
+ this._deactivateModify = (element) => {
290
+ state.isInteractingWithTool = false;
291
+ element.removeEventListener(Events.MOUSE_UP, this._endCallback);
292
+ element.removeEventListener(Events.MOUSE_DRAG, this._dragCallback);
293
+ element.removeEventListener(Events.MOUSE_CLICK, this._endCallback);
294
+ element.removeEventListener(Events.TOUCH_END, this._endCallback);
295
+ element.removeEventListener(Events.TOUCH_DRAG, this._dragCallback);
296
+ element.removeEventListener(Events.TOUCH_TAP, this._endCallback);
297
+ };
298
+ this._activateDraw = (element) => {
299
+ state.isInteractingWithTool = true;
300
+ element.addEventListener(Events.MOUSE_MOVE, this._mouseMoveCallback);
301
+ element.addEventListener(Events.MOUSE_DOWN, this._mouseDownCallback);
302
+ element.addEventListener(Events.MOUSE_DOUBLE_CLICK, this._mouseDownCallback);
303
+ element.addEventListener(Events.TOUCH_TAP, this._mouseDownCallback);
304
+ };
305
+ this._deactivateDraw = (element) => {
306
+ state.isInteractingWithTool = false;
307
+ element.removeEventListener(Events.MOUSE_MOVE, this._mouseMoveCallback);
308
+ element.removeEventListener(Events.MOUSE_DOWN, this._mouseDownCallback);
309
+ element.removeEventListener(Events.MOUSE_DOUBLE_CLICK, this._mouseDownCallback);
310
+ element.removeEventListener(Events.TOUCH_TAP, this._mouseDownCallback);
311
+ };
312
+ this._calculateCachedStats = (annotation, element) => {
313
+ if (!this.configuration.calculateStats) {
314
+ return;
315
+ }
316
+ const data = annotation.data;
317
+ if (!data.contour.closed) {
318
+ return;
319
+ }
320
+ const enabledElement = getEnabledElement(element);
321
+ const { viewport, renderingEngine } = enabledElement;
322
+ const { cachedStats } = data;
323
+ const { polyline: points } = data.contour;
324
+ const targetIds = Object.keys(cachedStats);
325
+ for (let i = 0; i < targetIds.length; i++) {
326
+ const targetId = targetIds[i];
327
+ const image = this.getTargetImageData(targetId);
328
+ if (!image) {
329
+ continue;
330
+ }
331
+ const { metadata } = image;
332
+ const canvasCoordinates = points.map((p) => viewport.worldToCanvas(p));
333
+ const canvasPoint = canvasCoordinates[0];
334
+ const originalWorldPoint = viewport.canvasToWorld(canvasPoint);
335
+ const deltaXPoint = viewport.canvasToWorld([
336
+ canvasPoint[0] + 1,
337
+ canvasPoint[1],
338
+ ]);
339
+ const deltaYPoint = viewport.canvasToWorld([
340
+ canvasPoint[0],
341
+ canvasPoint[1] + 1,
342
+ ]);
343
+ const deltaInX = vec3.distance(originalWorldPoint, deltaXPoint);
344
+ const deltaInY = vec3.distance(originalWorldPoint, deltaYPoint);
345
+ const { imageData } = image;
346
+ const { scale, areaUnit } = getCalibratedLengthUnitsAndScale(image, () => {
347
+ const { maxX: canvasMaxX, maxY: canvasMaxY, minX: canvasMinX, minY: canvasMinY, } = math.polyline.getAABB(canvasCoordinates);
348
+ const topLeftBBWorld = viewport.canvasToWorld([
349
+ canvasMinX,
350
+ canvasMinY,
351
+ ]);
352
+ const topLeftBBIndex = utilities.transformWorldToIndex(imageData, topLeftBBWorld);
353
+ const bottomRightBBWorld = viewport.canvasToWorld([
354
+ canvasMaxX,
355
+ canvasMaxY,
356
+ ]);
357
+ const bottomRightBBIndex = utilities.transformWorldToIndex(imageData, bottomRightBBWorld);
358
+ return [topLeftBBIndex, bottomRightBBIndex];
359
+ });
360
+ let area = math.polyline.getArea(canvasCoordinates) / scale / scale;
361
+ area *= deltaInX * deltaInY;
362
+ cachedStats[targetId] = {
363
+ Modality: metadata.Modality,
364
+ area,
365
+ areaUnit: areaUnit,
366
+ };
367
+ }
368
+ this.triggerAnnotationModified(annotation, enabledElement, ChangeTypes.StatsUpdated);
369
+ return cachedStats;
370
+ };
371
+ this._renderStats = (annotation, viewport, svgDrawingHelper, textboxStyle) => {
372
+ const data = annotation.data;
373
+ const targetId = this.getTargetId(viewport);
374
+ if (!data.contour.closed || !textboxStyle.visibility) {
375
+ return;
376
+ }
377
+ const textLines = this.configuration.getTextLines(data, targetId);
378
+ if (!textLines || textLines.length === 0) {
379
+ return;
380
+ }
381
+ const canvasCoordinates = data.handles.points.map((p) => viewport.worldToCanvas(p));
382
+ if (!data.handles.textBox.hasMoved) {
383
+ const canvasTextBoxCoords = getTextBoxCoordsCanvas(canvasCoordinates);
384
+ data.handles.textBox.worldPosition =
385
+ viewport.canvasToWorld(canvasTextBoxCoords);
386
+ }
387
+ const textBoxPosition = viewport.worldToCanvas(data.handles.textBox.worldPosition);
388
+ const textBoxUID = 'textBox';
389
+ const boundingBox = drawLinkedTextBoxSvg(svgDrawingHelper, annotation.annotationUID ?? '', textBoxUID, textLines, textBoxPosition, canvasCoordinates, {}, textboxStyle);
390
+ const { x: left, y: top, width, height } = boundingBox;
391
+ data.handles.textBox.worldBoundingBox = {
392
+ topLeft: viewport.canvasToWorld([left, top]),
393
+ topRight: viewport.canvasToWorld([left + width, top]),
394
+ bottomLeft: viewport.canvasToWorld([left, top + height]),
395
+ bottomRight: viewport.canvasToWorld([left + width, top + height]),
396
+ };
397
+ };
398
+ this.triggerAnnotationModified = (annotation, enabledElement, changeType = ChangeTypes.StatsUpdated) => {
399
+ const { viewportId, renderingEngineId } = enabledElement;
400
+ const eventType = Events.ANNOTATION_MODIFIED;
401
+ const eventDetail = {
402
+ annotation,
403
+ viewportId,
404
+ renderingEngineId,
405
+ changeType,
406
+ };
407
+ triggerEvent(eventTarget, eventType, eventDetail);
408
+ };
409
+ this._throttledCalculateCachedStats = throttle(this._calculateCachedStats, 100, { trailing: true });
410
+ }
411
+ setupBaseEditData(worldPos, element, annotation, nextPos, contourHoleProcessingEnabled) {
412
+ const enabledElement = getEnabledElement(element);
413
+ const { viewport } = enabledElement;
414
+ this.isDrawing = true;
415
+ const viewportImageData = viewport.getImageData();
416
+ const { imageData: vtkImageData } = viewportImageData;
417
+ let worldToSlice;
418
+ let sliceToWorld;
419
+ let width;
420
+ let height;
421
+ let scalarData;
422
+ if (!(viewport instanceof VolumeViewport)) {
423
+ width = viewportImageData.dimensions[0];
424
+ height = viewportImageData.dimensions[1];
425
+ worldToSlice = (point) => {
426
+ const ijkPoint = csUtils.transformWorldToIndex(vtkImageData, point);
427
+ return [ijkPoint[0], ijkPoint[1]];
428
+ };
429
+ sliceToWorld = (point) => csUtils.transformIndexToWorld(vtkImageData, [point[0], point[1], 0]);
430
+ scalarData = viewportImageData.scalarData;
431
+ }
432
+ else if (viewport instanceof VolumeViewport) {
433
+ const sliceImageData = csUtils.getCurrentVolumeViewportSlice(viewport);
434
+ const { sliceToIndexMatrix, indexToSliceMatrix } = sliceImageData;
435
+ worldToSlice = (point) => {
436
+ const ijkPoint = csUtils.transformWorldToIndex(vtkImageData, point);
437
+ const slicePoint = vec3.transformMat4([0, 0, 0], ijkPoint, indexToSliceMatrix);
438
+ return [slicePoint[0], slicePoint[1]];
439
+ };
440
+ sliceToWorld = (point) => {
441
+ const ijkPoint = vec3.transformMat4([0, 0, 0], [point[0], point[1], 0], sliceToIndexMatrix);
442
+ return csUtils.transformIndexToWorld(vtkImageData, ijkPoint);
443
+ };
444
+ scalarData = sliceImageData.scalarData;
445
+ width = sliceImageData.width;
446
+ height = sliceImageData.height;
447
+ }
448
+ else {
449
+ throw new Error('Viewport not supported');
450
+ }
451
+ scalarData = csUtils.convertToGrayscale(scalarData, width, height);
452
+ const { voiRange } = viewport.getProperties();
453
+ const startPos = worldToSlice(worldPos);
454
+ this.scissors = LivewireScissors.createInstanceFromRawPixelData(scalarData, width, height, voiRange);
455
+ if (nextPos) {
456
+ this.scissorsNext = LivewireScissors.createInstanceFromRawPixelData(scalarData, width, height, voiRange);
457
+ this.scissorsNext.startSearch(worldToSlice(nextPos));
458
+ }
459
+ this.scissors.startSearch(startPos);
460
+ const newAnnotation = !nextPos;
461
+ const confirmedPath = new LivewirePath();
462
+ const currentPath = new LivewirePath();
463
+ const currentPathNext = newAnnotation ? undefined : new LivewirePath();
464
+ confirmedPath.addPoint(startPos);
465
+ confirmedPath.addControlPoint(startPos);
466
+ const viewportIdsToRender = getViewportIdsWithToolToRender(element, this.getToolName());
467
+ const lastCanvasPoint = viewport.worldToCanvas(worldPos);
468
+ this.editData = {
469
+ annotation,
470
+ viewportIdsToRender,
471
+ newAnnotation,
472
+ hasMoved: false,
473
+ lastCanvasPoint,
474
+ confirmedPath,
475
+ currentPath,
476
+ confirmedPathNext: currentPathNext,
477
+ closed: false,
478
+ handleIndex: this.editData?.handleIndex ?? annotation.handles?.activeHandleIndex,
479
+ worldToSlice,
480
+ sliceToWorld,
481
+ contourHoleProcessingEnabled,
482
+ };
483
+ }
484
+ addNewAnnotation(evt) {
485
+ const eventDetail = evt.detail;
486
+ const { currentPoints, element } = eventDetail;
487
+ const { world: worldPos } = currentPoints;
488
+ const annotation = this.createAnnotation(evt);
489
+ const contourHoleProcessingEnabled = getMouseModifierKey(evt.detail.event) ===
490
+ this.configuration.contourHoleAdditionModifierKey;
491
+ this.setupBaseEditData(worldPos, element, annotation, undefined, contourHoleProcessingEnabled);
492
+ this.addAnnotation(annotation, element);
493
+ this._activateDraw(element);
494
+ evt.preventDefault();
495
+ triggerAnnotationRenderForViewportIds(this.editData.viewportIdsToRender);
496
+ return annotation;
497
+ }
498
+ clearEditData() {
499
+ this.editData = null;
500
+ this.scissors = null;
501
+ this.scissorsNext = null;
502
+ this.isDrawing = false;
503
+ }
504
+ editHandle(worldPos, element, annotation, handleIndex) {
505
+ const { data } = annotation;
506
+ const { points: handlePoints } = data.handles;
507
+ const { length: numHandles } = handlePoints;
508
+ const previousHandle = handlePoints[(handleIndex - 1 + numHandles) % numHandles];
509
+ const nextHandle = handlePoints[(handleIndex + 1) % numHandles];
510
+ if (!this.editData?.confirmedPathNext) {
511
+ this.setupBaseEditData(previousHandle, element, annotation, nextHandle);
512
+ const { polyline } = data.contour;
513
+ const confirmedPath = new LivewirePath();
514
+ const confirmedPathNext = new LivewirePath();
515
+ const { worldToSlice } = this.editData;
516
+ const previousIndex = findHandlePolylineIndex(annotation, handleIndex - 1);
517
+ const nextIndex = findHandlePolylineIndex(annotation, handleIndex + 1);
518
+ if (nextIndex === -1 || previousIndex === -1) {
519
+ throw new Error(`Can't find handle index ${nextIndex === -1 && nextHandle} ${previousIndex === -1 && previousHandle}`);
520
+ }
521
+ if (handleIndex === 0) {
522
+ confirmedPathNext.addPoints(polyline.slice(nextIndex + 1, previousIndex).map(worldToSlice));
523
+ }
524
+ else {
525
+ confirmedPath.addPoints(polyline.slice(0, previousIndex + 1).map(worldToSlice));
526
+ confirmedPathNext.addPoints(polyline.slice(nextIndex, polyline.length).map(worldToSlice));
527
+ }
528
+ this.editData.confirmedPath = confirmedPath;
529
+ this.editData.confirmedPathNext = confirmedPathNext;
530
+ }
531
+ const { editData, scissors } = this;
532
+ const { worldToSlice, sliceToWorld } = editData;
533
+ const { activeHandleIndex } = data.handles;
534
+ if (activeHandleIndex === null || activeHandleIndex === undefined) {
535
+ data.handles.activeHandleIndex = handleIndex;
536
+ }
537
+ else if (activeHandleIndex !== handleIndex) {
538
+ throw new Error(`Trying to edit a different handle than the one currently being edited ${handleIndex}!==${data.handles.activeHandleIndex}`);
539
+ }
540
+ const slicePos = worldToSlice(worldPos);
541
+ if (slicePos[0] < 0 ||
542
+ slicePos[0] >= scissors.width ||
543
+ slicePos[1] < 0 ||
544
+ slicePos[1] >= scissors.height) {
545
+ return;
546
+ }
547
+ handlePoints[handleIndex] = sliceToWorld(slicePos);
548
+ const pathPointsLeft = scissors.findPathToPoint(slicePos);
549
+ const pathPointsRight = this.scissorsNext.findPathToPoint(slicePos);
550
+ const currentPath = new LivewirePath();
551
+ currentPath.prependPath(editData.confirmedPath);
552
+ if (handleIndex !== 0) {
553
+ currentPath.addPoints(pathPointsLeft);
554
+ }
555
+ currentPath.addPoints(pathPointsRight.reverse());
556
+ currentPath.appendPath(editData.confirmedPathNext);
557
+ if (handleIndex === 0) {
558
+ currentPath.addPoints(pathPointsLeft);
559
+ }
560
+ editData.currentPath = currentPath;
561
+ annotation.invalidated = true;
562
+ editData.hasMoved = true;
563
+ editData.closed = true;
564
+ }
565
+ renderAnnotation(enabledElement, svgDrawingHelper) {
566
+ this.updateAnnotation(this.editData?.currentPath);
567
+ return super.renderAnnotation(enabledElement, svgDrawingHelper);
568
+ }
569
+ isContourSegmentationTool() {
570
+ return false;
571
+ }
572
+ createAnnotation(evt) {
573
+ const contourSegmentationAnnotation = super.createAnnotation(evt);
574
+ const { world: worldPos } = evt.detail.currentPoints;
575
+ const annotation = csUtils.deepMerge(contourSegmentationAnnotation, {
576
+ data: {
577
+ handles: {
578
+ points: [[...worldPos]],
579
+ },
580
+ },
581
+ });
582
+ return annotation;
583
+ }
584
+ cancelInProgress(element, config, evt) {
585
+ if (!this.editData) {
586
+ this.undo();
587
+ return;
588
+ }
589
+ this._endCallback(evt, true);
590
+ }
591
+ renderAnnotationInstance(renderContext) {
592
+ const { annotation, enabledElement, svgDrawingHelper, annotationStyle, targetId, } = renderContext;
593
+ const { viewport } = enabledElement;
594
+ const { element } = viewport;
595
+ const { worldToCanvas } = viewport;
596
+ const { annotationUID, data, highlighted } = annotation;
597
+ const { handles } = data;
598
+ const newAnnotation = this.editData?.newAnnotation;
599
+ const { lineWidth, lineDash, color } = annotationStyle;
600
+ if (highlighted ||
601
+ (newAnnotation &&
602
+ annotation.annotationUID === this.editData?.annotation?.annotationUID)) {
603
+ const handleGroupUID = '0';
604
+ const canvasHandles = handles.points.map(worldToCanvas);
605
+ drawHandlesSvg(svgDrawingHelper, annotationUID, handleGroupUID, canvasHandles, {
606
+ color,
607
+ lineDash,
608
+ lineWidth,
609
+ });
610
+ }
611
+ super.renderAnnotationInstance(renderContext);
612
+ if (!data.cachedStats[targetId] ||
613
+ data.cachedStats[targetId]?.areaUnit === null) {
614
+ data.cachedStats[targetId] = {
615
+ Modality: null,
616
+ area: null,
617
+ areaUnit: null,
618
+ };
619
+ this._calculateCachedStats(annotation, element);
620
+ }
621
+ else if (annotation.invalidated) {
622
+ this._throttledCalculateCachedStats(annotation, element);
623
+ }
624
+ this._renderStats(annotation, viewport, svgDrawingHelper, annotationStyle.textbox);
625
+ return true;
626
+ }
627
+ updateAnnotation(livewirePath) {
628
+ if (!this.editData || !livewirePath) {
629
+ return;
630
+ }
631
+ const { annotation, sliceToWorld, worldToSlice, closed, newAnnotation } = this.editData;
632
+ let { pointArray: imagePoints } = livewirePath;
633
+ if (imagePoints.length > 1) {
634
+ imagePoints = [...imagePoints, imagePoints[0]];
635
+ }
636
+ const targetWindingDirection = newAnnotation && closed ? ContourWindingDirection.Clockwise : undefined;
637
+ this.updateContourPolyline(annotation, {
638
+ points: imagePoints,
639
+ closed,
640
+ targetWindingDirection,
641
+ }, {
642
+ canvasToWorld: sliceToWorld,
643
+ worldToCanvas: worldToSlice,
644
+ });
645
+ }
646
+ }
647
+ export default LivewireContourTool;
648
+ function defaultGetTextLines(data, targetId) {
649
+ const cachedVolumeStats = data.cachedStats[targetId];
650
+ const { area, areaUnit } = cachedVolumeStats;
651
+ const textLines = [];
652
+ if (area) {
653
+ const areaLine = `Area: ${csUtils.roundNumber(area)} ${areaUnit}`;
654
+ textLines.push(areaLine);
655
+ }
656
+ return textLines;
657
+ }
@@ -0,0 +1,9 @@
1
+ import type { AnnotationRenderContext, PublicToolProps } from '../../types';
2
+ import PlanarFreehandROITool from './PlanarFreehandROITool';
3
+ declare class PlanarFreehandContourSegmentationTool extends PlanarFreehandROITool {
4
+ static toolName: string;
5
+ constructor(toolProps: PublicToolProps);
6
+ protected isContourSegmentationTool(): boolean;
7
+ protected renderAnnotationInstance(renderContext: AnnotationRenderContext): boolean;
8
+ }
9
+ export default PlanarFreehandContourSegmentationTool;