@cornerstonejs/tools 1.51.5 → 1.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/dist/cjs/drawingSvg/drawPath.d.ts +11 -0
  2. package/dist/cjs/drawingSvg/drawPath.js +55 -0
  3. package/dist/cjs/drawingSvg/drawPath.js.map +1 -0
  4. package/dist/cjs/drawingSvg/drawPolyline.d.ts +1 -1
  5. package/dist/cjs/drawingSvg/drawPolyline.js +3 -11
  6. package/dist/cjs/drawingSvg/drawPolyline.js.map +1 -1
  7. package/dist/cjs/drawingSvg/index.d.ts +2 -1
  8. package/dist/cjs/drawingSvg/index.js +3 -1
  9. package/dist/cjs/drawingSvg/index.js.map +1 -1
  10. package/dist/cjs/enums/ChangeTypes.d.ts +2 -1
  11. package/dist/cjs/enums/ChangeTypes.js +1 -0
  12. package/dist/cjs/enums/ChangeTypes.js.map +1 -1
  13. package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyDown.js +1 -1
  14. package/dist/cjs/eventDispatchers/keyboardEventHandlers/keyDown.js.map +1 -1
  15. package/dist/cjs/eventDispatchers/shared/getActiveToolForMouseEvent.js.map +1 -1
  16. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts +1 -1
  17. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +165 -78
  18. package/dist/cjs/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js.map +1 -1
  19. package/dist/cjs/stateManagement/annotation/annotationState.d.ts +6 -1
  20. package/dist/cjs/stateManagement/annotation/annotationState.js +49 -1
  21. package/dist/cjs/stateManagement/annotation/annotationState.js.map +1 -1
  22. package/dist/cjs/stateManagement/annotation/helpers/state.d.ts +4 -2
  23. package/dist/cjs/stateManagement/annotation/helpers/state.js +16 -4
  24. package/dist/cjs/stateManagement/annotation/helpers/state.js.map +1 -1
  25. package/dist/cjs/stateManagement/index.d.ts +6 -1
  26. package/dist/cjs/stateManagement/index.js +6 -1
  27. package/dist/cjs/stateManagement/index.js.map +1 -1
  28. package/dist/cjs/store/ToolGroupManager/ToolGroup.d.ts +3 -1
  29. package/dist/cjs/store/ToolGroupManager/ToolGroup.js +3 -2
  30. package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
  31. package/dist/cjs/tools/SegmentationIntersectionTool.js +1 -1
  32. package/dist/cjs/tools/SegmentationIntersectionTool.js.map +1 -1
  33. package/dist/cjs/tools/annotation/LivewireContourSegmentationTool.d.ts +4 -0
  34. package/dist/cjs/tools/annotation/LivewireContourSegmentationTool.js +82 -0
  35. package/dist/cjs/tools/annotation/LivewireContourSegmentationTool.js.map +1 -1
  36. package/dist/cjs/tools/annotation/LivewireContourTool.d.ts +13 -11
  37. package/dist/cjs/tools/annotation/LivewireContourTool.js +78 -65
  38. package/dist/cjs/tools/annotation/LivewireContourTool.js.map +1 -1
  39. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js +3 -1
  40. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  41. package/dist/cjs/tools/annotation/SplineROITool.d.ts +6 -3
  42. package/dist/cjs/tools/annotation/SplineROITool.js +40 -21
  43. package/dist/cjs/tools/annotation/SplineROITool.js.map +1 -1
  44. package/dist/cjs/tools/annotation/planarFreehandROITool/closedContourEditLoop.js +12 -7
  45. package/dist/cjs/tools/annotation/planarFreehandROITool/closedContourEditLoop.js.map +1 -1
  46. package/dist/cjs/tools/annotation/planarFreehandROITool/drawLoop.js +24 -18
  47. package/dist/cjs/tools/annotation/planarFreehandROITool/drawLoop.js.map +1 -1
  48. package/dist/cjs/tools/annotation/planarFreehandROITool/openContourEditLoop.js +16 -10
  49. package/dist/cjs/tools/annotation/planarFreehandROITool/openContourEditLoop.js.map +1 -1
  50. package/dist/cjs/tools/annotation/planarFreehandROITool/renderMethods.js +19 -7
  51. package/dist/cjs/tools/annotation/planarFreehandROITool/renderMethods.js.map +1 -1
  52. package/dist/cjs/tools/annotation/splines/LinearSpline.js +1 -1
  53. package/dist/cjs/tools/annotation/splines/LinearSpline.js.map +1 -1
  54. package/dist/cjs/tools/annotation/splines/Spline.d.ts +2 -0
  55. package/dist/cjs/tools/annotation/splines/Spline.js +7 -3
  56. package/dist/cjs/tools/annotation/splines/Spline.js.map +1 -1
  57. package/dist/cjs/tools/base/AnnotationTool.js.map +1 -1
  58. package/dist/cjs/tools/base/ContourBaseTool.d.ts +1 -0
  59. package/dist/cjs/tools/base/ContourBaseTool.js +18 -1
  60. package/dist/cjs/tools/base/ContourBaseTool.js.map +1 -1
  61. package/dist/cjs/tools/base/ContourSegmentationBaseTool.js +4 -0
  62. package/dist/cjs/tools/base/ContourSegmentationBaseTool.js.map +1 -1
  63. package/dist/cjs/tools/displayTools/Contour/contourConfig.js +1 -0
  64. package/dist/cjs/tools/displayTools/Contour/contourConfig.js.map +1 -1
  65. package/dist/cjs/types/AnnotationTypes.d.ts +2 -0
  66. package/dist/cjs/types/ContourAnnotation.d.ts +6 -0
  67. package/dist/cjs/types/ContourAnnotation.js +7 -0
  68. package/dist/cjs/types/ContourAnnotation.js.map +1 -1
  69. package/dist/cjs/types/ContourSegmentationAnnotation.d.ts +8 -0
  70. package/dist/cjs/types/ContourTypes.d.ts +1 -0
  71. package/dist/cjs/types/EventTypes.d.ts +4 -1
  72. package/dist/cjs/types/ISpline.d.ts +1 -0
  73. package/dist/cjs/types/InterpolationTypes.d.ts +2 -0
  74. package/dist/cjs/types/SplineProps.d.ts +1 -0
  75. package/dist/cjs/types/ToolSpecificAnnotationTypes.d.ts +2 -5
  76. package/dist/cjs/utilities/contours/getContourHolesDataCanvas.d.ts +3 -0
  77. package/dist/cjs/utilities/contours/getContourHolesDataCanvas.js +21 -0
  78. package/dist/cjs/utilities/contours/getContourHolesDataCanvas.js.map +1 -0
  79. package/dist/cjs/utilities/contours/getContourHolesDataWorld.d.ts +3 -0
  80. package/dist/cjs/utilities/contours/getContourHolesDataWorld.js +10 -0
  81. package/dist/cjs/utilities/contours/getContourHolesDataWorld.js.map +1 -0
  82. package/dist/cjs/utilities/contours/index.d.ts +4 -1
  83. package/dist/cjs/utilities/contours/index.js +7 -1
  84. package/dist/cjs/utilities/contours/index.js.map +1 -1
  85. package/dist/cjs/utilities/contours/interpolation/acceptAutogeneratedInterpolations.js.map +1 -1
  86. package/dist/cjs/utilities/contours/interpolation/createPolylineToolData.js +2 -1
  87. package/dist/cjs/utilities/contours/interpolation/createPolylineToolData.js.map +1 -1
  88. package/dist/cjs/utilities/contours/interpolation/findAnnotationForInterpolation.js +2 -1
  89. package/dist/cjs/utilities/contours/interpolation/findAnnotationForInterpolation.js.map +1 -1
  90. package/dist/cjs/utilities/contours/interpolation/getInterpolationData.js +3 -1
  91. package/dist/cjs/utilities/contours/interpolation/getInterpolationData.js.map +1 -1
  92. package/dist/cjs/utilities/contours/interpolation/interpolate.d.ts +8 -0
  93. package/dist/cjs/utilities/contours/interpolation/interpolate.js +56 -42
  94. package/dist/cjs/utilities/contours/interpolation/interpolate.js.map +1 -1
  95. package/dist/cjs/utilities/contours/interpolation/selectHandles.d.ts +4 -0
  96. package/dist/cjs/utilities/contours/interpolation/selectHandles.js +170 -0
  97. package/dist/cjs/utilities/contours/interpolation/selectHandles.js.map +1 -0
  98. package/dist/cjs/utilities/contours/updateContourPolyline.d.ts +10 -0
  99. package/dist/cjs/utilities/contours/updateContourPolyline.js +64 -0
  100. package/dist/cjs/utilities/contours/updateContourPolyline.js.map +1 -0
  101. package/dist/cjs/utilities/livewire/LivewireScissors.d.ts +2 -1
  102. package/dist/cjs/utilities/livewire/LivewireScissors.js +46 -24
  103. package/dist/cjs/utilities/livewire/LivewireScissors.js.map +1 -1
  104. package/dist/cjs/utilities/math/polyline/containsPoints.d.ts +2 -0
  105. package/dist/cjs/utilities/math/polyline/containsPoints.js +16 -0
  106. package/dist/cjs/utilities/math/polyline/containsPoints.js.map +1 -0
  107. package/dist/cjs/utilities/math/polyline/getWindingDirection.d.ts +2 -0
  108. package/dist/cjs/utilities/math/polyline/getWindingDirection.js +12 -0
  109. package/dist/cjs/utilities/math/polyline/getWindingDirection.js.map +1 -0
  110. package/dist/cjs/utilities/math/polyline/index.d.ts +3 -1
  111. package/dist/cjs/utilities/math/polyline/index.js +5 -1
  112. package/dist/cjs/utilities/math/polyline/index.js.map +1 -1
  113. package/dist/cjs/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts +1 -0
  114. package/dist/cjs/utilities/segmentation/InterpolationManager/InterpolationManager.js +13 -3
  115. package/dist/cjs/utilities/segmentation/InterpolationManager/InterpolationManager.js.map +1 -1
  116. package/dist/esm/drawingSvg/drawPath.js +49 -0
  117. package/dist/esm/drawingSvg/drawPath.js.map +1 -0
  118. package/dist/esm/drawingSvg/drawPolyline.js +3 -11
  119. package/dist/esm/drawingSvg/drawPolyline.js.map +1 -1
  120. package/dist/esm/drawingSvg/index.js +2 -1
  121. package/dist/esm/drawingSvg/index.js.map +1 -1
  122. package/dist/esm/enums/ChangeTypes.js +1 -0
  123. package/dist/esm/enums/ChangeTypes.js.map +1 -1
  124. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js +1 -1
  125. package/dist/esm/eventDispatchers/keyboardEventHandlers/keyDown.js.map +1 -1
  126. package/dist/esm/eventDispatchers/shared/getActiveToolForMouseEvent.js.map +1 -1
  127. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js +106 -32
  128. package/dist/esm/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.js.map +1 -1
  129. package/dist/esm/stateManagement/annotation/annotationState.js +42 -1
  130. package/dist/esm/stateManagement/annotation/annotationState.js.map +1 -1
  131. package/dist/esm/stateManagement/annotation/helpers/state.js +15 -4
  132. package/dist/esm/stateManagement/annotation/helpers/state.js.map +1 -1
  133. package/dist/esm/stateManagement/index.js +2 -2
  134. package/dist/esm/stateManagement/index.js.map +1 -1
  135. package/dist/esm/store/ToolGroupManager/ToolGroup.js +3 -2
  136. package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
  137. package/dist/esm/tools/SegmentationIntersectionTool.js +1 -1
  138. package/dist/esm/tools/SegmentationIntersectionTool.js.map +1 -1
  139. package/dist/esm/tools/annotation/LivewireContourSegmentationTool.js +81 -0
  140. package/dist/esm/tools/annotation/LivewireContourSegmentationTool.js.map +1 -1
  141. package/dist/esm/tools/annotation/LivewireContourTool.js +80 -67
  142. package/dist/esm/tools/annotation/LivewireContourTool.js.map +1 -1
  143. package/dist/esm/tools/annotation/PlanarFreehandROITool.js +3 -1
  144. package/dist/esm/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  145. package/dist/esm/tools/annotation/SplineROITool.js +40 -22
  146. package/dist/esm/tools/annotation/SplineROITool.js.map +1 -1
  147. package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.js +12 -7
  148. package/dist/esm/tools/annotation/planarFreehandROITool/closedContourEditLoop.js.map +1 -1
  149. package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.js +25 -19
  150. package/dist/esm/tools/annotation/planarFreehandROITool/drawLoop.js.map +1 -1
  151. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.js +16 -10
  152. package/dist/esm/tools/annotation/planarFreehandROITool/openContourEditLoop.js.map +1 -1
  153. package/dist/esm/tools/annotation/planarFreehandROITool/renderMethods.js +20 -8
  154. package/dist/esm/tools/annotation/planarFreehandROITool/renderMethods.js.map +1 -1
  155. package/dist/esm/tools/annotation/splines/LinearSpline.js +1 -1
  156. package/dist/esm/tools/annotation/splines/LinearSpline.js.map +1 -1
  157. package/dist/esm/tools/annotation/splines/Spline.js +5 -1
  158. package/dist/esm/tools/annotation/splines/Spline.js.map +1 -1
  159. package/dist/esm/tools/base/AnnotationTool.js.map +1 -1
  160. package/dist/esm/tools/base/ContourBaseTool.js +20 -3
  161. package/dist/esm/tools/base/ContourBaseTool.js.map +1 -1
  162. package/dist/esm/tools/base/ContourSegmentationBaseTool.js +4 -0
  163. package/dist/esm/tools/base/ContourSegmentationBaseTool.js.map +1 -1
  164. package/dist/esm/tools/displayTools/Contour/contourConfig.js +1 -0
  165. package/dist/esm/tools/displayTools/Contour/contourConfig.js.map +1 -1
  166. package/dist/esm/types/ContourAnnotation.js +6 -1
  167. package/dist/esm/types/ContourAnnotation.js.map +1 -1
  168. package/dist/esm/utilities/contours/getContourHolesDataCanvas.js +15 -0
  169. package/dist/esm/utilities/contours/getContourHolesDataCanvas.js.map +1 -0
  170. package/dist/esm/utilities/contours/getContourHolesDataWorld.js +6 -0
  171. package/dist/esm/utilities/contours/getContourHolesDataWorld.js.map +1 -0
  172. package/dist/esm/utilities/contours/index.js +4 -1
  173. package/dist/esm/utilities/contours/index.js.map +1 -1
  174. package/dist/esm/utilities/contours/interpolation/acceptAutogeneratedInterpolations.js.map +1 -1
  175. package/dist/esm/utilities/contours/interpolation/createPolylineToolData.js +2 -1
  176. package/dist/esm/utilities/contours/interpolation/createPolylineToolData.js.map +1 -1
  177. package/dist/esm/utilities/contours/interpolation/findAnnotationForInterpolation.js +2 -1
  178. package/dist/esm/utilities/contours/interpolation/findAnnotationForInterpolation.js.map +1 -1
  179. package/dist/esm/utilities/contours/interpolation/getInterpolationData.js +3 -1
  180. package/dist/esm/utilities/contours/interpolation/getInterpolationData.js.map +1 -1
  181. package/dist/esm/utilities/contours/interpolation/interpolate.js +57 -43
  182. package/dist/esm/utilities/contours/interpolation/interpolate.js.map +1 -1
  183. package/dist/esm/utilities/contours/interpolation/selectHandles.js +164 -0
  184. package/dist/esm/utilities/contours/interpolation/selectHandles.js.map +1 -0
  185. package/dist/esm/utilities/contours/updateContourPolyline.js +38 -0
  186. package/dist/esm/utilities/contours/updateContourPolyline.js.map +1 -0
  187. package/dist/esm/utilities/livewire/LivewireScissors.js +46 -24
  188. package/dist/esm/utilities/livewire/LivewireScissors.js.map +1 -1
  189. package/dist/esm/utilities/math/polyline/containsPoints.js +10 -0
  190. package/dist/esm/utilities/math/polyline/containsPoints.js.map +1 -0
  191. package/dist/esm/utilities/math/polyline/getWindingDirection.js +6 -0
  192. package/dist/esm/utilities/math/polyline/getWindingDirection.js.map +1 -0
  193. package/dist/esm/utilities/math/polyline/index.js +3 -1
  194. package/dist/esm/utilities/math/polyline/index.js.map +1 -1
  195. package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.js +13 -3
  196. package/dist/esm/utilities/segmentation/InterpolationManager/InterpolationManager.js.map +1 -1
  197. package/dist/types/drawingSvg/drawPath.d.ts +12 -0
  198. package/dist/types/drawingSvg/drawPath.d.ts.map +1 -0
  199. package/dist/types/drawingSvg/drawPolyline.d.ts +1 -1
  200. package/dist/types/drawingSvg/drawPolyline.d.ts.map +1 -1
  201. package/dist/types/drawingSvg/index.d.ts +2 -1
  202. package/dist/types/drawingSvg/index.d.ts.map +1 -1
  203. package/dist/types/enums/ChangeTypes.d.ts +2 -1
  204. package/dist/types/enums/ChangeTypes.d.ts.map +1 -1
  205. package/dist/types/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts +1 -1
  206. package/dist/types/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.d.ts.map +1 -1
  207. package/dist/types/stateManagement/annotation/annotationState.d.ts +6 -1
  208. package/dist/types/stateManagement/annotation/annotationState.d.ts.map +1 -1
  209. package/dist/types/stateManagement/annotation/helpers/state.d.ts +4 -2
  210. package/dist/types/stateManagement/annotation/helpers/state.d.ts.map +1 -1
  211. package/dist/types/stateManagement/index.d.ts +6 -1
  212. package/dist/types/store/ToolGroupManager/ToolGroup.d.ts +3 -1
  213. package/dist/types/store/ToolGroupManager/ToolGroup.d.ts.map +1 -1
  214. package/dist/types/tools/annotation/LivewireContourSegmentationTool.d.ts +4 -0
  215. package/dist/types/tools/annotation/LivewireContourSegmentationTool.d.ts.map +1 -1
  216. package/dist/types/tools/annotation/LivewireContourTool.d.ts +13 -11
  217. package/dist/types/tools/annotation/LivewireContourTool.d.ts.map +1 -1
  218. package/dist/types/tools/annotation/PlanarFreehandROITool.d.ts.map +1 -1
  219. package/dist/types/tools/annotation/SplineROITool.d.ts +6 -3
  220. package/dist/types/tools/annotation/SplineROITool.d.ts.map +1 -1
  221. package/dist/types/tools/annotation/planarFreehandROITool/closedContourEditLoop.d.ts.map +1 -1
  222. package/dist/types/tools/annotation/planarFreehandROITool/drawLoop.d.ts.map +1 -1
  223. package/dist/types/tools/annotation/planarFreehandROITool/openContourEditLoop.d.ts.map +1 -1
  224. package/dist/types/tools/annotation/planarFreehandROITool/renderMethods.d.ts.map +1 -1
  225. package/dist/types/tools/annotation/splines/Spline.d.ts +2 -0
  226. package/dist/types/tools/annotation/splines/Spline.d.ts.map +1 -1
  227. package/dist/types/tools/base/AnnotationTool.d.ts.map +1 -1
  228. package/dist/types/tools/base/ContourBaseTool.d.ts +1 -0
  229. package/dist/types/tools/base/ContourBaseTool.d.ts.map +1 -1
  230. package/dist/types/tools/base/ContourSegmentationBaseTool.d.ts.map +1 -1
  231. package/dist/types/tools/displayTools/Contour/contourConfig.d.ts.map +1 -1
  232. package/dist/types/types/AnnotationTypes.d.ts +2 -0
  233. package/dist/types/types/AnnotationTypes.d.ts.map +1 -1
  234. package/dist/types/types/ContourAnnotation.d.ts +6 -0
  235. package/dist/types/types/ContourAnnotation.d.ts.map +1 -1
  236. package/dist/types/types/ContourSegmentationAnnotation.d.ts +8 -0
  237. package/dist/types/types/ContourSegmentationAnnotation.d.ts.map +1 -1
  238. package/dist/types/types/ContourTypes.d.ts +1 -0
  239. package/dist/types/types/ContourTypes.d.ts.map +1 -1
  240. package/dist/types/types/EventTypes.d.ts +4 -1
  241. package/dist/types/types/EventTypes.d.ts.map +1 -1
  242. package/dist/types/types/ISpline.d.ts +1 -0
  243. package/dist/types/types/ISpline.d.ts.map +1 -1
  244. package/dist/types/types/InterpolationTypes.d.ts +2 -0
  245. package/dist/types/types/InterpolationTypes.d.ts.map +1 -1
  246. package/dist/types/types/SplineProps.d.ts +1 -0
  247. package/dist/types/types/SplineProps.d.ts.map +1 -1
  248. package/dist/types/types/ToolSpecificAnnotationTypes.d.ts +2 -5
  249. package/dist/types/types/ToolSpecificAnnotationTypes.d.ts.map +1 -1
  250. package/dist/types/utilities/contours/getContourHolesDataCanvas.d.ts +4 -0
  251. package/dist/types/utilities/contours/getContourHolesDataCanvas.d.ts.map +1 -0
  252. package/dist/types/utilities/contours/getContourHolesDataWorld.d.ts +4 -0
  253. package/dist/types/utilities/contours/getContourHolesDataWorld.d.ts.map +1 -0
  254. package/dist/types/utilities/contours/index.d.ts +4 -1
  255. package/dist/types/utilities/contours/index.d.ts.map +1 -1
  256. package/dist/types/utilities/contours/interpolation/acceptAutogeneratedInterpolations.d.ts.map +1 -1
  257. package/dist/types/utilities/contours/interpolation/createPolylineToolData.d.ts.map +1 -1
  258. package/dist/types/utilities/contours/interpolation/findAnnotationForInterpolation.d.ts.map +1 -1
  259. package/dist/types/utilities/contours/interpolation/getInterpolationData.d.ts.map +1 -1
  260. package/dist/types/utilities/contours/interpolation/interpolate.d.ts +8 -0
  261. package/dist/types/utilities/contours/interpolation/interpolate.d.ts.map +1 -1
  262. package/dist/types/utilities/contours/interpolation/selectHandles.d.ts +5 -0
  263. package/dist/types/utilities/contours/interpolation/selectHandles.d.ts.map +1 -0
  264. package/dist/types/utilities/contours/updateContourPolyline.d.ts +11 -0
  265. package/dist/types/utilities/contours/updateContourPolyline.d.ts.map +1 -0
  266. package/dist/types/utilities/livewire/LivewireScissors.d.ts +2 -1
  267. package/dist/types/utilities/livewire/LivewireScissors.d.ts.map +1 -1
  268. package/dist/types/utilities/math/polyline/containsPoints.d.ts +3 -0
  269. package/dist/types/utilities/math/polyline/containsPoints.d.ts.map +1 -0
  270. package/dist/types/utilities/math/polyline/getWindingDirection.d.ts +3 -0
  271. package/dist/types/utilities/math/polyline/getWindingDirection.d.ts.map +1 -0
  272. package/dist/types/utilities/math/polyline/index.d.ts +3 -1
  273. package/dist/types/utilities/math/polyline/index.d.ts.map +1 -1
  274. package/dist/types/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts +1 -0
  275. package/dist/types/utilities/math/polyline/planarFreehandROIInternalTypes.d.ts.map +1 -1
  276. package/dist/types/utilities/segmentation/InterpolationManager/InterpolationManager.d.ts.map +1 -1
  277. package/dist/umd/index.js +1 -1
  278. package/dist/umd/index.js.map +1 -1
  279. package/package.json +3 -3
  280. package/src/drawingSvg/drawPath.ts +96 -0
  281. package/src/drawingSvg/drawPolyline.ts +13 -17
  282. package/src/drawingSvg/index.ts +2 -0
  283. package/src/enums/ChangeTypes.ts +4 -0
  284. package/src/eventDispatchers/keyboardEventHandlers/keyDown.ts +1 -1
  285. package/src/eventDispatchers/shared/getActiveToolForMouseEvent.ts +1 -1
  286. package/src/eventListeners/annotations/contourSegmentation/contourSegmentationCompleted.ts +194 -58
  287. package/src/stateManagement/annotation/annotationState.ts +101 -0
  288. package/src/stateManagement/annotation/helpers/state.ts +33 -3
  289. package/src/stateManagement/index.js +10 -0
  290. package/src/store/ToolGroupManager/ToolGroup.ts +9 -2
  291. package/src/tools/SegmentationIntersectionTool.ts +1 -1
  292. package/src/tools/annotation/LivewireContourSegmentationTool.ts +151 -0
  293. package/src/tools/annotation/LivewireContourTool.ts +172 -114
  294. package/src/tools/annotation/PlanarFreehandROITool.ts +13 -3
  295. package/src/tools/annotation/SplineROITool.ts +78 -31
  296. package/src/tools/annotation/planarFreehandROITool/closedContourEditLoop.ts +20 -11
  297. package/src/tools/annotation/planarFreehandROITool/drawLoop.ts +40 -21
  298. package/src/tools/annotation/planarFreehandROITool/openContourEditLoop.ts +28 -13
  299. package/src/tools/annotation/planarFreehandROITool/renderMethods.ts +28 -10
  300. package/src/tools/annotation/splines/LinearSpline.ts +1 -1
  301. package/src/tools/annotation/splines/Spline.ts +13 -1
  302. package/src/tools/base/AnnotationTool.ts +1 -0
  303. package/src/tools/base/ContourBaseTool.ts +45 -3
  304. package/src/tools/base/ContourSegmentationBaseTool.ts +6 -0
  305. package/src/tools/displayTools/Contour/contourConfig.ts +1 -0
  306. package/src/types/AnnotationTypes.ts +14 -0
  307. package/src/types/ContourAnnotation.ts +13 -0
  308. package/src/types/ContourSegmentationAnnotation.ts +38 -0
  309. package/src/types/ContourTypes.ts +3 -0
  310. package/src/types/EventTypes.ts +9 -0
  311. package/src/types/ISpline.ts +3 -0
  312. package/src/types/InterpolationTypes.ts +6 -0
  313. package/src/types/SplineProps.ts +10 -0
  314. package/src/types/ToolSpecificAnnotationTypes.ts +7 -5
  315. package/src/utilities/contours/getContourHolesDataCanvas.ts +33 -0
  316. package/src/utilities/contours/getContourHolesDataWorld.ts +19 -0
  317. package/src/utilities/contours/index.ts +6 -0
  318. package/src/utilities/contours/interpolation/acceptAutogeneratedInterpolations.ts +3 -1
  319. package/src/utilities/contours/interpolation/createPolylineToolData.ts +7 -1
  320. package/src/utilities/contours/interpolation/findAnnotationForInterpolation.ts +2 -1
  321. package/src/utilities/contours/interpolation/getInterpolationData.ts +3 -1
  322. package/src/utilities/contours/interpolation/interpolate.ts +94 -75
  323. package/src/utilities/contours/interpolation/selectHandles.ts +240 -0
  324. package/src/utilities/contours/updateContourPolyline.ts +74 -0
  325. package/src/utilities/livewire/LivewireScissors.ts +65 -53
  326. package/src/utilities/math/polyline/containsPoint.ts +1 -1
  327. package/src/utilities/math/polyline/containsPoints.ts +22 -0
  328. package/src/utilities/math/polyline/getWindingDirection.ts +14 -0
  329. package/src/utilities/math/polyline/index.ts +4 -0
  330. package/src/utilities/math/polyline/planarFreehandROIInternalTypes.ts +1 -0
  331. package/src/utilities/segmentation/InterpolationManager/InterpolationManager.ts +39 -4
  332. package/dist/cjs/utilities/contours/PointsArray.d.ts +0 -29
  333. package/dist/cjs/utilities/contours/PointsArray.js +0 -104
  334. package/dist/cjs/utilities/contours/PointsArray.js.map +0 -1
  335. package/dist/esm/utilities/contours/PointsArray.js +0 -98
  336. package/dist/esm/utilities/contours/PointsArray.js.map +0 -1
  337. package/dist/types/utilities/contours/PointsArray.d.ts +0 -30
  338. package/dist/types/utilities/contours/PointsArray.d.ts.map +0 -1
  339. package/src/utilities/contours/PointsArray.ts +0 -165
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resetAnnotationManager = exports.getAnnotationManager = exports.setAnnotationManager = exports.removeAllAnnotations = exports.removeAnnotation = exports.getAnnotation = exports.addAnnotation = exports.getNumberOfAnnotations = exports.getAnnotations = void 0;
3
+ exports.invalidateAnnotation = exports.resetAnnotationManager = exports.getAnnotationManager = exports.setAnnotationManager = exports.removeAllAnnotations = exports.removeAnnotation = exports.getAnnotation = exports.addAnnotation = exports.getNumberOfAnnotations = exports.addChildAnnotation = exports.clearParentAnnotation = exports.getChildAnnotations = exports.getParentAnnotation = exports.getAnnotations = void 0;
4
4
  const core_1 = require("@cornerstonejs/core");
5
5
  const enums_1 = require("../../enums");
6
6
  const FrameOfReferenceSpecificAnnotationManager_1 = require("./FrameOfReferenceSpecificAnnotationManager");
@@ -24,6 +24,42 @@ function getAnnotations(toolName, annotationGroupSelector) {
24
24
  return manager.getAnnotations(groupKey, toolName);
25
25
  }
26
26
  exports.getAnnotations = getAnnotations;
27
+ function clearParentAnnotation(annotation) {
28
+ const { annotationUID: childUID, parentAnnotationUID } = annotation;
29
+ if (!parentAnnotationUID) {
30
+ return;
31
+ }
32
+ const parentAnnotation = getAnnotation(parentAnnotationUID);
33
+ const childUIDIndex = parentAnnotation.childAnnotationUIDs.indexOf(childUID);
34
+ parentAnnotation.childAnnotationUIDs.splice(childUIDIndex, 1);
35
+ annotation.parentAnnotationUID = undefined;
36
+ }
37
+ exports.clearParentAnnotation = clearParentAnnotation;
38
+ function addChildAnnotation(parentAnnotation, childAnnotation) {
39
+ const { annotationUID: parentUID } = parentAnnotation;
40
+ const { annotationUID: childUID } = childAnnotation;
41
+ clearParentAnnotation(childAnnotation);
42
+ if (!parentAnnotation.childAnnotationUIDs) {
43
+ parentAnnotation.childAnnotationUIDs = [];
44
+ }
45
+ if (parentAnnotation.childAnnotationUIDs.includes(childUID)) {
46
+ return;
47
+ }
48
+ parentAnnotation.childAnnotationUIDs.push(childUID);
49
+ childAnnotation.parentAnnotationUID = parentUID;
50
+ }
51
+ exports.addChildAnnotation = addChildAnnotation;
52
+ function getParentAnnotation(annotation) {
53
+ return annotation.parentAnnotationUID
54
+ ? getAnnotation(annotation.parentAnnotationUID)
55
+ : undefined;
56
+ }
57
+ exports.getParentAnnotation = getParentAnnotation;
58
+ function getChildAnnotations(annotation) {
59
+ var _a, _b;
60
+ return ((_b = (_a = annotation.childAnnotationUIDs) === null || _a === void 0 ? void 0 : _a.map((childAnnotationUID) => getAnnotation(childAnnotationUID))) !== null && _b !== void 0 ? _b : []);
61
+ }
62
+ exports.getChildAnnotations = getChildAnnotations;
27
63
  function addAnnotation(annotation, annotationGroupSelector) {
28
64
  if (!annotation.annotationUID) {
29
65
  annotation.annotationUID = core_1.utilities.uuidv4();
@@ -48,6 +84,7 @@ function getNumberOfAnnotations(toolName, annotationGroupSelector) {
48
84
  }
49
85
  exports.getNumberOfAnnotations = getNumberOfAnnotations;
50
86
  function removeAnnotation(annotationUID) {
87
+ var _a;
51
88
  if (!annotationUID) {
52
89
  return;
53
90
  }
@@ -56,6 +93,7 @@ function removeAnnotation(annotationUID) {
56
93
  if (!annotation) {
57
94
  return;
58
95
  }
96
+ (_a = annotation.childAnnotationUIDs) === null || _a === void 0 ? void 0 : _a.forEach((childAnnotationUID) => removeAnnotation(childAnnotationUID));
59
97
  manager.removeAnnotation(annotationUID);
60
98
  const eventType = enums_1.Events.ANNOTATION_REMOVED;
61
99
  const eventDetail = {
@@ -76,4 +114,14 @@ function removeAllAnnotations() {
76
114
  manager.removeAllAnnotations();
77
115
  }
78
116
  exports.removeAllAnnotations = removeAllAnnotations;
117
+ function invalidateAnnotation(annotation) {
118
+ let currAnnotation = annotation;
119
+ while (currAnnotation) {
120
+ currAnnotation.invalidated = true;
121
+ currAnnotation = currAnnotation.parentAnnotationUID
122
+ ? getAnnotation(currAnnotation.parentAnnotationUID)
123
+ : undefined;
124
+ }
125
+ }
126
+ exports.invalidateAnnotation = invalidateAnnotation;
79
127
  //# sourceMappingURL=annotationState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"annotationState.js","sourceRoot":"","sources":["../../../../src/stateManagement/annotation/annotationState.ts"],"names":[],"mappings":";;;AAAA,8CAI6B;AAC7B,uCAAqC;AACrC,2GAA+G;AAI/G,2CAGyB;AAGzB,IAAI,cAAc,GAAG,4FAAgD,CAAC;AAMtE,SAAS,oBAAoB;IAC3B,OAAO,cAAc,CAAC;AACxB,CAAC;AA4JC,oDAAoB;AAtJtB,SAAS,oBAAoB,CAAC,iBAAiB;IAC7C,cAAc,GAAG,iBAAiB,CAAC;AACrC,CAAC;AAmJC,oDAAoB;AAhJtB,SAAS,sBAAsB;IAC7B,cAAc,GAAG,4FAAgD,CAAC;AACpE,CAAC;AAgJC,wDAAsB;AAjIxB,SAAS,cAAc,CACrB,QAAgB,EAChB,uBAAgD;IAEhD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAC9D,OAAO,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAgB,CAAC;AACnE,CAAC;AAiHC,wCAAc;AAnGhB,SAAS,aAAa,CACpB,UAAsB,EACtB,uBAAgD;IAEhD,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;QAC7B,UAAU,CAAC,aAAa,GAAG,gBAAO,CAAC,MAAM,EAAY,CAAC;KACvD;IAED,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IAIvC,IAAI,uBAAuB,YAAY,cAAc,EAAE;QACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;QAC9D,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC5C,IAAA,wCAAgC,EAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;KACvE;SAAM;QAIL,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAClC,IAAA,oCAA4B,EAAC,UAAU,CAAC,CAAC;KAC1C;IAED,OAAO,UAAU,CAAC,aAAa,CAAC;AAClC,CAAC;AA4EC,sCAAa;AA7Df,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,uBAAgD;IAEhD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAE9D,OAAO,OAAO,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC5D,CAAC;AAoDC,wDAAsB;AA9CxB,SAAS,gBAAgB,CAAC,aAAqB;IAC7C,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO;KACR;IACD,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAGxD,IAAI,CAAC,UAAU,EAAE;QACf,OAAO;KACR;IAED,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAGxC,MAAM,SAAS,GAAG,cAAM,CAAC,kBAAkB,CAAC;IAE5C,MAAM,WAAW,GAAiC;QAChD,UAAU;QACV,oBAAoB,EAAE,OAAO,CAAC,GAAG;KAClC,CAAC;IAEF,IAAA,mBAAY,EAAC,kBAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC;AA0BC,4CAAgB;AApBlB,SAAS,aAAa,CAAC,aAAqB;IAC1C,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAExD,OAAO,UAAU,CAAC;AACpB,CAAC;AAcC,sCAAa;AATf,SAAS,oBAAoB;IAC3B,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,OAAO,CAAC,oBAAoB,EAAE,CAAC;AACjC,CAAC;AAQC,oDAAoB"}
1
+ {"version":3,"file":"annotationState.js","sourceRoot":"","sources":["../../../../src/stateManagement/annotation/annotationState.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
+ import { ChangeTypes } from '../../../enums';
1
2
  import { Annotation } from '../../../types/AnnotationTypes';
2
3
  declare function triggerAnnotationAddedForElement(annotation: Annotation, element: HTMLDivElement): void;
3
4
  declare function triggerAnnotationAddedForFOR(annotation: Annotation): void;
4
- declare function triggerAnnotationModified(annotation: Annotation, element: HTMLDivElement): void;
5
+ declare function triggerAnnotationModified(annotation: Annotation, element: HTMLDivElement, changeType?: ChangeTypes): void;
5
6
  declare function triggerAnnotationCompleted(annotation: Annotation): void;
6
- export { triggerAnnotationAddedForElement, triggerAnnotationAddedForFOR, triggerAnnotationModified, triggerAnnotationCompleted, };
7
+ declare function triggerContourAnnotationCompleted(annotation: Annotation, contourHoleProcessingEnabled?: boolean): void;
8
+ export { triggerAnnotationAddedForElement, triggerAnnotationAddedForFOR, triggerAnnotationModified, triggerAnnotationCompleted, triggerContourAnnotationCompleted, };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.triggerAnnotationCompleted = exports.triggerAnnotationModified = exports.triggerAnnotationAddedForFOR = exports.triggerAnnotationAddedForElement = void 0;
3
+ exports.triggerContourAnnotationCompleted = exports.triggerAnnotationCompleted = exports.triggerAnnotationModified = exports.triggerAnnotationAddedForFOR = exports.triggerAnnotationAddedForElement = void 0;
4
4
  const core_1 = require("@cornerstonejs/core");
5
5
  const enums_1 = require("../../../enums");
6
6
  const ToolGroupManager_1 = require("../../../store/ToolGroupManager");
@@ -45,7 +45,7 @@ function triggerAnnotationAddedForFOR(annotation) {
45
45
  });
46
46
  }
47
47
  exports.triggerAnnotationAddedForFOR = triggerAnnotationAddedForFOR;
48
- function triggerAnnotationModified(annotation, element) {
48
+ function triggerAnnotationModified(annotation, element, changeType = enums_1.ChangeTypes.HandlesUpdated) {
49
49
  const enabledElement = (0, core_1.getEnabledElement)(element);
50
50
  const { viewportId, renderingEngineId } = enabledElement;
51
51
  const eventType = enums_1.Events.ANNOTATION_MODIFIED;
@@ -53,16 +53,28 @@ function triggerAnnotationModified(annotation, element) {
53
53
  annotation,
54
54
  viewportId,
55
55
  renderingEngineId,
56
+ changeType,
56
57
  };
57
58
  (0, core_1.triggerEvent)(core_1.eventTarget, eventType, eventDetail);
58
59
  }
59
60
  exports.triggerAnnotationModified = triggerAnnotationModified;
60
61
  function triggerAnnotationCompleted(annotation) {
61
- const eventType = enums_1.Events.ANNOTATION_COMPLETED;
62
62
  const eventDetail = {
63
63
  annotation,
64
64
  };
65
- (0, core_1.triggerEvent)(core_1.eventTarget, eventType, eventDetail);
65
+ _triggerAnnotationCompleted(eventDetail);
66
66
  }
67
67
  exports.triggerAnnotationCompleted = triggerAnnotationCompleted;
68
+ function triggerContourAnnotationCompleted(annotation, contourHoleProcessingEnabled = false) {
69
+ const eventDetail = {
70
+ annotation,
71
+ contourHoleProcessingEnabled,
72
+ };
73
+ _triggerAnnotationCompleted(eventDetail);
74
+ }
75
+ exports.triggerContourAnnotationCompleted = triggerContourAnnotationCompleted;
76
+ function _triggerAnnotationCompleted(eventDetail) {
77
+ const eventType = enums_1.Events.ANNOTATION_COMPLETED;
78
+ (0, core_1.triggerEvent)(core_1.eventTarget, eventType, eventDetail);
79
+ }
68
80
  //# sourceMappingURL=state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/stateManagement/annotation/helpers/state.ts"],"names":[],"mappings":";;;AAAA,8CAK6B;AAC7B,0CAAwC;AAExC,sEAA4E;AAY5E,SAAS,gCAAgC,CACvC,UAAsB,EACtB,OAAuB;IAEvB,MAAM,cAAc,GAAG,IAAA,wBAAiB,EAAC,OAAO,CAAC,CAAC;IAClD,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;IAEvD,MAAM,SAAS,GAAG,cAAM,CAAC,gBAAgB,CAAC;IAE1C,MAAM,WAAW,GAA+B;QAC9C,UAAU;QACV,UAAU;QACV,iBAAiB,EAAE,eAAe,CAAC,EAAE;KACtC,CAAC;IAEF,IAAA,mBAAY,EAAC,kBAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC;AA8EC,4EAAgC;AAvElC,SAAS,4BAA4B,CAAC,UAAsB;IAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAA,4CAAyB,EAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;QACtB,OAAO;KACR;IAGD,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAC7B,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QAC/B,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAC/C,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC;YACvD,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAA,6BAAsB,EACpD,UAAU,EACV,iBAAiB,CAClB,CAAC;YAEF,IAAI,UAAU,CAAC,QAAQ,CAAC,mBAAmB,KAAK,mBAAmB,EAAE;gBACnE,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACtC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,cAAM,CAAC,gBAAgB,CAAC;IAC1C,MAAM,WAAW,GAA+B,EAAE,UAAU,EAAE,CAAC;IAE/D,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE;QAC7B,IAAA,mBAAY,EAAC,kBAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAClD,OAAO;KACR;IAED,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,EAAE;QAC9D,WAAW,CAAC,UAAU,GAAG,UAAU,CAAC;QACpC,WAAW,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAClD,IAAA,mBAAY,EAAC,kBAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAmCC,oEAA4B;AA9B9B,SAAS,yBAAyB,CAChC,UAAsB,EACtB,OAAuB;IAEvB,MAAM,cAAc,GAAG,IAAA,wBAAiB,EAAC,OAAO,CAAC,CAAC;IAClD,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,cAAc,CAAC;IACzD,MAAM,SAAS,GAAG,cAAM,CAAC,mBAAmB,CAAC;IAC7C,MAAM,WAAW,GAAkC;QACjD,UAAU;QACV,UAAU;QACV,iBAAiB;KAClB,CAAC;IAEF,IAAA,mBAAY,EAAC,kBAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC;AAiBC,8DAAyB;AAZ3B,SAAS,0BAA0B,CAAC,UAAsB;IACxD,MAAM,SAAS,GAAG,cAAM,CAAC,oBAAoB,CAAC;IAC9C,MAAM,WAAW,GAAmC;QAClD,UAAU;KACX,CAAC;IAEF,IAAA,mBAAY,EAAC,kBAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;AACpD,CAAC;AAMC,gEAA0B"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/stateManagement/annotation/helpers/state.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,14 @@ import { addAnnotation } from "./annotation/annotationState";
7
7
  import { getNumberOfAnnotations } from "./annotation/annotationState";
8
8
  import { removeAnnotation } from "./annotation/annotationState";
9
9
  import { getAnnotation } from "./annotation/annotationState";
10
+ import { getParentAnnotation } from "./annotation/annotationState";
11
+ import { getChildAnnotations } from "./annotation/annotationState";
12
+ import { clearParentAnnotation } from "./annotation/annotationState";
13
+ import { addChildAnnotation } from "./annotation/annotationState";
10
14
  import { setAnnotationManager } from "./annotation/annotationState";
11
15
  import { getAnnotationManager } from "./annotation/annotationState";
12
16
  import { resetAnnotationManager } from "./annotation/annotationState";
17
+ import { invalidateAnnotation } from "./annotation/annotationState";
13
18
  import { addSegmentationRepresentations } from "./segmentation";
14
19
  import { removeSegmentationsFromToolGroup } from "./segmentation";
15
- export { FrameOfReferenceSpecificAnnotationManager, defaultFrameOfReferenceSpecificAnnotationManager, annotationLocking, annotationSelection, getAnnotations, addAnnotation, getNumberOfAnnotations, removeAnnotation, getAnnotation, setAnnotationManager, getAnnotationManager, resetAnnotationManager, addSegmentationRepresentations, removeSegmentationsFromToolGroup };
20
+ export { FrameOfReferenceSpecificAnnotationManager, defaultFrameOfReferenceSpecificAnnotationManager, annotationLocking, annotationSelection, getAnnotations, addAnnotation, getNumberOfAnnotations, removeAnnotation, getAnnotation, getParentAnnotation, getChildAnnotations, clearParentAnnotation, addChildAnnotation, setAnnotationManager, getAnnotationManager, resetAnnotationManager, invalidateAnnotation, addSegmentationRepresentations, removeSegmentationsFromToolGroup };
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.removeSegmentationsFromToolGroup = exports.addSegmentationRepresentations = exports.resetAnnotationManager = exports.getAnnotationManager = exports.setAnnotationManager = exports.getAnnotation = exports.removeAnnotation = exports.getNumberOfAnnotations = exports.addAnnotation = exports.getAnnotations = exports.annotationSelection = exports.annotationLocking = exports.defaultFrameOfReferenceSpecificAnnotationManager = exports.FrameOfReferenceSpecificAnnotationManager = void 0;
26
+ exports.removeSegmentationsFromToolGroup = exports.addSegmentationRepresentations = exports.invalidateAnnotation = exports.resetAnnotationManager = exports.getAnnotationManager = exports.setAnnotationManager = exports.addChildAnnotation = exports.clearParentAnnotation = exports.getChildAnnotations = exports.getParentAnnotation = exports.getAnnotation = exports.removeAnnotation = exports.getNumberOfAnnotations = exports.addAnnotation = exports.getAnnotations = exports.annotationSelection = exports.annotationLocking = exports.defaultFrameOfReferenceSpecificAnnotationManager = exports.FrameOfReferenceSpecificAnnotationManager = void 0;
27
27
  const FrameOfReferenceSpecificAnnotationManager_1 = __importStar(require("./annotation/FrameOfReferenceSpecificAnnotationManager"));
28
28
  exports.FrameOfReferenceSpecificAnnotationManager = FrameOfReferenceSpecificAnnotationManager_1.default;
29
29
  Object.defineProperty(exports, "defaultFrameOfReferenceSpecificAnnotationManager", { enumerable: true, get: function () { return FrameOfReferenceSpecificAnnotationManager_1.defaultFrameOfReferenceSpecificAnnotationManager; } });
@@ -36,10 +36,15 @@ Object.defineProperty(exports, "getAnnotations", { enumerable: true, get: functi
36
36
  Object.defineProperty(exports, "addAnnotation", { enumerable: true, get: function () { return annotationState_1.addAnnotation; } });
37
37
  Object.defineProperty(exports, "removeAnnotation", { enumerable: true, get: function () { return annotationState_1.removeAnnotation; } });
38
38
  Object.defineProperty(exports, "getAnnotation", { enumerable: true, get: function () { return annotationState_1.getAnnotation; } });
39
+ Object.defineProperty(exports, "getParentAnnotation", { enumerable: true, get: function () { return annotationState_1.getParentAnnotation; } });
40
+ Object.defineProperty(exports, "getChildAnnotations", { enumerable: true, get: function () { return annotationState_1.getChildAnnotations; } });
41
+ Object.defineProperty(exports, "clearParentAnnotation", { enumerable: true, get: function () { return annotationState_1.clearParentAnnotation; } });
42
+ Object.defineProperty(exports, "addChildAnnotation", { enumerable: true, get: function () { return annotationState_1.addChildAnnotation; } });
39
43
  Object.defineProperty(exports, "getNumberOfAnnotations", { enumerable: true, get: function () { return annotationState_1.getNumberOfAnnotations; } });
40
44
  Object.defineProperty(exports, "setAnnotationManager", { enumerable: true, get: function () { return annotationState_1.setAnnotationManager; } });
41
45
  Object.defineProperty(exports, "getAnnotationManager", { enumerable: true, get: function () { return annotationState_1.getAnnotationManager; } });
42
46
  Object.defineProperty(exports, "resetAnnotationManager", { enumerable: true, get: function () { return annotationState_1.resetAnnotationManager; } });
47
+ Object.defineProperty(exports, "invalidateAnnotation", { enumerable: true, get: function () { return annotationState_1.invalidateAnnotation; } });
43
48
  const segmentation_1 = require("./segmentation");
44
49
  Object.defineProperty(exports, "addSegmentationRepresentations", { enumerable: true, get: function () { return segmentation_1.addSegmentationRepresentations; } });
45
50
  Object.defineProperty(exports, "removeSegmentationsFromToolGroup", { enumerable: true, get: function () { return segmentation_1.removeSegmentationsFromToolGroup; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stateManagement/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oIAEgE;AAsB9D,oDAxBK,mDAAyC,CAwBL;AACzC,iIAxBA,4FAAgD,OAwBA;AAtBlD,kFAAoE;AAuBlE,8CAAiB;AAtBnB,sFAAwE;AAuBtE,kDAAmB;AArBrB,kEASsC;AAapC,+FArBA,gCAAc,OAqBA;AACd,8FArBA,+BAAa,OAqBA;AAEb,iGAtBA,kCAAgB,OAsBA;AAChB,8FAtBA,+BAAa,OAsBA;AAFb,uGAnBA,wCAAsB,OAmBA;AAGtB,qGArBA,sCAAoB,OAqBA;AACpB,qGArBA,sCAAoB,OAqBA;AACpB,uGArBA,wCAAsB,OAqBA;AAlBxB,iDAGwB;AAiBtB,+GAnBA,6CAA8B,OAmBA;AAC9B,iHAnBA,+CAAgC,OAmBA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stateManagement/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oIAEgE;AA2B9D,oDA7BK,mDAAyC,CA6BL;AACzC,iIA7BA,4FAAgD,OA6BA;AA3BlD,kFAAoE;AA4BlE,8CAAiB;AA3BnB,sFAAwE;AA4BtE,kDAAmB;AA1BrB,kEAcsC;AAapC,+FA1BA,gCAAc,OA0BA;AACd,8FA1BA,+BAAa,OA0BA;AAEb,iGA3BA,kCAAgB,OA2BA;AAChB,8FA3BA,+BAAa,OA2BA;AACb,oGA3BA,qCAAmB,OA2BA;AACnB,oGA3BA,qCAAmB,OA2BA;AACnB,sGA3BA,uCAAqB,OA2BA;AACrB,mGA3BA,oCAAkB,OA2BA;AANlB,uGApBA,wCAAsB,OAoBA;AAOtB,qGA1BA,sCAAoB,OA0BA;AACpB,qGA1BA,sCAAoB,OA0BA;AACpB,uGA1BA,wCAAsB,OA0BA;AACtB,qGA1BA,sCAAoB,OA0BA;AAvBtB,iDAGwB;AAsBtB,+GAxBA,6CAA8B,OAwBA;AAC9B,iHAxBA,+CAAgC,OAwBA"}
@@ -20,7 +20,9 @@ export default class ToolGroup implements IToolGroup {
20
20
  setActiveStrategy(toolName: string, strategyName: string): void;
21
21
  setToolMode(toolName: string, mode: ToolModes, options?: SetToolBindingsType): void;
22
22
  setToolActive(toolName: string, toolBindingsOptions?: SetToolBindingsType): void;
23
- setToolPassive(toolName: string): void;
23
+ setToolPassive(toolName: string, options?: {
24
+ removeAllBindings?: boolean;
25
+ }): void;
24
26
  setToolEnabled(toolName: string): void;
25
27
  setToolDisabled(toolName: string): void;
26
28
  getToolOptions(toolName: string): ToolOptionsType;
@@ -205,7 +205,7 @@ class ToolGroup {
205
205
  (0, core_1.triggerEvent)(core_1.eventTarget, enums_2.Events.TOOL_ACTIVATED, eventDetail);
206
206
  this._triggerToolModeChangedEvent(toolName, Active, toolBindingsOptions);
207
207
  }
208
- setToolPassive(toolName) {
208
+ setToolPassive(toolName, options) {
209
209
  const toolInstance = this._toolInstances[toolName];
210
210
  if (toolInstance === undefined) {
211
211
  console.warn(`Tool ${toolName} not added to toolGroup, can't set tool mode.`);
@@ -218,7 +218,8 @@ class ToolGroup {
218
218
  mode: Passive,
219
219
  });
220
220
  const defaultMousePrimary = this.getDefaultMousePrimary();
221
- toolOptions.bindings = toolOptions.bindings.filter((binding) => binding.mouseButton !== defaultMousePrimary || binding.modifierKey);
221
+ toolOptions.bindings = toolOptions.bindings.filter((binding) => (options === null || options === void 0 ? void 0 : options.removeAllBindings) !== true &&
222
+ (binding.mouseButton !== defaultMousePrimary || binding.modifierKey));
222
223
  let mode = Passive;
223
224
  if (toolOptions.bindings.length !== 0) {
224
225
  mode = Active;
@@ -1 +1 @@
1
- {"version":3,"file":"ToolGroup.js","sourceRoot":"","sources":["../../../../src/store/ToolGroupManager/ToolGroup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolGroup.js","sourceRoot":"","sources":["../../../../src/store/ToolGroupManager/ToolGroup.ts"],"names":[],"mappings":";;;;;AAAA,uCAAuD;AACvD,wEAAyC;AACzC,4DAA6B;AAC7B,8CAO6B;AAE7B,uCAAqC;AAKrC,oCAAmD;AAUnD,2CAA4D;AAC5D,+DAAgE;AAEhE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,iBAAS,CAAC;AAczD,MAAqB,SAAS;IAU5B,YAAY,EAAU;QARtB,kBAAa,GAAG,EAAE,CAAC;QACnB,gBAAW,GAAG,EAAE,CAAC;QAIjB,uBAAkB,GAAG,EAAE,CAAC;QACxB,mBAAc,GAAG,EAAE,CAAC;QAGlB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAMD,cAAc;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;IAChE,CAAC;IAKD,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACpC,CAAC;IAOM,eAAe,CAAC,gBAAwB;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,CAAC,IAAI,CACV,IAAI,gBAAgB,4CAA4C,IAAI,CAAC,EAAE,IAAI,CAC5E,CAAC;YACF,OAAO;SACR;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAOD,OAAO,CAAC,QAAgB;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAWD,OAAO,CAAC,QAAgB,EAAE,gBAAmC,EAAE;QAC7D,MAAM,cAAc,GAAG,aAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,EAAE,CAAC;QACvE,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAErD,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,CAAC,IAAI,CACV,sDAAsD,EACtD,aAAa,CACd,CAAC;YACF,OAAO;SACR;QAED,IAAI,CAAC,cAAc,EAAE;YACnB,OAAO,CAAC,IAAI,CACV,IAAI,QAAQ,gGAAgG,CAC7G,CAAC;YACF,OAAO;SACR;QAED,IAAI,iBAAiB,EAAE;YACrB,OAAO,CAAC,IAAI,CACV,IAAI,QAAQ,yCAAyC,IAAI,CAAC,EAAE,GAAG,CAChE,CAAC;YACF,OAAO;SACR;QAID,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC;QAEhD,MAAM,SAAS,GAAG;YAChB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,IAAI,CAAC,EAAE;YACpB,aAAa;SACd,CAAC;QAEF,MAAM,gBAAgB,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;QAIlD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;IACnD,CAAC;IAEM,eAAe,CACpB,QAAgB,EAChB,eAAuB,EACvB,aAAa,GAAG,EAAE;;QAElB,IAAI,cAAc,GAAG,MAAA,aAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,0CACtC,SAAgC,CAAC;QAErC,IAAI,CAAC,cAAc,EAAE;YAEnB,MAAM,WAAW,GAAG,aAAK,CAAC,KAAK,CAAC,eAAe,CAAC;iBAC7C,SAAgC,CAAC;YAIpC,MAAM,YAAa,SAAQ,WAAW;aAAG;YAEzC,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAEjC,cAAc,GAAG,YAAY,CAAC;YAE9B,aAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG;gBACtB,SAAS,EAAE,YAAmC;aAC/C,CAAC;SACH;QAID,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACvD,CAAC;IAeM,WAAW,CAAC,UAAkB,EAAE,iBAA0B;QAC/D,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;SAC/D;QAED,MAAM,gBAAgB,GAAG,IAAA,0BAAmB,GAAE,CAAC;QAE/C,IAAI,CAAC,iBAAiB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;YACrD,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;SACH;QAED,MAAM,uBAAuB,GAAG,iBAAiB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAG5E,IACE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC,EACvE;YACA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;gBACtB,UAAU;gBACV,iBAAiB,EAAE,uBAAuB;aAC3C,CAAC,CAAC;SACJ;QAGD,MAAM,QAAQ,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAExD,MAAM,eAAe,GAAG,eAAQ,CAAC,kBAAkB,EAAE,CAAC;QACtD,IAAI,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACrC,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;SAC7C;IACH,CAAC;IAUM,eAAe,CAAC,iBAAyB,EAAE,UAAmB;QACnE,MAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC3C,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IAAI,MAAM,CAAC,iBAAiB,KAAK,iBAAiB,EAAE;gBAClD,KAAK,GAAG,IAAI,CAAC;gBAEb,IAAI,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;oBAClD,KAAK,GAAG,KAAK,CAAC;iBACf;aACF;YACD,IAAI,KAAK,EAAE;gBACT,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACrB;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,EAAE;YAGlB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC5C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC1C;SACF;IACH,CAAC;IAEM,iBAAiB,CAAC,QAAgB,EAAE,YAAoB;QAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEnD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,wDAAwD,CACzE,CAAC;YAEF,OAAO;SACR;QAED,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC/C,CAAC;IAED,WAAW,CACT,QAAgB,EAChB,IAAe,EACf,UAAU,EAAyB;QAEnC,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI,IAAI,KAAK,iBAAS,CAAC,MAAM,EAAE;YAC7B,IAAI,CAAC,aAAa,CAChB,QAAQ,EACR,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAC7C,CAAC;YACF,OAAO;SACR;QAED,IAAI,IAAI,KAAK,iBAAS,CAAC,OAAO,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;SACR;QAED,IAAI,IAAI,KAAK,iBAAS,CAAC,OAAO,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;SACR;QAED,IAAI,IAAI,KAAK,iBAAS,CAAC,QAAQ,EAAE;YAC/B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC/B,OAAO;SACR;QAED,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACpD,CAAC;IAcM,aAAa,CAClB,QAAgB,EAChB,sBAAsB,EAAyB;QAE/C,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEnD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,+CAA+C,CAChE,CAAC;YAEF,OAAO;SACR;QAED,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,CAAC,IAAI,CACV,IAAI,QAAQ,cAAc,YAAY,8DAA8D,CACrG,CAAC;YACF,OAAO;SACR;QAED,MAAM,YAAY,GAAmB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,QAAQ;YACrC,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,WAAW,GAAG,mBAAmB,CAAC,QAAQ;YAC9C,CAAC,CAAC,mBAAmB,CAAC,QAAQ;YAC9B,CAAC,CAAC,EAAE,CAAC;QAKP,MAAM,aAAa,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,WAAW,CAAC,CAAC,MAAM,CAC5D,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAClB,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC;YAC1D,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC;YAEvD,IACE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACnD,CAAC,YAAY,IAAI,YAAY,CAAC,EAC9B;gBACA,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACtB;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,EAAE,CACH,CAAC;QAGF,MAAM,WAAW,GAAoB;YACnC,QAAQ,EAAE,aAAa;YACvB,IAAI,EAAE,MAAM;SACb,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC;QAG5C,MAAM,eAAe,GAAG,eAAQ,CAAC,kBAAkB,EAAE,CAAC;QACtD,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEpD,IAAI,IAAI,CAAC,6BAA6B,CAAC,mBAAmB,CAAC,IAAI,SAAS,EAAE;YACxE,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;SAC7C;aAAM;YAEL,MAAM,oBAAoB,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;YACpE,IAAI,CAAC,oBAAoB,IAAI,SAAS,EAAE;gBACtC,MAAM,MAAM,GAAG,qBAAW,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;aACrC;SACF;QAED,IAAI,OAAO,YAAY,CAAC,eAAe,KAAK,UAAU,EAAE;YACtD,YAAY,CAAC,eAAe,EAAE,CAAC;SAChC;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,MAAM,WAAW,GAA6B;YAC5C,WAAW,EAAE,IAAI,CAAC,EAAE;YACpB,QAAQ;YACR,mBAAmB;SACpB,CAAC;QAEF,IAAA,mBAAY,EAAC,kBAAW,EAAE,cAAM,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,4BAA4B,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC3E,CAAC;IAaM,cAAc,CACnB,QAAgB,EAChB,OAAyC;QAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEnD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,+CAA+C,CAChE,CAAC;YAEF,OAAO;SACR;QAID,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B;YACE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;SAC1D,EACD,eAAe,EACf;YACE,IAAI,EAAE,OAAO;SACd,CACF,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAG1D,WAAW,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAChD,CAAC,OAAO,EAAE,EAAE,CACV,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,MAAK,IAAI;YACnC,CAAC,OAAO,CAAC,WAAW,KAAK,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CACvE,CAAC;QAEF,IAAI,IAAI,GAAG,OAAO,CAAC;QACnB,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACrC,IAAI,GAAG,MAAM,CAAC;YACd,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;SACzB;QAED,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;QACzC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;QAEzB,IAAI,OAAO,YAAY,CAAC,gBAAgB,KAAK,UAAU,EAAE;YACvD,YAAY,CAAC,gBAAgB,EAAE,CAAC;SACjC;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAOxB,IAAI,CAAC,4BAA4B,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IASM,cAAc,CAAC,QAAgB;QACpC,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEnD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,+CAA+C,CAChE,CAAC;YAEF,OAAO;SACR;QAED,MAAM,WAAW,GAAG;YAClB,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,OAAO;SACd,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;QACzC,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC;QAE5B,IAAI,OAAO,YAAY,CAAC,gBAAgB,KAAK,UAAU,EAAE;YACvD,YAAY,CAAC,gBAAgB,EAAE,CAAC;SACjC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,4BAA4B,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IASM,eAAe,CAAC,QAAgB;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEnD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,+CAA+C,CAChE,CAAC;YAEF,OAAO;SACR;QAED,MAAM,WAAW,GAAG;YAClB,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,QAAQ;SACf,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE/D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;QACzC,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;QAE7B,IAAI,OAAO,YAAY,CAAC,iBAAiB,KAAK,UAAU,EAAE;YACxD,YAAY,CAAC,iBAAiB,EAAE,CAAC;SAClC;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,4BAA4B,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAOM,cAAc,CAAC,QAAgB;QACpC,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEtD,IAAI,kBAAkB,KAAK,SAAS,EAAE;YACpC,OAAO;SACR;QAED,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAQM,+BAA+B;QACpC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;YACrD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC/C,OAAO,CACL,WAAW,CAAC,IAAI,KAAK,MAAM;gBAC3B,IAAI,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAChD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,4BAA4B,CACjC,QAAgB,EAChB,YAAqB;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAEvD,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAEO,UAAU,CAAC,QAAgB,EAAE,YAAqB;QACxD,IAAI,UAAU,CAAC;QACf,IAAI,MAAM,CAAC;QAEX,IAAI,YAAY,EAAE;YAGhB,UAAU,GAAG,GAAG,QAAQ,IAAI,YAAY,EAAE,CAAC;YAE3C,MAAM,GAAG,wBAAc,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAE3D,IAAI,MAAM,EAAE;gBACV,OAAO,MAAM,CAAC;aACf;SACF;QAGD,UAAU,GAAG,GAAG,QAAQ,EAAE,CAAC;QAE3B,MAAM,GAAG,wBAAc,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE3D,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAC;SACf;QAGD,UAAU,GAAG,QAAQ,CAAC;QAEtB,MAAM,GAAG,wBAAc,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE3D,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAC;SACf;QAED,OAAO,qBAAW,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,sBAAsB,CAAC,MAAmB;QACxC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,EAAE;YAC/D,MAAM,cAAc,GAAG,IAAA,6BAAsB,EAC3C,UAAU,EACV,iBAAiB,CAClB,CAAC;YAEF,IAAI,CAAC,cAAc,EAAE;gBACnB,OAAO;aACR;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;YACpC,IAAA,iCAAiB,EAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAMM,oBAAoB,CACzB,QAAgB,EAChB,aAAgC,EAChC,SAAmB;QAEnB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE;YAC/C,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,6CAA6C,CAC9D,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QAED,IAAI,cAAc,CAAC;QAEnB,IAAI,SAAS,EAAE;YACb,cAAc,GAAG,aAAa,CAAC;SAChC;aAAM;YAIL,cAAc,GAAG,MAAM,CAAC,MAAM,CAC5B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,EAC3C,aAAa,CACd,CAAC;SACH;QAED,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,GAAG,cAAc,CAAC;QAE7D,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,OAAO,IAAI,CAAC;IACd,CAAC;IAMM,sBAAsB;QAC3B,OAAO,qBAAa,CAAC,OAAO,CAAC;IAC/B,CAAC;IAUD,oBAAoB,CAAC,QAAgB,EAAE,iBAA0B;QAC/D,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE;YAC/C,OAAO,CAAC,IAAI,CACV,QAAQ,QAAQ,6CAA6C,CAC9D,CAAC;YACF,OAAO;SACR;QAED,MAAM,cAAc,GAClB,IAAA,oBAAG,EAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,iBAAiB,CAAC;YACnE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC;QAE9C,OAAO,IAAA,0BAAS,EAAC,cAAc,CAAC,CAAC;IACnC,CAAC;IAUM,KAAK,CACV,cAAc,EACd,eAA2C,IAAI;QAE/C,IAAI,SAAS,GAAG,wBAAgB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAE9D,IAAI,SAAS,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,aAAa,cAAc,iBAAiB,CAAC,CAAC;YAC3D,OAAO,SAAS,CAAC;SAClB;QAED,SAAS,GAAG,wBAAgB,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAC7D,YAAY,GAAG,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAE5C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;aAC7B,MAAM,CAAC,YAAY,CAAC;aACpB,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;;YACpB,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACzD,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACrD,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC;YAE/C,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAE3B,SAAkC,CAAC,WAAW,CAC7C,QAAQ,EACR,cAAc,EACd;gBACE,QAAQ,EAAE,MAAA,iBAAiB,CAAC,QAAQ,mCAAI,EAAE;aAC3C,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,OAAO,SAAS,CAAC;IACnB,CAAC;IAOO,6BAA6B,CAAC,WAAW;;QAC/C,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE1D,OAAO,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,0CAAE,IAAI,CAChC,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,WAAW,KAAK,mBAAmB;YAC3C,OAAO,CAAC,WAAW,KAAK,SAAS,CACpC,CAAC;IACJ,CAAC;IAKO,gBAAgB;QACtB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,EAAE;YAC/D,IAAA,yBAAkB,EAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC;IAQO,4BAA4B,CAClC,QAAgB,EAChB,IAAe,EACf,mBAAyC;QAEzC,MAAM,WAAW,GAA+B;YAC9C,WAAW,EAAE,IAAI,CAAC,EAAE;YACpB,QAAQ;YACR,IAAI;YACJ,mBAAmB;SACpB,CAAC;QAEF,IAAA,mBAAY,EAAC,kBAAW,EAAE,cAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IACnE,CAAC;CACF;AAnvBD,4BAmvBC;AAED,SAAS,cAAc,CACrB,QAAsB,EACtB,QAAsB;IAEtB,IAAI,QAAQ,CAAC,WAAW,KAAK,QAAQ,CAAC,WAAW,EAAE;QACjD,OAAO,KAAK,CAAC;KACd;IAED,OAAO,QAAQ,CAAC,WAAW,KAAK,QAAQ,CAAC,WAAW,CAAC;AACvD,CAAC"}
@@ -90,7 +90,7 @@ class SegmentationIntersectionTool extends AnnotationDisplayTool_1.default {
90
90
  color: color,
91
91
  fillColor: color,
92
92
  fillOpacity: this.configuration.opacity,
93
- connectLastToFirst: true,
93
+ closePath: true,
94
94
  };
95
95
  const polyLineUID = actorEntry.uid + '#' + polyLineIdx;
96
96
  (0, drawingSvg_1.drawPolyline)(svgDrawingHelper, annotationUID, polyLineUID, canvasPoints, options);
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentationIntersectionTool.js","sourceRoot":"","sources":["../../../src/tools/SegmentationIntersectionTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SegmentationIntersectionTool.js","sourceRoot":"","sources":["../../../src/tools/SegmentationIntersectionTool.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
+ import type { Types } from '@cornerstonejs/core';
1
2
  import LivewireContourTool from './LivewireContourTool';
3
+ import type { ContourSegmentationAnnotation } from '../../types';
2
4
  declare class LivewireContourSegmentationTool extends LivewireContourTool {
3
5
  static toolName: any;
6
+ updateInterpolatedAnnotation(annotation: ContourSegmentationAnnotation, enabledElement: Types.IEnabledElement): void;
7
+ protected renderAnnotationInstance(renderContext: any): boolean;
4
8
  protected isContourSegmentationTool(): boolean;
5
9
  }
6
10
  export default LivewireContourSegmentationTool;
@@ -3,8 +3,90 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const core_1 = require("@cornerstonejs/core");
6
7
  const LivewireContourTool_1 = __importDefault(require("./LivewireContourTool"));
8
+ const LiveWirePath_1 = require("../../utilities/livewire/LiveWirePath");
9
+ const state_1 = require("../../stateManagement/annotation/helpers/state");
10
+ const enums_1 = require("../../enums");
11
+ const drawingSvg_1 = require("../../drawingSvg");
7
12
  class LivewireContourSegmentationTool extends LivewireContourTool_1.default {
13
+ updateInterpolatedAnnotation(annotation, enabledElement) {
14
+ if (this.editData ||
15
+ !annotation.invalidated ||
16
+ !annotation.data.handles.interpolationSources) {
17
+ return;
18
+ }
19
+ annotation.data.contour.originalPolyline = annotation.data.contour.polyline;
20
+ queueMicrotask(() => {
21
+ if (!annotation.data.handles.interpolationSources) {
22
+ return;
23
+ }
24
+ const { points } = annotation.data.handles;
25
+ const { element } = enabledElement.viewport;
26
+ this.setupBaseEditData(points[0], element, annotation);
27
+ const { length: count } = points;
28
+ const { scissors } = this;
29
+ const { nearestEdge, repeatInterpolation } = this.configuration.interpolation;
30
+ annotation.data.handles.originalPoints = points;
31
+ const { worldToSlice, sliceToWorld } = this.editData;
32
+ const handleSmoothing = [];
33
+ if (nearestEdge) {
34
+ let lastPoint = worldToSlice(points[points.length - 1]);
35
+ points.forEach((point, hIndex) => {
36
+ const testPoint = worldToSlice(point);
37
+ lastPoint = testPoint;
38
+ handleSmoothing.push(testPoint);
39
+ scissors.startSearch(lastPoint);
40
+ scissors.findPathToPoint(testPoint);
41
+ scissors.findPathToPoint(worldToSlice(points[(hIndex + 3) % points.length]));
42
+ const minPoint = scissors.findMinNearby(testPoint, nearestEdge);
43
+ if (!core_1.utilities.isEqual(testPoint, minPoint)) {
44
+ handleSmoothing[hIndex] = minPoint;
45
+ lastPoint = minPoint;
46
+ points[hIndex] = sliceToWorld(minPoint);
47
+ }
48
+ });
49
+ }
50
+ const acceptedPath = new LiveWirePath_1.LivewirePath();
51
+ for (let i = 0; i < count; i++) {
52
+ scissors.startSearch(worldToSlice(points[i]));
53
+ const path = scissors.findPathToPoint(worldToSlice(points[(i + 1) % count]));
54
+ acceptedPath.addPoints(path);
55
+ }
56
+ this.updateAnnotation(acceptedPath);
57
+ this.scissors = null;
58
+ this.scissorsRight = null;
59
+ this.editData = null;
60
+ annotation.data.handles.interpolationSources = null;
61
+ if (repeatInterpolation) {
62
+ (0, state_1.triggerAnnotationModified)(annotation, enabledElement.viewport.element, enums_1.ChangeTypes.InterpolationUpdated);
63
+ }
64
+ });
65
+ }
66
+ renderAnnotationInstance(renderContext) {
67
+ var _a;
68
+ const { enabledElement, svgDrawingHelper } = renderContext;
69
+ const annotation = renderContext.annotation;
70
+ const { annotationUID } = annotation;
71
+ const { viewport } = enabledElement;
72
+ const { worldToCanvas } = viewport;
73
+ const { showInterpolationPolyline } = this.configuration.interpolation || {};
74
+ (_a = this.updateInterpolatedAnnotation) === null || _a === void 0 ? void 0 : _a.call(this, annotation, enabledElement);
75
+ const { originalPolyline } = annotation.data.contour;
76
+ const rendered = super.renderAnnotationInstance(renderContext);
77
+ if (showInterpolationPolyline &&
78
+ originalPolyline &&
79
+ annotation.autoGenerated) {
80
+ const polylineCanvasPoints = originalPolyline.map(worldToCanvas);
81
+ polylineCanvasPoints.push(polylineCanvasPoints[0]);
82
+ (0, drawingSvg_1.drawPolyline)(svgDrawingHelper, annotationUID, 'interpolationContour-0', polylineCanvasPoints, {
83
+ color: '#70ffff',
84
+ lineWidth: 1,
85
+ fillOpacity: 0,
86
+ });
87
+ }
88
+ return rendered;
89
+ }
8
90
  isContourSegmentationTool() {
9
91
  return true;
10
92
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LivewireContourSegmentationTool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/LivewireContourSegmentationTool.ts"],"names":[],"mappings":";;;;;AAAA,gFAAwD;AAExD,MAAM,+BAAgC,SAAQ,6BAAmB;IAGrD,yBAAyB;QAEjC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,+BAA+B,CAAC,QAAQ,GAAG,iCAAiC,CAAC;AAC7E,kBAAe,+BAA+B,CAAC"}
1
+ {"version":3,"file":"LivewireContourSegmentationTool.js","sourceRoot":"","sources":["../../../../src/tools/annotation/LivewireContourSegmentationTool.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import type { Types } from '@cornerstonejs/core';
2
2
  import { ChangeTypes } from '../../enums';
3
- import type { Annotation, EventTypes, ToolHandle, PublicToolProps, ToolProps, SVGDrawingHelper } from '../../types';
3
+ import type { EventTypes, ToolHandle, PublicToolProps, ToolProps, SVGDrawingHelper } from '../../types';
4
4
  import { LivewireContourAnnotation } from '../../types/ToolSpecificAnnotationTypes';
5
+ import { LivewireScissors } from '../../utilities/livewire/LivewireScissors';
5
6
  import { LivewirePath } from '../../utilities/livewire/LiveWirePath';
6
7
  import ContourSegmentationBaseTool from '../base/ContourSegmentationBaseTool';
7
8
  declare class LivewireContourTool extends ContourSegmentationBaseTool {
8
9
  static toolName: string;
9
- private scissors;
10
- private scissorsRight;
10
+ protected scissors: LivewireScissors;
11
+ protected scissorsRight: LivewireScissors;
11
12
  touchDragCallback: any;
12
13
  mouseDragCallback: any;
13
14
  editData: {
@@ -24,19 +25,19 @@ declare class LivewireContourTool extends ContourSegmentationBaseTool {
24
25
  worldToSlice?: (point: Types.Point3) => Types.Point2;
25
26
  sliceToWorld?: (point: Types.Point2) => Types.Point3;
26
27
  originalPath?: Types.Point3[];
28
+ contourHoleProcessingEnabled?: boolean;
27
29
  } | null;
28
30
  isDrawing: boolean;
29
31
  isHandleOutsideImage: boolean;
30
32
  constructor(toolProps?: PublicToolProps, defaultToolProps?: ToolProps);
31
- protected setupBaseEditData(worldPos: any, element: any, annotation: any, rightPos?: any): void;
33
+ protected setupBaseEditData(worldPos: any, element: any, annotation: any, rightPos?: any, contourHoleProcessingEnabled?: any): void;
32
34
  addNewAnnotation(evt: EventTypes.InteractionEventType): LivewireContourAnnotation;
33
35
  isPointNearTool: (element: HTMLDivElement, annotation: LivewireContourAnnotation, canvasCoords: Types.Point2, proximity: number) => boolean;
34
36
  toolSelectedCallback: (evt: EventTypes.InteractionEventType, annotation: LivewireContourAnnotation) => void;
35
37
  handleSelectedCallback: (evt: EventTypes.InteractionEventType, annotation: LivewireContourAnnotation, handle: ToolHandle) => void;
36
- _endCallback: (evt: EventTypes.InteractionEventType) => void;
37
- triggerAnnotationCompleted: (annotation: LivewireContourAnnotation) => void;
38
- triggerAnnotationModified: (annotation: LivewireContourAnnotation, enabledElement: Types.IEnabledElement, changeType?: ChangeTypes) => void;
39
- triggerChangeEvent: (annotation: LivewireContourAnnotation, enabledElement: Types.IEnabledElement, changeType?: ChangeTypes) => void;
38
+ _endCallback: (evt: EventTypes.InteractionEventType, clearAnnotation?: boolean) => void;
39
+ protected clearEditData(): void;
40
+ triggerChangeEvent: (annotation: LivewireContourAnnotation, enabledElement: Types.IEnabledElement, changeType?: ChangeTypes, contourHoleProcessingEnabled?: boolean) => void;
40
41
  private _mouseDownCallback;
41
42
  private _mouseMoveCallback;
42
43
  editHandle(worldPos: Types.Point3, element: any, annotation: any, handleIndex: number): void;
@@ -48,14 +49,15 @@ declare class LivewireContourTool extends ContourSegmentationBaseTool {
48
49
  private _deactivateDraw;
49
50
  renderAnnotation(enabledElement: Types.IEnabledElement, svgDrawingHelper: SVGDrawingHelper): boolean;
50
51
  protected isContourSegmentationTool(): boolean;
51
- protected createAnnotation(evt: EventTypes.InteractionEventType): Annotation;
52
+ protected createAnnotation(evt: EventTypes.InteractionEventType): import("../../types").ContourAnnotation;
53
+ undo(element: any, config: any, evt: any): void;
52
54
  protected renderAnnotationInstance(renderContext: {
53
55
  enabledElement: Types.IEnabledElement;
54
56
  targetId: string;
55
- annotation: Annotation;
57
+ annotation: LivewireContourAnnotation;
56
58
  annotationStyle: Record<string, any>;
57
59
  svgDrawingHelper: SVGDrawingHelper;
58
60
  }): boolean;
59
- private _updateAnnotation;
61
+ protected updateAnnotation(livewirePath: LivewirePath): void;
60
62
  }
61
63
  export default LivewireContourTool;