@cornerstonejs/tools 1.42.0 → 1.43.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 (333) hide show
  1. package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.js +18 -5
  2. package/dist/cjs/eventListeners/segmentation/imageChangeEventListener.js.map +1 -1
  3. package/dist/cjs/index.d.ts +2 -2
  4. package/dist/cjs/index.js +2 -1
  5. package/dist/cjs/index.js.map +1 -1
  6. package/dist/cjs/stateManagement/segmentation/activeSegmentation.d.ts +2 -1
  7. package/dist/cjs/stateManagement/segmentation/activeSegmentation.js +10 -1
  8. package/dist/cjs/stateManagement/segmentation/activeSegmentation.js.map +1 -1
  9. package/dist/cjs/stateManagement/segmentation/convertStackToVolumeSegmentation.d.ts +10 -0
  10. package/dist/cjs/stateManagement/segmentation/convertStackToVolumeSegmentation.js +65 -0
  11. package/dist/cjs/stateManagement/segmentation/convertStackToVolumeSegmentation.js.map +1 -0
  12. package/dist/cjs/stateManagement/segmentation/convertVolumeToStackSegmentation.d.ts +8 -0
  13. package/dist/cjs/stateManagement/segmentation/convertVolumeToStackSegmentation.js +92 -0
  14. package/dist/cjs/stateManagement/segmentation/convertVolumeToStackSegmentation.js.map +1 -0
  15. package/dist/cjs/stateManagement/segmentation/index.d.ts +3 -1
  16. package/dist/cjs/stateManagement/segmentation/index.js +5 -1
  17. package/dist/cjs/stateManagement/segmentation/index.js.map +1 -1
  18. package/dist/cjs/stateManagement/segmentation/segmentIndex.js +5 -0
  19. package/dist/cjs/stateManagement/segmentation/segmentIndex.js.map +1 -1
  20. package/dist/cjs/stateManagement/segmentation/segmentationState.d.ts +2 -1
  21. package/dist/cjs/stateManagement/segmentation/segmentationState.js +8 -1
  22. package/dist/cjs/stateManagement/segmentation/segmentationState.js.map +1 -1
  23. package/dist/cjs/store/ToolGroupManager/ToolGroup.js +3 -0
  24. package/dist/cjs/store/ToolGroupManager/ToolGroup.js.map +1 -1
  25. package/dist/cjs/tools/annotation/AngleTool.js +2 -2
  26. package/dist/cjs/tools/annotation/AngleTool.js.map +1 -1
  27. package/dist/cjs/tools/annotation/BidirectionalTool.js +2 -2
  28. package/dist/cjs/tools/annotation/BidirectionalTool.js.map +1 -1
  29. package/dist/cjs/tools/annotation/CircleROITool.js +8 -8
  30. package/dist/cjs/tools/annotation/CircleROITool.js.map +1 -1
  31. package/dist/cjs/tools/annotation/EllipticalROITool.js +7 -7
  32. package/dist/cjs/tools/annotation/EllipticalROITool.js.map +1 -1
  33. package/dist/cjs/tools/annotation/LengthTool.js +2 -2
  34. package/dist/cjs/tools/annotation/LengthTool.js.map +1 -1
  35. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js +5 -5
  36. package/dist/cjs/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  37. package/dist/cjs/tools/annotation/ProbeTool.js +3 -3
  38. package/dist/cjs/tools/annotation/ProbeTool.js.map +1 -1
  39. package/dist/cjs/tools/annotation/RectangleROITool.js +7 -7
  40. package/dist/cjs/tools/annotation/RectangleROITool.js.map +1 -1
  41. package/dist/cjs/tools/displayTools/Labelmap/labelmapConfig.js +2 -0
  42. package/dist/cjs/tools/displayTools/Labelmap/labelmapConfig.js.map +1 -1
  43. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js +20 -4
  44. package/dist/cjs/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
  45. package/dist/cjs/tools/index.d.ts +2 -1
  46. package/dist/cjs/tools/index.js +3 -1
  47. package/dist/cjs/tools/index.js.map +1 -1
  48. package/dist/cjs/tools/segmentation/BrushTool.d.ts +1 -0
  49. package/dist/cjs/tools/segmentation/BrushTool.js +40 -19
  50. package/dist/cjs/tools/segmentation/BrushTool.js.map +1 -1
  51. package/dist/cjs/tools/segmentation/CircleScissorsTool.js +5 -0
  52. package/dist/cjs/tools/segmentation/CircleScissorsTool.js.map +1 -1
  53. package/dist/cjs/tools/segmentation/RectangleScissorsTool.js +5 -0
  54. package/dist/cjs/tools/segmentation/RectangleScissorsTool.js.map +1 -1
  55. package/dist/cjs/tools/segmentation/SegmentSelectTool.d.ts +15 -0
  56. package/dist/cjs/tools/segmentation/SegmentSelectTool.js +105 -0
  57. package/dist/cjs/tools/segmentation/SegmentSelectTool.js.map +1 -0
  58. package/dist/cjs/tools/segmentation/SphereScissorsTool.js +5 -0
  59. package/dist/cjs/tools/segmentation/SphereScissorsTool.js.map +1 -1
  60. package/dist/cjs/tools/segmentation/strategies/BrushStrategy.d.ts +2 -1
  61. package/dist/cjs/tools/segmentation/strategies/BrushStrategy.js.map +1 -1
  62. package/dist/cjs/tools/segmentation/strategies/fillCircle.js +12 -15
  63. package/dist/cjs/tools/segmentation/strategies/fillCircle.js.map +1 -1
  64. package/dist/cjs/tools/segmentation/strategies/fillRectangle.js +30 -3
  65. package/dist/cjs/tools/segmentation/strategies/fillRectangle.js.map +1 -1
  66. package/dist/cjs/tools/segmentation/strategies/fillSphere.js +3 -20
  67. package/dist/cjs/tools/segmentation/strategies/fillSphere.js.map +1 -1
  68. package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +1 -1
  69. package/dist/cjs/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -1
  70. package/dist/cjs/types/LabelmapTypes.d.ts +1 -0
  71. package/dist/cjs/utilities/boundingBox/getBoundingBoxAroundShape.d.ts +4 -2
  72. package/dist/cjs/utilities/boundingBox/getBoundingBoxAroundShape.js +45 -23
  73. package/dist/cjs/utilities/boundingBox/getBoundingBoxAroundShape.js.map +1 -1
  74. package/dist/cjs/utilities/boundingBox/index.d.ts +2 -2
  75. package/dist/cjs/utilities/boundingBox/index.js +5 -3
  76. package/dist/cjs/utilities/boundingBox/index.js.map +1 -1
  77. package/dist/cjs/utilities/getSphereBoundsInfo.d.ts +11 -0
  78. package/dist/cjs/utilities/getSphereBoundsInfo.js +45 -0
  79. package/dist/cjs/utilities/getSphereBoundsInfo.js.map +1 -0
  80. package/dist/cjs/utilities/index.d.ts +4 -3
  81. package/dist/cjs/utilities/index.js +8 -7
  82. package/dist/cjs/utilities/index.js.map +1 -1
  83. package/dist/cjs/utilities/pointInShapeCallback.d.ts +1 -1
  84. package/dist/cjs/utilities/pointInShapeCallback.js +1 -1
  85. package/dist/cjs/utilities/pointInShapeCallback.js.map +1 -1
  86. package/dist/cjs/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.js +2 -2
  87. package/dist/cjs/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.js.map +1 -1
  88. package/dist/cjs/utilities/rectangleROITool/index.d.ts +2 -1
  89. package/dist/cjs/utilities/rectangleROITool/index.js +3 -1
  90. package/dist/cjs/utilities/rectangleROITool/index.js.map +1 -1
  91. package/dist/cjs/utilities/rectangleROITool/isAxisAlignedRectangle.d.ts +2 -0
  92. package/dist/cjs/utilities/rectangleROITool/isAxisAlignedRectangle.js +26 -0
  93. package/dist/cjs/utilities/rectangleROITool/isAxisAlignedRectangle.js.map +1 -0
  94. package/dist/cjs/utilities/segmentation/createImageIdReferenceMap.d.ts +2 -0
  95. package/dist/cjs/utilities/segmentation/createImageIdReferenceMap.js +11 -0
  96. package/dist/cjs/utilities/segmentation/createImageIdReferenceMap.js.map +1 -0
  97. package/dist/cjs/utilities/segmentation/createLabelmapVolumeForViewport.js +1 -1
  98. package/dist/cjs/utilities/segmentation/createLabelmapVolumeForViewport.js.map +1 -1
  99. package/dist/cjs/utilities/segmentation/index.d.ts +3 -1
  100. package/dist/cjs/utilities/segmentation/index.js +5 -1
  101. package/dist/cjs/utilities/segmentation/index.js.map +1 -1
  102. package/dist/cjs/utilities/segmentation/invalidateBrushCursor.d.ts +1 -0
  103. package/dist/cjs/utilities/segmentation/invalidateBrushCursor.js +31 -0
  104. package/dist/cjs/utilities/segmentation/invalidateBrushCursor.js.map +1 -0
  105. package/dist/cjs/utilities/segmentation/thresholdSegmentationByRange.js.map +1 -1
  106. package/dist/cjs/utilities/segmentation/triggerSegmentationRender.js +8 -4
  107. package/dist/cjs/utilities/segmentation/triggerSegmentationRender.js.map +1 -1
  108. package/dist/cjs/utilities/segmentation/utilities.d.ts +1 -1
  109. package/dist/cjs/utilities/segmentation/utilities.js +2 -2
  110. package/dist/cjs/utilities/segmentation/utilities.js.map +1 -1
  111. package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js +2 -5
  112. package/dist/cjs/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -1
  113. package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js +2 -1
  114. package/dist/cjs/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -1
  115. package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js +18 -5
  116. package/dist/esm/eventListeners/segmentation/imageChangeEventListener.js.map +1 -1
  117. package/dist/esm/index.js +2 -2
  118. package/dist/esm/index.js.map +1 -1
  119. package/dist/esm/stateManagement/segmentation/activeSegmentation.js +10 -2
  120. package/dist/esm/stateManagement/segmentation/activeSegmentation.js.map +1 -1
  121. package/dist/esm/stateManagement/segmentation/convertStackToVolumeSegmentation.js +47 -0
  122. package/dist/esm/stateManagement/segmentation/convertStackToVolumeSegmentation.js.map +1 -0
  123. package/dist/esm/stateManagement/segmentation/convertVolumeToStackSegmentation.js +72 -0
  124. package/dist/esm/stateManagement/segmentation/convertVolumeToStackSegmentation.js.map +1 -0
  125. package/dist/esm/stateManagement/segmentation/index.js +3 -1
  126. package/dist/esm/stateManagement/segmentation/index.js.map +1 -1
  127. package/dist/esm/stateManagement/segmentation/segmentIndex.js +6 -1
  128. package/dist/esm/stateManagement/segmentation/segmentIndex.js.map +1 -1
  129. package/dist/esm/stateManagement/segmentation/segmentationState.js +7 -1
  130. package/dist/esm/stateManagement/segmentation/segmentationState.js.map +1 -1
  131. package/dist/esm/store/ToolGroupManager/ToolGroup.js +3 -0
  132. package/dist/esm/store/ToolGroupManager/ToolGroup.js.map +1 -1
  133. package/dist/esm/tools/annotation/AngleTool.js +1 -1
  134. package/dist/esm/tools/annotation/AngleTool.js.map +1 -1
  135. package/dist/esm/tools/annotation/BidirectionalTool.js +1 -1
  136. package/dist/esm/tools/annotation/BidirectionalTool.js.map +1 -1
  137. package/dist/esm/tools/annotation/CircleROITool.js +1 -1
  138. package/dist/esm/tools/annotation/CircleROITool.js.map +1 -1
  139. package/dist/esm/tools/annotation/EllipticalROITool.js +1 -1
  140. package/dist/esm/tools/annotation/EllipticalROITool.js.map +1 -1
  141. package/dist/esm/tools/annotation/LengthTool.js +1 -1
  142. package/dist/esm/tools/annotation/LengthTool.js.map +1 -1
  143. package/dist/esm/tools/annotation/PlanarFreehandROITool.js +1 -1
  144. package/dist/esm/tools/annotation/PlanarFreehandROITool.js.map +1 -1
  145. package/dist/esm/tools/annotation/ProbeTool.js +1 -1
  146. package/dist/esm/tools/annotation/ProbeTool.js.map +1 -1
  147. package/dist/esm/tools/annotation/RectangleROITool.js +1 -1
  148. package/dist/esm/tools/annotation/RectangleROITool.js.map +1 -1
  149. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.js +2 -0
  150. package/dist/esm/tools/displayTools/Labelmap/labelmapConfig.js.map +1 -1
  151. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js +21 -5
  152. package/dist/esm/tools/displayTools/Labelmap/labelmapDisplay.js.map +1 -1
  153. package/dist/esm/tools/index.js +2 -1
  154. package/dist/esm/tools/index.js.map +1 -1
  155. package/dist/esm/tools/segmentation/BrushTool.js +39 -19
  156. package/dist/esm/tools/segmentation/BrushTool.js.map +1 -1
  157. package/dist/esm/tools/segmentation/CircleScissorsTool.js +5 -0
  158. package/dist/esm/tools/segmentation/CircleScissorsTool.js.map +1 -1
  159. package/dist/esm/tools/segmentation/RectangleScissorsTool.js +5 -0
  160. package/dist/esm/tools/segmentation/RectangleScissorsTool.js.map +1 -1
  161. package/dist/esm/tools/segmentation/SegmentSelectTool.js +100 -0
  162. package/dist/esm/tools/segmentation/SegmentSelectTool.js.map +1 -0
  163. package/dist/esm/tools/segmentation/SphereScissorsTool.js +5 -0
  164. package/dist/esm/tools/segmentation/SphereScissorsTool.js.map +1 -1
  165. package/dist/esm/tools/segmentation/strategies/BrushStrategy.js.map +1 -1
  166. package/dist/esm/tools/segmentation/strategies/fillCircle.js +12 -15
  167. package/dist/esm/tools/segmentation/strategies/fillCircle.js.map +1 -1
  168. package/dist/esm/tools/segmentation/strategies/fillRectangle.js +32 -5
  169. package/dist/esm/tools/segmentation/strategies/fillRectangle.js.map +1 -1
  170. package/dist/esm/tools/segmentation/strategies/fillSphere.js +3 -20
  171. package/dist/esm/tools/segmentation/strategies/fillSphere.js.map +1 -1
  172. package/dist/esm/tools/segmentation/strategies/utils/isWithinThreshold.js.map +1 -1
  173. package/dist/esm/utilities/boundingBox/getBoundingBoxAroundShape.js +40 -23
  174. package/dist/esm/utilities/boundingBox/getBoundingBoxAroundShape.js.map +1 -1
  175. package/dist/esm/utilities/boundingBox/index.js +2 -2
  176. package/dist/esm/utilities/boundingBox/index.js.map +1 -1
  177. package/dist/esm/utilities/getSphereBoundsInfo.js +42 -0
  178. package/dist/esm/utilities/getSphereBoundsInfo.js.map +1 -0
  179. package/dist/esm/utilities/index.js +4 -3
  180. package/dist/esm/utilities/index.js.map +1 -1
  181. package/dist/esm/utilities/pointInShapeCallback.js +1 -1
  182. package/dist/esm/utilities/pointInShapeCallback.js.map +1 -1
  183. package/dist/esm/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.js +2 -2
  184. package/dist/esm/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.js.map +1 -1
  185. package/dist/esm/utilities/rectangleROITool/index.js +2 -1
  186. package/dist/esm/utilities/rectangleROITool/index.js.map +1 -1
  187. package/dist/esm/utilities/rectangleROITool/isAxisAlignedRectangle.js +23 -0
  188. package/dist/esm/utilities/rectangleROITool/isAxisAlignedRectangle.js.map +1 -0
  189. package/dist/esm/utilities/segmentation/createImageIdReferenceMap.js +8 -0
  190. package/dist/esm/utilities/segmentation/createImageIdReferenceMap.js.map +1 -0
  191. package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js +1 -1
  192. package/dist/esm/utilities/segmentation/createLabelmapVolumeForViewport.js.map +1 -1
  193. package/dist/esm/utilities/segmentation/index.js +3 -1
  194. package/dist/esm/utilities/segmentation/index.js.map +1 -1
  195. package/dist/esm/utilities/segmentation/invalidateBrushCursor.js +24 -0
  196. package/dist/esm/utilities/segmentation/invalidateBrushCursor.js.map +1 -0
  197. package/dist/esm/utilities/segmentation/thresholdSegmentationByRange.js.map +1 -1
  198. package/dist/esm/utilities/segmentation/triggerSegmentationRender.js +8 -4
  199. package/dist/esm/utilities/segmentation/triggerSegmentationRender.js.map +1 -1
  200. package/dist/esm/utilities/segmentation/utilities.js +2 -2
  201. package/dist/esm/utilities/segmentation/utilities.js.map +1 -1
  202. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js +1 -1
  203. package/dist/esm/utilities/stackPrefetch/stackContextPrefetch.js.map +1 -1
  204. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js +2 -1
  205. package/dist/esm/utilities/stackPrefetch/stackPrefetchUtils.js.map +1 -1
  206. package/dist/types/eventListeners/segmentation/imageChangeEventListener.d.ts.map +1 -1
  207. package/dist/types/index.d.ts +2 -2
  208. package/dist/types/index.d.ts.map +1 -1
  209. package/dist/types/stateManagement/segmentation/activeSegmentation.d.ts +2 -1
  210. package/dist/types/stateManagement/segmentation/activeSegmentation.d.ts.map +1 -1
  211. package/dist/types/stateManagement/segmentation/convertStackToVolumeSegmentation.d.ts +11 -0
  212. package/dist/types/stateManagement/segmentation/convertStackToVolumeSegmentation.d.ts.map +1 -0
  213. package/dist/types/stateManagement/segmentation/convertVolumeToStackSegmentation.d.ts +9 -0
  214. package/dist/types/stateManagement/segmentation/convertVolumeToStackSegmentation.d.ts.map +1 -0
  215. package/dist/types/stateManagement/segmentation/index.d.ts +3 -1
  216. package/dist/types/stateManagement/segmentation/index.d.ts.map +1 -1
  217. package/dist/types/stateManagement/segmentation/segmentIndex.d.ts.map +1 -1
  218. package/dist/types/stateManagement/segmentation/segmentationState.d.ts +2 -1
  219. package/dist/types/stateManagement/segmentation/segmentationState.d.ts.map +1 -1
  220. package/dist/types/store/ToolGroupManager/ToolGroup.d.ts.map +1 -1
  221. package/dist/types/tools/annotation/AngleTool.d.ts.map +1 -1
  222. package/dist/types/tools/annotation/PlanarFreehandROITool.d.ts.map +1 -1
  223. package/dist/types/tools/displayTools/Labelmap/labelmapConfig.d.ts.map +1 -1
  224. package/dist/types/tools/displayTools/Labelmap/labelmapDisplay.d.ts.map +1 -1
  225. package/dist/types/tools/index.d.ts +2 -1
  226. package/dist/types/tools/index.d.ts.map +1 -1
  227. package/dist/types/tools/segmentation/BrushTool.d.ts +1 -0
  228. package/dist/types/tools/segmentation/BrushTool.d.ts.map +1 -1
  229. package/dist/types/tools/segmentation/CircleScissorsTool.d.ts.map +1 -1
  230. package/dist/types/tools/segmentation/RectangleScissorsTool.d.ts.map +1 -1
  231. package/dist/types/tools/segmentation/SegmentSelectTool.d.ts +16 -0
  232. package/dist/types/tools/segmentation/SegmentSelectTool.d.ts.map +1 -0
  233. package/dist/types/tools/segmentation/SphereScissorsTool.d.ts.map +1 -1
  234. package/dist/types/tools/segmentation/strategies/BrushStrategy.d.ts +2 -1
  235. package/dist/types/tools/segmentation/strategies/BrushStrategy.d.ts.map +1 -1
  236. package/dist/types/tools/segmentation/strategies/fillCircle.d.ts.map +1 -1
  237. package/dist/types/tools/segmentation/strategies/fillRectangle.d.ts.map +1 -1
  238. package/dist/types/tools/segmentation/strategies/fillSphere.d.ts.map +1 -1
  239. package/dist/types/tools/segmentation/strategies/utils/isWithinThreshold.d.ts +1 -1
  240. package/dist/types/tools/segmentation/strategies/utils/isWithinThreshold.d.ts.map +1 -1
  241. package/dist/types/types/LabelmapTypes.d.ts +1 -0
  242. package/dist/types/types/LabelmapTypes.d.ts.map +1 -1
  243. package/dist/types/utilities/boundingBox/getBoundingBoxAroundShape.d.ts +4 -2
  244. package/dist/types/utilities/boundingBox/getBoundingBoxAroundShape.d.ts.map +1 -1
  245. package/dist/types/utilities/boundingBox/index.d.ts +2 -2
  246. package/dist/types/utilities/boundingBox/index.d.ts.map +1 -1
  247. package/dist/types/utilities/getSphereBoundsInfo.d.ts +12 -0
  248. package/dist/types/utilities/getSphereBoundsInfo.d.ts.map +1 -0
  249. package/dist/types/utilities/index.d.ts +4 -3
  250. package/dist/types/utilities/index.d.ts.map +1 -1
  251. package/dist/types/utilities/pointInShapeCallback.d.ts +1 -1
  252. package/dist/types/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.d.ts.map +1 -1
  253. package/dist/types/utilities/rectangleROITool/index.d.ts +2 -1
  254. package/dist/types/utilities/rectangleROITool/index.d.ts.map +1 -1
  255. package/dist/types/utilities/rectangleROITool/isAxisAlignedRectangle.d.ts +3 -0
  256. package/dist/types/utilities/rectangleROITool/isAxisAlignedRectangle.d.ts.map +1 -0
  257. package/dist/types/utilities/segmentation/createImageIdReferenceMap.d.ts +3 -0
  258. package/dist/types/utilities/segmentation/createImageIdReferenceMap.d.ts.map +1 -0
  259. package/dist/types/utilities/segmentation/index.d.ts +3 -1
  260. package/dist/types/utilities/segmentation/index.d.ts.map +1 -1
  261. package/dist/types/utilities/segmentation/invalidateBrushCursor.d.ts +2 -0
  262. package/dist/types/utilities/segmentation/invalidateBrushCursor.d.ts.map +1 -0
  263. package/dist/types/utilities/segmentation/triggerSegmentationRender.d.ts.map +1 -1
  264. package/dist/types/utilities/segmentation/utilities.d.ts +1 -1
  265. package/dist/types/utilities/segmentation/utilities.d.ts.map +1 -1
  266. package/dist/types/utilities/stackPrefetch/stackPrefetchUtils.d.ts.map +1 -1
  267. package/dist/umd/index.js +1 -1
  268. package/dist/umd/index.js.map +1 -1
  269. package/package.json +4 -4
  270. package/src/eventListeners/segmentation/imageChangeEventListener.ts +42 -6
  271. package/src/index.ts +2 -0
  272. package/src/stateManagement/segmentation/activeSegmentation.ts +24 -1
  273. package/src/stateManagement/segmentation/convertStackToVolumeSegmentation.ts +98 -0
  274. package/src/stateManagement/segmentation/convertVolumeToStackSegmentation.ts +153 -0
  275. package/src/stateManagement/segmentation/index.ts +4 -0
  276. package/src/stateManagement/segmentation/segmentIndex.ts +15 -2
  277. package/src/stateManagement/segmentation/segmentationState.ts +17 -0
  278. package/src/store/ToolGroupManager/ToolGroup.ts +4 -0
  279. package/src/tools/annotation/AngleTool.ts +1 -2
  280. package/src/tools/annotation/BidirectionalTool.ts +1 -1
  281. package/src/tools/annotation/CircleROITool.ts +1 -1
  282. package/src/tools/annotation/EllipticalROITool.ts +1 -1
  283. package/src/tools/annotation/LengthTool.ts +1 -1
  284. package/src/tools/annotation/PlanarFreehandROITool.ts +1 -2
  285. package/src/tools/annotation/ProbeTool.ts +1 -1
  286. package/src/tools/annotation/RectangleROITool.ts +1 -1
  287. package/src/tools/displayTools/Labelmap/labelmapConfig.ts +2 -0
  288. package/src/tools/displayTools/Labelmap/labelmapDisplay.ts +39 -14
  289. package/src/tools/index.ts +2 -0
  290. package/src/tools/segmentation/BrushTool.ts +64 -33
  291. package/src/tools/segmentation/CircleScissorsTool.ts +9 -0
  292. package/src/tools/segmentation/RectangleScissorsTool.ts +10 -1
  293. package/src/tools/segmentation/SegmentSelectTool.ts +182 -0
  294. package/src/tools/segmentation/SphereScissorsTool.ts +9 -0
  295. package/src/tools/segmentation/strategies/BrushStrategy.ts +2 -1
  296. package/src/tools/segmentation/strategies/fillCircle.ts +19 -21
  297. package/src/tools/segmentation/strategies/fillRectangle.ts +51 -6
  298. package/src/tools/segmentation/strategies/fillSphere.ts +10 -38
  299. package/src/tools/segmentation/strategies/utils/isWithinThreshold.ts +1 -1
  300. package/src/types/LabelmapTypes.ts +7 -7
  301. package/src/utilities/boundingBox/getBoundingBoxAroundShape.ts +88 -37
  302. package/src/utilities/boundingBox/index.ts +11 -2
  303. package/src/utilities/{pointInSurroundingSphereCallback.ts → getSphereBoundsInfo.ts} +39 -82
  304. package/src/utilities/index.ts +6 -3
  305. package/src/utilities/math/ellipse/pointInEllipse.ts +1 -1
  306. package/src/utilities/pointInShapeCallback.ts +2 -2
  307. package/src/utilities/rectangleROITool/getBoundsIJKFromRectangleAnnotations.ts +5 -2
  308. package/src/utilities/rectangleROITool/index.ts +2 -1
  309. package/src/utilities/rectangleROITool/isAxisAlignedRectangle.ts +53 -0
  310. package/src/utilities/segmentation/createImageIdReferenceMap.ts +23 -0
  311. package/src/utilities/segmentation/createLabelmapVolumeForViewport.ts +1 -1
  312. package/src/utilities/segmentation/index.ts +4 -0
  313. package/src/utilities/segmentation/invalidateBrushCursor.ts +48 -0
  314. package/src/utilities/segmentation/thresholdSegmentationByRange.ts +2 -2
  315. package/src/utilities/segmentation/triggerSegmentationRender.ts +15 -10
  316. package/src/utilities/segmentation/utilities.ts +5 -2
  317. package/src/utilities/stackPrefetch/stackContextPrefetch.ts +1 -1
  318. package/src/utilities/stackPrefetch/stackPrefetchUtils.ts +5 -1
  319. package/dist/cjs/utilities/pointInSurroundingSphereCallback.d.ts +0 -4
  320. package/dist/cjs/utilities/pointInSurroundingSphereCallback.js +0 -70
  321. package/dist/cjs/utilities/pointInSurroundingSphereCallback.js.map +0 -1
  322. package/dist/cjs/utilities/roundNumber.d.ts +0 -2
  323. package/dist/cjs/utilities/roundNumber.js +0 -30
  324. package/dist/cjs/utilities/roundNumber.js.map +0 -1
  325. package/dist/esm/utilities/pointInSurroundingSphereCallback.js +0 -64
  326. package/dist/esm/utilities/pointInSurroundingSphereCallback.js.map +0 -1
  327. package/dist/esm/utilities/roundNumber.js +0 -28
  328. package/dist/esm/utilities/roundNumber.js.map +0 -1
  329. package/dist/types/utilities/pointInSurroundingSphereCallback.d.ts +0 -5
  330. package/dist/types/utilities/pointInSurroundingSphereCallback.d.ts.map +0 -1
  331. package/dist/types/utilities/roundNumber.d.ts +0 -3
  332. package/dist/types/utilities/roundNumber.d.ts.map +0 -1
  333. package/src/utilities/roundNumber.ts +0 -44
@@ -1 +1 @@
1
- {"version":3,"file":"BrushTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/BrushTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrushTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/BrushTool.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,9 @@ class CircleScissorsTool extends BaseTool {
23
23
  }) {
24
24
  super(toolProps, defaultToolProps);
25
25
  this.preMouseDownCallback = (evt) => {
26
+ if (this.isDrawing === true) {
27
+ return;
28
+ }
26
29
  const eventDetail = evt.detail;
27
30
  const { currentPoints, element } = eventDetail;
28
31
  const worldPos = currentPoints.world;
@@ -168,6 +171,7 @@ class CircleScissorsTool extends BaseTool {
168
171
  element.addEventListener(Events.MOUSE_UP, this._endCallback);
169
172
  element.addEventListener(Events.MOUSE_DRAG, this._dragCallback);
170
173
  element.addEventListener(Events.MOUSE_CLICK, this._endCallback);
174
+ element.addEventListener(Events.MOUSE_MOVE, this._dragCallback);
171
175
  element.addEventListener(Events.TOUCH_TAP, this._endCallback);
172
176
  element.addEventListener(Events.TOUCH_DRAG, this._dragCallback);
173
177
  element.addEventListener(Events.TOUCH_END, this._endCallback);
@@ -176,6 +180,7 @@ class CircleScissorsTool extends BaseTool {
176
180
  element.removeEventListener(Events.MOUSE_UP, this._endCallback);
177
181
  element.removeEventListener(Events.MOUSE_DRAG, this._dragCallback);
178
182
  element.removeEventListener(Events.MOUSE_CLICK, this._endCallback);
183
+ element.removeEventListener(Events.MOUSE_MOVE, this._dragCallback);
179
184
  element.removeEventListener(Events.TOUCH_END, this._endCallback);
180
185
  element.removeEventListener(Events.TOUCH_DRAG, this._dragCallback);
181
186
  element.removeEventListener(Events.TOUCH_TAP, this._endCallback);
@@ -1 +1 @@
1
- {"version":3,"file":"CircleScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/CircleScissorsTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CircleScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/CircleScissorsTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAQnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,qCAAqC,MAAM,uDAAuD,CAAC;AAC1G,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,YAAY,IAAI,sBAAsB,EACtC,MAAM,IAAI,kBAAkB,GAC7B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AAMvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAS3E,MAAM,kBAAmB,SAAQ,QAAQ;IAuBvC,YACE,YAA6B,EAAE,EAC/B,mBAA8B;QAC5B,yBAAyB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC7C,aAAa,EAAE;YACb,UAAU,EAAE;gBACV,WAAW,EAAE,gBAAgB;gBAC7B,YAAY,EAAE,iBAAiB;aAChC;YACD,eAAe,EAAE,aAAa;YAC9B,cAAc,EAAE,aAAa;SAC9B;KACF;QAED,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAWrC,yBAAoB,GAAG,CAAC,GAAoC,EAAW,EAAE;YAIvE,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;gBAC3B,OAAO;aACR;YAED,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC;YACrC,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC;YAEvC,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;YAErD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YAErC,MAAM,gCAAgC,GACpC,kBAAkB,CAAC,mCAAmC,CAAC,WAAW,CAAC,CAAC;YACtE,IAAI,CAAC,gCAAgC,EAAE;gBACrC,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;aACH;YAED,MAAM,EAAE,6BAA6B,EAAE,cAAc,EAAE,IAAI,EAAE,GAC3D,gCAAgC,CAAC;YACnC,MAAM,YAAY,GAChB,sBAAsB,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;YAC/D,MAAM,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAExE,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,uBAAuB,CACnE,WAAW,EACX,6BAA6B,EAC7B,YAAY,CACb,CAAC;YAEF,MAAM,EAAE,kBAAkB,EAAE,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;YAG/D,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAE9C,IAAI,CAAC,YAAY,EAAE;gBACjB,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;aACH;YAGD,MAAM,UAAU,GAAG;gBACjB,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,IAAI;gBACjB,QAAQ,EAAE;oBACR,eAAe,EAAgB,CAAC,GAAG,eAAe,CAAC;oBACnD,MAAM,EAAgB,CAAC,GAAG,MAAM,CAAC;oBACjC,mBAAmB,EAAE,QAAQ,CAAC,sBAAsB,EAAE;oBACtD,iBAAiB,EAAE,EAAE;oBACrB,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;oBAC5B,YAAY;iBACb;gBACD,IAAI,EAAE;oBACJ,OAAO,EAAE;wBACP,MAAM,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC;wBACpE,iBAAiB,EAAE,IAAI;qBACxB;oBACD,SAAS,EAAE,IAAI;oBACf,WAAW,EAAE,EAAE;iBAChB;aACF,CAAC;YAEF,MAAM,mBAAmB,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,GAAG;gBACd,UAAU;gBACV,YAAY,EAAE,SAAS;gBACvB,YAAY;gBACZ,cAAc;gBACd,cAAc;gBACd,YAAY;gBACZ,mBAAmB;gBACnB,WAAW,EAAE,CAAC;gBACd,aAAa,EAAE,KAAK;gBACpB,aAAa,EAAE,IAAI;gBACnB,QAAQ,EAAE,KAAK;gBACf,6BAA6B;aACvB,CAAC;YAET,IAAI,oBAAoB,CAAC,YAAwC,CAAC,EAAE;gBAClE,MAAM,EAAE,QAAQ,EAAE,GAAG,YAA8C,CAAC;gBACpE,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAE/C,IAAI,CAAC,QAAQ,GAAG;oBACd,GAAG,IAAI,CAAC,QAAQ;oBAChB,QAAQ;oBACR,kBAAkB,EAAE,YAAY,CAAC,kBAAkB;iBACpD,CAAC;aACH;iBAAM;gBACL,MAAM,EAAE,mBAAmB,EAAE,GAC3B,YAA6C,CAAC;gBAEhD,IAAI,CAAC,QAAQ,GAAG;oBACd,GAAG,IAAI,CAAC,QAAQ;oBAChB,mBAAmB;iBACpB,CAAC;aACH;YAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5B,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAE3B,GAAG,CAAC,cAAc,EAAE,CAAC;YAErB,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;YAE5E,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,kBAAa,GAAG,CAAC,GAAoC,EAAE,EAAE;YACvD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAChC,MAAM,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;YACtC,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC;YACjD,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;YACrD,MAAM,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;YAGnC,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YACxE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAI5B,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;YAE5C,MAAM,YAAY,GAAiB;gBACjC,YAAY,CAAC,CAAC,CAAC;gBACf,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM;aACzB,CAAC;YACF,MAAM,SAAS,GAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;YAC5E,MAAM,UAAU,GAAiB;gBAC/B,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM;gBACxB,YAAY,CAAC,CAAC,CAAC;aAChB,CAAC;YACF,MAAM,WAAW,GAAiB;gBAChC,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM;gBACxB,YAAY,CAAC,CAAC,CAAC;aAChB,CAAC;YAEF,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG;gBACpB,aAAa,CAAC,YAAY,CAAC;gBAC3B,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,UAAU,CAAC;gBACzB,aAAa,CAAC,WAAW,CAAC;aAC3B,CAAC;YAEF,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;YAE9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;YAE9B,qCAAqC,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;QAC9E,CAAC,CAAC;QAEF,iBAAY,GAAG,CAAC,GAAoC,EAAE,EAAE;YACtD,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC;YAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;YAEhC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC9D,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAC5B,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC;YAExD,IAAI,aAAa,IAAI,CAAC,QAAQ,EAAE;gBAC9B,OAAO;aACR;YAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAEtC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAE9B,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAE5B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAElD,MAAM,aAAa,GAAG;gBACpB,GAAG,IAAI,CAAC,QAAQ;gBAChB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,eAAe;gBACf,MAAM;gBACN,6BAA6B,EAAE,EAAE;aAClC,CAAC;YAEF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YAEvB,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAC1D,CAAC,CAAC;QAKF,kBAAa,GAAG,CAAC,OAAO,EAAE,EAAE;YAC1B,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7D,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAChE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAEhE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9D,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAChE,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,CAAC,CAAC;QAKF,oBAAe,GAAG,CAAC,OAAO,EAAE,EAAE;YAC5B,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACnE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAEnE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACjE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACnE,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACnE,CAAC,CAAC;QAUF,qBAAgB,GAAG,CACjB,cAAqC,EACrC,gBAAkC,EACzB,EAAE;YACX,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAClB,OAAO,YAAY,CAAC;aACrB;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;YACpC,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YAE9C,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;gBAC9C,OAAO,YAAY,CAAC;aACrB;YAED,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;YAGrC,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC;YACzC,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;YAE/C,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;YAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAChC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAEvE,MAAM,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,GAAG,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG;gBACb,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;aACrC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAE1E,MAAM,KAAK,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;YAG9D,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE;gBAClC,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACpD,OAAO,YAAY,CAAC;aACrB;YAED,MAAM,SAAS,GAAG,GAAG,CAAC;YACtB,aAAa,CACX,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,MAAsB,EACtB,MAAM,EACN;gBACE,KAAK;aACN,CACF,CAAC;YAEF,YAAY,GAAG,IAAI,CAAC;YACpB,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC;IApTF,CAAC;CAqTF;AAED,kBAAkB,CAAC,QAAQ,GAAG,eAAe,CAAC;AAC9C,eAAe,kBAAkB,CAAC"}
@@ -24,6 +24,9 @@ class RectangleScissorsTool extends BaseTool {
24
24
  }) {
25
25
  super(toolProps, defaultToolProps);
26
26
  this.preMouseDownCallback = (evt) => {
27
+ if (this.isDrawing === true) {
28
+ return;
29
+ }
27
30
  const eventDetail = evt.detail;
28
31
  const { currentPoints, element } = eventDetail;
29
32
  const worldPos = currentPoints.world;
@@ -177,6 +180,7 @@ class RectangleScissorsTool extends BaseTool {
177
180
  this._activateDraw = (element) => {
178
181
  element.addEventListener(Events.MOUSE_UP, this._endCallback);
179
182
  element.addEventListener(Events.MOUSE_DRAG, this._dragCallback);
183
+ element.addEventListener(Events.MOUSE_MOVE, this._dragCallback);
180
184
  element.addEventListener(Events.MOUSE_CLICK, this._endCallback);
181
185
  element.addEventListener(Events.TOUCH_END, this._endCallback);
182
186
  element.addEventListener(Events.TOUCH_DRAG, this._dragCallback);
@@ -185,6 +189,7 @@ class RectangleScissorsTool extends BaseTool {
185
189
  this._deactivateDraw = (element) => {
186
190
  element.removeEventListener(Events.MOUSE_UP, this._endCallback);
187
191
  element.removeEventListener(Events.MOUSE_DRAG, this._dragCallback);
192
+ element.removeEventListener(Events.MOUSE_MOVE, this._dragCallback);
188
193
  element.removeEventListener(Events.MOUSE_CLICK, this._endCallback);
189
194
  element.removeEventListener(Events.TOUCH_TAP, this._endCallback);
190
195
  element.removeEventListener(Events.TOUCH_END, this._endCallback);
@@ -1 +1 @@
1
- {"version":3,"file":"RectangleScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/RectangleScissorsTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RectangleScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/RectangleScissorsTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import { cache, getEnabledElement, utilities as csUtils, } from '@cornerstonejs/core';
2
+ import { BaseTool } from '../base';
3
+ import { triggerSegmentationModified } from '../../stateManagement/segmentation/triggerSegmentationEvents';
4
+ import triggerAnnotationRenderForViewportIds from '../../utilities/triggerAnnotationRenderForViewportIds';
5
+ import { isVolumeSegmentation } from './strategies/utils/stackVolumeCheck';
6
+ import { getActiveSegmentation, getActiveSegmentationRepresentation, } from '../../stateManagement/segmentation/activeSegmentation';
7
+ import RepresentationTypes from '../../enums/SegmentationRepresentations';
8
+ import { setActiveSegmentIndex } from '../../stateManagement/segmentation/segmentIndex';
9
+ class SegmentSelectTool extends BaseTool {
10
+ constructor(toolProps = {}, defaultToolProps = {
11
+ supportedInteractionTypes: ['Mouse', 'Touch'],
12
+ configuration: {
13
+ hoverTimeout: 750,
14
+ },
15
+ }) {
16
+ super(toolProps, defaultToolProps);
17
+ this.mouseMoveCallback = (evt) => {
18
+ if (this.hoverTimer) {
19
+ clearTimeout(this.hoverTimer);
20
+ }
21
+ this.hoverTimer = setTimeout(() => {
22
+ this._setActiveSegment(evt);
23
+ this.hoverTimer = null;
24
+ }, this.configuration.hoverTimeout);
25
+ return true;
26
+ };
27
+ this.onSetToolEnabled = () => {
28
+ this.onSetToolActive();
29
+ };
30
+ this.onSetToolActive = () => {
31
+ this.hoverTimer = null;
32
+ };
33
+ this.onSetToolDisabled = () => {
34
+ this.hoverTimer = null;
35
+ };
36
+ this.hoverTimer = null;
37
+ }
38
+ _setActiveSegment(evt = {}) {
39
+ const { element, currentPoints } = evt.detail;
40
+ const worldPoint = currentPoints.world;
41
+ const enabledElement = getEnabledElement(element);
42
+ if (!enabledElement) {
43
+ return;
44
+ }
45
+ const { viewport } = enabledElement;
46
+ const activeSegmentation = getActiveSegmentation(this.toolGroupId);
47
+ if (activeSegmentation.type === RepresentationTypes.Labelmap) {
48
+ this._setActiveSegmentLabelmap(activeSegmentation, worldPoint, viewport);
49
+ }
50
+ else {
51
+ throw Error('non-labelmap segmentation not supported yet');
52
+ }
53
+ }
54
+ _setActiveSegmentLabelmap(activeSegmentation, worldPoint, viewport) {
55
+ const imageDataInfo = viewport.getImageData();
56
+ if (!imageDataInfo) {
57
+ return;
58
+ }
59
+ const labelmapData = activeSegmentation.representationData.LABELMAP;
60
+ let hoveredSegmentIndex;
61
+ if (isVolumeSegmentation(activeSegmentation.representationData.LABELMAP)) {
62
+ const { volumeId } = labelmapData;
63
+ const segmentationVolume = cache.getVolume(volumeId);
64
+ if (!segmentationVolume) {
65
+ return;
66
+ }
67
+ hoveredSegmentIndex =
68
+ segmentationVolume.imageData.getScalarValueFromWorld(worldPoint);
69
+ }
70
+ else {
71
+ const { imageIdReferenceMap } = labelmapData;
72
+ const currentImageId = viewport.getCurrentImageId();
73
+ const segmentationImageId = imageIdReferenceMap.get(currentImageId);
74
+ const image = cache.getImage(segmentationImageId);
75
+ if (!image) {
76
+ return;
77
+ }
78
+ const activeSegmentationRepresentation = getActiveSegmentationRepresentation(this.toolGroupId);
79
+ if (!activeSegmentationRepresentation) {
80
+ return;
81
+ }
82
+ const segmentationActor = viewport.getActor(activeSegmentationRepresentation.segmentationRepresentationUID);
83
+ const imageData = segmentationActor?.actor.getMapper().getInputData();
84
+ const indexIJK = csUtils.transformWorldToIndex(imageData, worldPoint);
85
+ const flattenedIndex = indexIJK[0] + indexIJK[1] * image.columns;
86
+ const scalars = imageData.getPointData().getScalars().getData();
87
+ hoveredSegmentIndex = scalars[flattenedIndex];
88
+ }
89
+ if (!hoveredSegmentIndex || hoveredSegmentIndex === 0) {
90
+ return;
91
+ }
92
+ setActiveSegmentIndex(activeSegmentation.segmentationId, hoveredSegmentIndex);
93
+ const renderingEngine = viewport.getRenderingEngine();
94
+ triggerSegmentationModified(activeSegmentation.segmentationId);
95
+ triggerAnnotationRenderForViewportIds(renderingEngine, renderingEngine.getViewports().map((v) => v.id));
96
+ }
97
+ }
98
+ SegmentSelectTool.toolName = 'SegmentSelectTool';
99
+ export default SegmentSelectTool;
100
+ //# sourceMappingURL=SegmentSelectTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentSelectTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/SegmentSelectTool.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,9 @@ class SphereScissorsTool extends BaseTool {
23
23
  }) {
24
24
  super(toolProps, defaultToolProps);
25
25
  this.preMouseDownCallback = (evt) => {
26
+ if (this.isDrawing === true) {
27
+ return;
28
+ }
26
29
  const eventDetail = evt.detail;
27
30
  const { currentPoints, element } = eventDetail;
28
31
  const worldPos = currentPoints.world;
@@ -169,6 +172,7 @@ class SphereScissorsTool extends BaseTool {
169
172
  element.addEventListener(Events.MOUSE_UP, this._endCallback);
170
173
  element.addEventListener(Events.MOUSE_DRAG, this._dragCallback);
171
174
  element.addEventListener(Events.MOUSE_CLICK, this._endCallback);
175
+ element.addEventListener(Events.MOUSE_MOVE, this._dragCallback);
172
176
  element.addEventListener(Events.TOUCH_END, this._endCallback);
173
177
  element.addEventListener(Events.TOUCH_TAP, this._endCallback);
174
178
  element.addEventListener(Events.TOUCH_DRAG, this._dragCallback);
@@ -177,6 +181,7 @@ class SphereScissorsTool extends BaseTool {
177
181
  element.removeEventListener(Events.MOUSE_UP, this._endCallback);
178
182
  element.removeEventListener(Events.MOUSE_DRAG, this._dragCallback);
179
183
  element.removeEventListener(Events.MOUSE_CLICK, this._endCallback);
184
+ element.removeEventListener(Events.MOUSE_MOVE, this._dragCallback);
180
185
  element.removeEventListener(Events.TOUCH_END, this._endCallback);
181
186
  element.removeEventListener(Events.TOUCH_DRAG, this._dragCallback);
182
187
  element.removeEventListener(Events.TOUCH_TAP, this._endCallback);
@@ -1 +1 @@
1
- {"version":3,"file":"SphereScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/SphereScissorsTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SphereScissorsTool.js","sourceRoot":"","sources":["../../../../src/tools/segmentation/SphereScissorsTool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrushStrategy.js","sourceRoot":"","sources":["../../../../../src/tools/segmentation/strategies/BrushStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrushStrategy.js","sourceRoot":"","sources":["../../../../../src/tools/segmentation/strategies/BrushStrategy.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,12 @@
1
1
  import { vec3 } from 'gl-matrix';
2
2
  import { utilities as csUtils } from '@cornerstonejs/core';
3
3
  import { getCanvasEllipseCorners, precalculatePointInEllipse, } from '../../../utilities/math/ellipse';
4
- import pointInSphere from '../../../utilities/math/sphere/pointInSphere';
5
- import { getBoundingBoxAroundShape } from '../../../utilities/boundingBox';
4
+ import { getBoundingBoxAroundShapeIJK } from '../../../utilities/boundingBox';
6
5
  import BrushStrategy from './BrushStrategy';
7
6
  import { StrategyCallbacks } from '../../../enums';
8
7
  import compositions from './compositions';
9
- const { transformWorldToIndex } = csUtils;
10
- const EPSILON = 1e-4;
11
- const nearOrZero = (testValue, nearValue) => Math.abs(testValue) < EPSILON || Math.abs(testValue - nearValue) < EPSILON;
8
+ import { pointInSphere } from '../../../utilities/math/sphere';
9
+ const { transformWorldToIndex, isEqual } = csUtils;
12
10
  const initializeCircle = {
13
11
  [StrategyCallbacks.Initialize]: (operationData) => {
14
12
  const { points, imageVoxelManager: imageVoxelManager, viewport, segmentationImageData, segmentationVoxelManager: segmentationVoxelManager, } = operationData;
@@ -26,11 +24,11 @@ const initializeCircle = {
26
24
  const [topLeftCanvas, bottomRightCanvas] = getCanvasEllipseCorners(canvasCoordinates);
27
25
  const topLeftWorld = viewport.canvasToWorld(topLeftCanvas);
28
26
  const bottomRightWorld = viewport.canvasToWorld(bottomRightCanvas);
29
- const ellipsoidCornersIJK = [
30
- transformWorldToIndex(segmentationImageData, topLeftWorld),
31
- (transformWorldToIndex(segmentationImageData, bottomRightWorld)),
32
- ];
33
- segmentationVoxelManager.boundsIJK = getBoundingBoxAroundShape(ellipsoidCornersIJK, segmentationVoxelManager.dimensions);
27
+ const circleCornersIJK = points.map((world) => {
28
+ return transformWorldToIndex(segmentationImageData, world);
29
+ });
30
+ const boundsIJK = getBoundingBoxAroundShapeIJK(circleCornersIJK, segmentationImageData.getDimensions());
31
+ segmentationVoxelManager.boundsIJK = boundsIJK;
34
32
  imageVoxelManager.isInObject = createPointInEllipse({
35
33
  topLeftWorld,
36
34
  bottomRightWorld,
@@ -44,9 +42,9 @@ function createPointInEllipse(worldInfo) {
44
42
  const yRadius = Math.abs(topLeftWorld[1] - bottomRightWorld[1]) / 2;
45
43
  const zRadius = Math.abs(topLeftWorld[2] - bottomRightWorld[2]) / 2;
46
44
  const radius = Math.max(xRadius, yRadius, zRadius);
47
- if (nearOrZero(xRadius, radius) &&
48
- nearOrZero(yRadius, radius) &&
49
- nearOrZero(zRadius, radius)) {
45
+ if (isEqual(xRadius, radius) &&
46
+ isEqual(yRadius, radius) &&
47
+ isEqual(zRadius, radius)) {
50
48
  const sphereObj = {
51
49
  center,
52
50
  radius,
@@ -60,8 +58,7 @@ function createPointInEllipse(worldInfo) {
60
58
  yRadius,
61
59
  zRadius,
62
60
  };
63
- const inverts = precalculatePointInEllipse(ellipseObj);
64
- const { precalculated } = inverts;
61
+ const { precalculated } = precalculatePointInEllipse(ellipseObj, {});
65
62
  return precalculated;
66
63
  }
67
64
  const CIRCLE_STRATEGY = new BrushStrategy('Circle', compositions.regionFill, compositions.setValue, initializeCircle, compositions.determineSegmentIndex, compositions.preview);
@@ -1 +1 @@
1
- {"version":3,"file":"fillCircle.js","sourceRoot":"","sources":["../../../../../src/tools/segmentation/strategies/fillCircle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fillCircle.js","sourceRoot":"","sources":["../../../../../src/tools/segmentation/strategies/fillCircle.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
- import { utilities as csUtils } from '@cornerstonejs/core';
2
- import { getBoundingBoxAroundShape } from '../../../utilities/boundingBox';
1
+ import { utilities as csUtils, StackViewport } from '@cornerstonejs/core';
2
+ import { getBoundingBoxAroundShapeIJK, getBoundingBoxAroundShapeWorld, } from '../../../utilities/boundingBox';
3
3
  import { pointInShapeCallback } from '../../../utilities';
4
4
  import { triggerSegmentationDataModified } from '../../../stateManagement/segmentation/triggerSegmentationEvents';
5
5
  import { getStrategyData } from './utils/getStrategyData';
6
+ import { isAxisAlignedRectangle } from '../../../utilities/rectangleROITool/isAxisAlignedRectangle';
6
7
  const { transformWorldToIndex } = csUtils;
7
8
  function fillRectangle(enabledElement, operationData, inside = true) {
8
9
  const { points, segmentsLocked, segmentIndex, segmentationId } = operationData;
10
+ const { viewport } = enabledElement;
9
11
  const strategyData = getStrategyData({
10
12
  operationData,
11
13
  viewport: enabledElement.viewport,
@@ -23,15 +25,40 @@ function fillRectangle(enabledElement, operationData, inside = true) {
23
25
  return Math.round(coord);
24
26
  });
25
27
  });
26
- const boundsIJK = getBoundingBoxAroundShape(rectangleCornersIJK, segmentationImageData.getDimensions());
27
- const pointInRectangle = () => true;
28
+ const boundsIJK = getBoundingBoxAroundShapeIJK(rectangleCornersIJK, segmentationImageData.getDimensions());
29
+ const isStackViewport = viewport instanceof StackViewport;
30
+ const isAligned = isStackViewport || isAxisAlignedRectangle(rectangleCornersIJK);
31
+ const direction = segmentationImageData.getDirection();
32
+ const spacing = segmentationImageData.getSpacing();
33
+ const { viewPlaneNormal } = viewport.getCamera();
34
+ const EPS = csUtils.getSpacingInNormalDirection({
35
+ direction,
36
+ spacing,
37
+ }, viewPlaneNormal);
38
+ const pointsBoundsLPS = getBoundingBoxAroundShapeWorld(points);
39
+ let [[xMin, xMax], [yMin, yMax], [zMin, zMax]] = pointsBoundsLPS;
40
+ xMin -= EPS;
41
+ xMax += EPS;
42
+ yMin -= EPS;
43
+ yMax += EPS;
44
+ zMin -= EPS;
45
+ zMax += EPS;
46
+ const pointInShapeFn = isAligned
47
+ ? () => true
48
+ : (pointLPS) => {
49
+ const [x, y, z] = pointLPS;
50
+ const xInside = x >= xMin && x <= xMax;
51
+ const yInside = y >= yMin && y <= yMax;
52
+ const zInside = z >= zMin && z <= zMax;
53
+ return xInside && yInside && zInside;
54
+ };
28
55
  const callback = ({ value, index }) => {
29
56
  if (segmentsLocked.includes(value)) {
30
57
  return;
31
58
  }
32
59
  segmentationScalarData[index] = segmentIndex;
33
60
  };
34
- pointInShapeCallback(segmentationImageData, pointInRectangle, callback, boundsIJK);
61
+ pointInShapeCallback(segmentationImageData, pointInShapeFn, callback, boundsIJK);
35
62
  triggerSegmentationDataModified(segmentationId);
36
63
  }
37
64
  export function fillInsideRectangle(enabledElement, operationData) {
@@ -1 +1 @@
1
- {"version":3,"file":"fillRectangle.js","sourceRoot":"","sources":["../../../../../src/tools/segmentation/strategies/fillRectangle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,iEAAiE,CAAC;AAElH,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;AAc1C,SAAS,aAAa,CACpB,cAAqC,EACrC,aAA4B,EAC5B,MAAM,GAAG,IAAI;IAEb,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,GAC5D,aAAa,CAAC;IAEhB,MAAM,YAAY,GAAG,eAAe,CAAC;QACnC,aAAa;QACb,QAAQ,EAAE,cAAc,CAAC,QAAQ;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAChD,OAAO;KACR;IAED,MAAM,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,GAAG,YAAY,CAAC;IAEvE,IAAI,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7C,OAAO,qBAAqB,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAGH,mBAAmB,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACtD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACzB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,yBAAyB,CACzC,mBAAmB,EACnB,qBAAqB,CAAC,aAAa,EAAE,CACtC,CAAC;IAGF,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;IAEpC,MAAM,QAAQ,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;QACpC,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAClC,OAAO;SACR;QAED,sBAAsB,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC;IAC/C,CAAC,CAAC;IAEF,oBAAoB,CAClB,qBAAqB,EACrB,gBAAgB,EAChB,QAAQ,EACR,SAAS,CACV,CAAC;IAEF,+BAA+B,CAAC,cAAc,CAAC,CAAC;AAClD,CAAC;AAQD,MAAM,UAAU,mBAAmB,CACjC,cAAqC,EACrC,aAA4B;IAE5B,aAAa,CAAC,cAAc,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC;AAQD,MAAM,UAAU,oBAAoB,CAClC,cAAqC,EACrC,aAA4B;IAE5B,aAAa,CAAC,cAAc,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"fillRectangle.js","sourceRoot":"","sources":["../../../../../src/tools/segmentation/strategies/fillRectangle.ts"],"names":[],"mappings":"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"}