@cornerstonejs/core 1.28.3 → 1.30.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 (693) hide show
  1. package/dist/cjs/RenderingEngine/StackViewport.d.ts +24 -3
  2. package/dist/cjs/RenderingEngine/StackViewport.js +108 -90
  3. package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
  4. package/dist/cjs/RenderingEngine/VideoViewport.d.ts +42 -3
  5. package/dist/cjs/RenderingEngine/VideoViewport.js +192 -13
  6. package/dist/cjs/RenderingEngine/VideoViewport.js.map +1 -1
  7. package/dist/cjs/RenderingEngine/Viewport.d.ts +1 -0
  8. package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
  9. package/dist/cjs/RenderingEngine/VolumeViewport.d.ts +1 -0
  10. package/dist/cjs/RenderingEngine/VolumeViewport.js +5 -0
  11. package/dist/cjs/RenderingEngine/VolumeViewport.js.map +1 -1
  12. package/dist/cjs/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +134 -775
  13. package/dist/cjs/RenderingEngine/vtkClasses/vtkSlabCamera.js +15 -14
  14. package/dist/cjs/RenderingEngine/vtkClasses/vtkSlabCamera.js.map +1 -1
  15. package/dist/cjs/cache/cache.js +2 -1
  16. package/dist/cjs/cache/cache.js.map +1 -1
  17. package/dist/cjs/enums/Events.d.ts +1 -1
  18. package/dist/cjs/enums/Events.js +1 -1
  19. package/dist/cjs/enums/Events.js.map +1 -1
  20. package/dist/cjs/enums/ImageQualityStatus.d.ts +8 -0
  21. package/dist/cjs/enums/ImageQualityStatus.js +12 -0
  22. package/dist/cjs/enums/ImageQualityStatus.js.map +1 -0
  23. package/dist/cjs/enums/MetadataModules.d.ts +11 -0
  24. package/dist/cjs/enums/MetadataModules.js +15 -0
  25. package/dist/cjs/enums/MetadataModules.js.map +1 -0
  26. package/dist/cjs/enums/index.d.ts +3 -1
  27. package/dist/cjs/enums/index.js +5 -1
  28. package/dist/cjs/enums/index.js.map +1 -1
  29. package/dist/cjs/index.d.ts +5 -3
  30. package/dist/cjs/index.js +3 -2
  31. package/dist/cjs/index.js.map +1 -1
  32. package/dist/cjs/loaders/ProgressiveRetrieveImages.d.ts +35 -0
  33. package/dist/cjs/loaders/ProgressiveRetrieveImages.js +249 -0
  34. package/dist/cjs/loaders/ProgressiveRetrieveImages.js.map +1 -0
  35. package/dist/cjs/loaders/configuration/interleavedRetrieve.d.ts +3 -0
  36. package/dist/cjs/loaders/configuration/interleavedRetrieve.js +79 -0
  37. package/dist/cjs/loaders/configuration/interleavedRetrieve.js.map +1 -0
  38. package/dist/cjs/loaders/configuration/sequentialRetrieve.d.ts +3 -0
  39. package/dist/cjs/loaders/configuration/sequentialRetrieve.js +14 -0
  40. package/dist/cjs/loaders/configuration/sequentialRetrieve.js.map +1 -0
  41. package/dist/cjs/loaders/configuration/singleRetrieve.d.ts +3 -0
  42. package/dist/cjs/loaders/configuration/singleRetrieve.js +13 -0
  43. package/dist/cjs/loaders/configuration/singleRetrieve.js.map +1 -0
  44. package/dist/cjs/loaders/fillNearbyFrames.d.ts +3 -0
  45. package/dist/cjs/loaders/fillNearbyFrames.js +37 -0
  46. package/dist/cjs/loaders/fillNearbyFrames.js.map +1 -0
  47. package/dist/cjs/loaders/imageLoader.js +2 -1
  48. package/dist/cjs/loaders/imageLoader.js.map +1 -1
  49. package/dist/cjs/metaData.d.ts +1 -1
  50. package/dist/cjs/metaData.js +2 -1
  51. package/dist/cjs/metaData.js.map +1 -1
  52. package/dist/cjs/types/CPUIImageData.d.ts +1 -1
  53. package/dist/cjs/types/EventTypes.d.ts +10 -11
  54. package/dist/cjs/types/ICache.d.ts +1 -1
  55. package/dist/cjs/types/IImage.d.ts +6 -4
  56. package/dist/cjs/types/IRetrieveConfiguration.d.ts +38 -0
  57. package/dist/cjs/types/IRetrieveConfiguration.js +3 -0
  58. package/dist/cjs/types/IRetrieveConfiguration.js.map +1 -0
  59. package/dist/cjs/types/IStackViewport.d.ts +1 -1
  60. package/dist/cjs/types/IStreamingVolumeProperties.d.ts +2 -1
  61. package/dist/cjs/types/IVideoViewport.d.ts +1 -0
  62. package/dist/cjs/types/IViewport.d.ts +1 -0
  63. package/dist/cjs/types/ImageLoadListener.d.ts +5 -0
  64. package/dist/cjs/types/ImageLoadListener.js +3 -0
  65. package/dist/cjs/types/ImageLoadListener.js.map +1 -0
  66. package/dist/cjs/types/VideoViewportProperties.d.ts +1 -1
  67. package/dist/cjs/types/index.d.ts +3 -1
  68. package/dist/cjs/utilities/ProgressiveIterator.d.ts +24 -0
  69. package/dist/cjs/utilities/ProgressiveIterator.js +215 -0
  70. package/dist/cjs/utilities/ProgressiveIterator.js.map +1 -0
  71. package/dist/cjs/utilities/decimate.d.ts +1 -0
  72. package/dist/cjs/utilities/decimate.js +11 -0
  73. package/dist/cjs/utilities/decimate.js.map +1 -0
  74. package/dist/cjs/utilities/imageRetrieveMetadataProvider.d.ts +7 -0
  75. package/dist/cjs/utilities/imageRetrieveMetadataProvider.js +27 -0
  76. package/dist/cjs/utilities/imageRetrieveMetadataProvider.js.map +1 -0
  77. package/dist/cjs/utilities/index.d.ts +5 -1
  78. package/dist/cjs/utilities/index.js +9 -1
  79. package/dist/cjs/utilities/index.js.map +1 -1
  80. package/dist/cjs/utilities/isVideoTransferSyntax.d.ts +2 -0
  81. package/dist/cjs/utilities/isVideoTransferSyntax.js +30 -0
  82. package/dist/cjs/utilities/isVideoTransferSyntax.js.map +1 -0
  83. package/dist/esm/RenderingEngine/StackViewport.js +100 -78
  84. package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
  85. package/dist/esm/RenderingEngine/VideoViewport.js +170 -14
  86. package/dist/esm/RenderingEngine/VideoViewport.js.map +1 -1
  87. package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
  88. package/dist/esm/RenderingEngine/VolumeViewport.js +5 -0
  89. package/dist/esm/RenderingEngine/VolumeViewport.js.map +1 -1
  90. package/dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.js +12 -11
  91. package/dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.js.map +1 -1
  92. package/dist/esm/cache/cache.js +2 -1
  93. package/dist/esm/cache/cache.js.map +1 -1
  94. package/dist/esm/enums/Events.js +1 -1
  95. package/dist/esm/enums/Events.js.map +1 -1
  96. package/dist/esm/enums/ImageQualityStatus.js +10 -0
  97. package/dist/esm/enums/ImageQualityStatus.js.map +1 -0
  98. package/dist/esm/enums/MetadataModules.js +13 -0
  99. package/dist/esm/enums/MetadataModules.js.map +1 -0
  100. package/dist/esm/enums/index.js +3 -1
  101. package/dist/esm/enums/index.js.map +1 -1
  102. package/dist/esm/index.js +2 -2
  103. package/dist/esm/index.js.map +1 -1
  104. package/dist/esm/loaders/ProgressiveRetrieveImages.js +229 -0
  105. package/dist/esm/loaders/ProgressiveRetrieveImages.js.map +1 -0
  106. package/dist/esm/loaders/configuration/interleavedRetrieve.js +77 -0
  107. package/dist/esm/loaders/configuration/interleavedRetrieve.js.map +1 -0
  108. package/dist/esm/loaders/configuration/sequentialRetrieve.js +12 -0
  109. package/dist/esm/loaders/configuration/sequentialRetrieve.js.map +1 -0
  110. package/dist/esm/loaders/configuration/singleRetrieve.js +11 -0
  111. package/dist/esm/loaders/configuration/singleRetrieve.js.map +1 -0
  112. package/dist/esm/loaders/fillNearbyFrames.js +35 -0
  113. package/dist/esm/loaders/fillNearbyFrames.js.map +1 -0
  114. package/dist/esm/loaders/imageLoader.js +2 -1
  115. package/dist/esm/loaders/imageLoader.js.map +1 -1
  116. package/dist/esm/metaData.js +2 -1
  117. package/dist/esm/metaData.js.map +1 -1
  118. package/dist/esm/types/IRetrieveConfiguration.js +2 -0
  119. package/dist/esm/types/IRetrieveConfiguration.js.map +1 -0
  120. package/dist/esm/types/ImageLoadListener.js +2 -0
  121. package/dist/esm/types/ImageLoadListener.js.map +1 -0
  122. package/dist/esm/utilities/ProgressiveIterator.js +140 -0
  123. package/dist/esm/utilities/ProgressiveIterator.js.map +1 -0
  124. package/dist/esm/utilities/decimate.js +8 -0
  125. package/dist/esm/utilities/decimate.js.map +1 -0
  126. package/dist/esm/utilities/imageRetrieveMetadataProvider.js +25 -0
  127. package/dist/esm/utilities/imageRetrieveMetadataProvider.js.map +1 -0
  128. package/dist/esm/utilities/index.js +5 -1
  129. package/dist/esm/utilities/index.js.map +1 -1
  130. package/dist/esm/utilities/isVideoTransferSyntax.js +26 -0
  131. package/dist/esm/utilities/isVideoTransferSyntax.js.map +1 -0
  132. package/dist/{esm → types}/RenderingEngine/BaseVolumeViewport.d.ts +1 -0
  133. package/dist/types/RenderingEngine/BaseVolumeViewport.d.ts.map +1 -0
  134. package/dist/{esm → types}/RenderingEngine/RenderingEngine.d.ts +1 -0
  135. package/dist/types/RenderingEngine/RenderingEngine.d.ts.map +1 -0
  136. package/dist/{esm → types}/RenderingEngine/StackViewport.d.ts +25 -3
  137. package/dist/types/RenderingEngine/StackViewport.d.ts.map +1 -0
  138. package/dist/{esm → types}/RenderingEngine/VideoViewport.d.ts +43 -3
  139. package/dist/types/RenderingEngine/VideoViewport.d.ts.map +1 -0
  140. package/dist/{esm → types}/RenderingEngine/Viewport.d.ts +2 -0
  141. package/dist/types/RenderingEngine/Viewport.d.ts.map +1 -0
  142. package/dist/{esm → types}/RenderingEngine/VolumeViewport.d.ts +2 -0
  143. package/dist/types/RenderingEngine/VolumeViewport.d.ts.map +1 -0
  144. package/dist/{esm → types}/RenderingEngine/VolumeViewport3D.d.ts +1 -0
  145. package/dist/types/RenderingEngine/VolumeViewport3D.d.ts.map +1 -0
  146. package/dist/{esm → types}/RenderingEngine/getRenderingEngine.d.ts +1 -0
  147. package/dist/types/RenderingEngine/getRenderingEngine.d.ts.map +1 -0
  148. package/dist/{esm → types}/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -0
  149. package/dist/types/RenderingEngine/helpers/addVolumesToViewports.d.ts.map +1 -0
  150. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/colors/colormap.d.ts +1 -0
  151. package/dist/types/RenderingEngine/helpers/cpuFallback/colors/colormap.d.ts.map +1 -0
  152. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/colors/index.d.ts +1 -0
  153. package/dist/types/RenderingEngine/helpers/cpuFallback/colors/index.d.ts.map +1 -0
  154. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/colors/lookupTable.d.ts +1 -0
  155. package/dist/types/RenderingEngine/helpers/cpuFallback/colors/lookupTable.d.ts.map +1 -0
  156. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/drawImageSync.d.ts +1 -0
  157. package/dist/types/RenderingEngine/helpers/cpuFallback/drawImageSync.d.ts.map +1 -0
  158. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/calculateTransform.d.ts +1 -0
  159. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/calculateTransform.d.ts.map +1 -0
  160. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/canvasToPixel.d.ts +1 -0
  161. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/canvasToPixel.d.ts.map +1 -0
  162. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/computeAutoVoi.d.ts +1 -0
  163. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/computeAutoVoi.d.ts.map +1 -0
  164. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/correctShift.d.ts +1 -0
  165. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/correctShift.d.ts.map +1 -0
  166. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/createViewport.d.ts +1 -0
  167. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/createViewport.d.ts.map +1 -0
  168. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/doesImageNeedToBeRendered.d.ts +1 -0
  169. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/doesImageNeedToBeRendered.d.ts.map +1 -0
  170. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/fitToWindow.d.ts +1 -0
  171. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/fitToWindow.d.ts.map +1 -0
  172. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.d.ts +1 -0
  173. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.d.ts.map +1 -0
  174. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/generateLut.d.ts +1 -0
  175. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/generateLut.d.ts.map +1 -0
  176. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getDefaultViewport.d.ts +1 -0
  177. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getDefaultViewport.d.ts.map +1 -0
  178. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getImageFitScale.d.ts +1 -0
  179. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getImageFitScale.d.ts.map +1 -0
  180. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getImageSize.d.ts +1 -0
  181. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getImageSize.d.ts.map +1 -0
  182. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getLut.d.ts +1 -0
  183. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getLut.d.ts.map +1 -0
  184. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getModalityLut.d.ts +1 -0
  185. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getModalityLut.d.ts.map +1 -0
  186. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getTransform.d.ts +1 -0
  187. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getTransform.d.ts.map +1 -0
  188. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/getVOILut.d.ts +1 -0
  189. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/getVOILut.d.ts.map +1 -0
  190. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/initializeRenderCanvas.d.ts +1 -0
  191. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/initializeRenderCanvas.d.ts.map +1 -0
  192. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.d.ts +1 -0
  193. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.d.ts.map +1 -0
  194. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/now.d.ts +1 -0
  195. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/now.d.ts.map +1 -0
  196. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/pixelToCanvas.d.ts +1 -0
  197. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/pixelToCanvas.d.ts.map +1 -0
  198. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.d.ts +1 -0
  199. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.d.ts.map +1 -0
  200. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.d.ts +1 -0
  201. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.d.ts.map +1 -0
  202. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.d.ts +1 -0
  203. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.d.ts.map +1 -0
  204. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/resetCamera.d.ts +1 -0
  205. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/resetCamera.d.ts.map +1 -0
  206. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/resize.d.ts +1 -0
  207. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/resize.d.ts.map +1 -0
  208. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/saveLastRendered.d.ts +1 -0
  209. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/saveLastRendered.d.ts.map +1 -0
  210. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/setDefaultViewport.d.ts +1 -0
  211. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/setDefaultViewport.d.ts.map +1 -0
  212. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/setToPixelCoordinateSystem.d.ts +1 -0
  213. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/setToPixelCoordinateSystem.d.ts.map +1 -0
  214. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.d.ts +1 -0
  215. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.d.ts.map +1 -0
  216. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.d.ts +1 -0
  217. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.d.ts.map +1 -0
  218. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.d.ts +1 -0
  219. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.d.ts.map +1 -0
  220. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.d.ts +1 -0
  221. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.d.ts.map +1 -0
  222. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.d.ts +1 -0
  223. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.d.ts.map +1 -0
  224. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.d.ts +1 -0
  225. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.d.ts.map +1 -0
  226. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.d.ts +1 -0
  227. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.d.ts.map +1 -0
  228. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.d.ts +1 -0
  229. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.d.ts.map +1 -0
  230. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/transform.d.ts +1 -0
  231. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/transform.d.ts.map +1 -0
  232. package/dist/{esm → types}/RenderingEngine/helpers/cpuFallback/rendering/validator.d.ts +1 -0
  233. package/dist/types/RenderingEngine/helpers/cpuFallback/rendering/validator.d.ts.map +1 -0
  234. package/dist/{esm → types}/RenderingEngine/helpers/createVolumeActor.d.ts +1 -0
  235. package/dist/types/RenderingEngine/helpers/createVolumeActor.d.ts.map +1 -0
  236. package/dist/{esm → types}/RenderingEngine/helpers/createVolumeMapper.d.ts +1 -0
  237. package/dist/types/RenderingEngine/helpers/createVolumeMapper.d.ts.map +1 -0
  238. package/dist/{esm → types}/RenderingEngine/helpers/getOrCreateCanvas.d.ts +1 -0
  239. package/dist/types/RenderingEngine/helpers/getOrCreateCanvas.d.ts.map +1 -0
  240. package/dist/{esm → types}/RenderingEngine/helpers/index.d.ts +1 -0
  241. package/dist/types/RenderingEngine/helpers/index.d.ts.map +1 -0
  242. package/dist/{esm → types}/RenderingEngine/helpers/isRgbaSourceRgbDest.d.ts +1 -0
  243. package/dist/types/RenderingEngine/helpers/isRgbaSourceRgbDest.d.ts.map +1 -0
  244. package/dist/{esm → types}/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +1 -0
  245. package/dist/types/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts.map +1 -0
  246. package/dist/{esm → types}/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -0
  247. package/dist/types/RenderingEngine/helpers/setVolumesForViewports.d.ts.map +1 -0
  248. package/dist/{esm → types}/RenderingEngine/helpers/viewportTypeToViewportClass.d.ts +1 -0
  249. package/dist/types/RenderingEngine/helpers/viewportTypeToViewportClass.d.ts.map +1 -0
  250. package/dist/{esm → types}/RenderingEngine/helpers/viewportTypeUsesCustomRenderingPipeline.d.ts +1 -0
  251. package/dist/types/RenderingEngine/helpers/viewportTypeUsesCustomRenderingPipeline.d.ts.map +1 -0
  252. package/dist/{esm → types}/RenderingEngine/helpers/volumeNewImageEventDispatcher.d.ts +1 -0
  253. package/dist/types/RenderingEngine/helpers/volumeNewImageEventDispatcher.d.ts.map +1 -0
  254. package/dist/{esm → types}/RenderingEngine/index.d.ts +1 -0
  255. package/dist/types/RenderingEngine/index.d.ts.map +1 -0
  256. package/dist/{esm → types}/RenderingEngine/renderingEngineCache.d.ts +1 -0
  257. package/dist/types/RenderingEngine/renderingEngineCache.d.ts.map +1 -0
  258. package/dist/{esm → types}/RenderingEngine/vtkClasses/index.d.ts +1 -0
  259. package/dist/types/RenderingEngine/vtkClasses/index.d.ts.map +1 -0
  260. package/dist/{esm → types}/RenderingEngine/vtkClasses/vtkOffscreenMultiRenderWindow.d.ts +1 -0
  261. package/dist/types/RenderingEngine/vtkClasses/vtkOffscreenMultiRenderWindow.d.ts.map +1 -0
  262. package/dist/{esm → types}/RenderingEngine/vtkClasses/vtkSharedVolumeMapper.d.ts +1 -0
  263. package/dist/types/RenderingEngine/vtkClasses/vtkSharedVolumeMapper.d.ts.map +1 -0
  264. package/dist/types/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +141 -0
  265. package/dist/types/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts.map +1 -0
  266. package/dist/{esm → types}/RenderingEngine/vtkClasses/vtkStreamingOpenGLRenderWindow.d.ts +1 -0
  267. package/dist/types/RenderingEngine/vtkClasses/vtkStreamingOpenGLRenderWindow.d.ts.map +1 -0
  268. package/dist/{esm → types}/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.d.ts +1 -0
  269. package/dist/types/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.d.ts.map +1 -0
  270. package/dist/{esm → types}/RenderingEngine/vtkClasses/vtkStreamingOpenGLViewNodeFactory.d.ts +1 -0
  271. package/dist/types/RenderingEngine/vtkClasses/vtkStreamingOpenGLViewNodeFactory.d.ts.map +1 -0
  272. package/dist/{esm → types}/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.d.ts +1 -0
  273. package/dist/types/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.d.ts.map +1 -0
  274. package/dist/{esm → types}/Settings.d.ts +1 -0
  275. package/dist/types/Settings.d.ts.map +1 -0
  276. package/dist/{esm → types}/cache/cache.d.ts +1 -0
  277. package/dist/types/cache/cache.d.ts.map +1 -0
  278. package/dist/{esm → types}/cache/classes/Contour.d.ts +1 -0
  279. package/dist/types/cache/classes/Contour.d.ts.map +1 -0
  280. package/dist/{esm → types}/cache/classes/ContourSet.d.ts +1 -0
  281. package/dist/types/cache/classes/ContourSet.d.ts.map +1 -0
  282. package/dist/{esm → types}/cache/classes/ImageVolume.d.ts +1 -0
  283. package/dist/types/cache/classes/ImageVolume.d.ts.map +1 -0
  284. package/dist/{esm → types}/cache/classes/Surface.d.ts +1 -0
  285. package/dist/types/cache/classes/Surface.d.ts.map +1 -0
  286. package/dist/{esm → types}/cache/index.d.ts +1 -0
  287. package/dist/types/cache/index.d.ts.map +1 -0
  288. package/dist/{esm → types}/constants/cpuColormaps.d.ts +1 -0
  289. package/dist/types/constants/cpuColormaps.d.ts.map +1 -0
  290. package/dist/{esm → types}/constants/epsilon.d.ts +1 -0
  291. package/dist/types/constants/epsilon.d.ts.map +1 -0
  292. package/dist/{esm → types}/constants/index.d.ts +1 -0
  293. package/dist/types/constants/index.d.ts.map +1 -0
  294. package/dist/{esm → types}/constants/mprCameraValues.d.ts +1 -0
  295. package/dist/types/constants/mprCameraValues.d.ts.map +1 -0
  296. package/dist/{esm → types}/constants/rendering.d.ts +1 -0
  297. package/dist/types/constants/rendering.d.ts.map +1 -0
  298. package/dist/{esm → types}/constants/viewportPresets.d.ts +1 -0
  299. package/dist/types/constants/viewportPresets.d.ts.map +1 -0
  300. package/dist/{esm → types}/enums/BlendModes.d.ts +1 -0
  301. package/dist/types/enums/BlendModes.d.ts.map +1 -0
  302. package/dist/{esm → types}/enums/CalibrationTypes.d.ts +1 -0
  303. package/dist/types/enums/CalibrationTypes.d.ts.map +1 -0
  304. package/dist/{esm → types}/enums/ContourType.d.ts +1 -0
  305. package/dist/types/enums/ContourType.d.ts.map +1 -0
  306. package/dist/{esm → types}/enums/DynamicOperatorType.d.ts +1 -0
  307. package/dist/types/enums/DynamicOperatorType.d.ts.map +1 -0
  308. package/dist/{esm → types}/enums/Events.d.ts +2 -1
  309. package/dist/types/enums/Events.d.ts.map +1 -0
  310. package/dist/{esm → types}/enums/GeometryType.d.ts +1 -0
  311. package/dist/types/enums/GeometryType.d.ts.map +1 -0
  312. package/dist/types/enums/ImageQualityStatus.d.ts +9 -0
  313. package/dist/types/enums/ImageQualityStatus.d.ts.map +1 -0
  314. package/dist/{esm → types}/enums/InterpolationType.d.ts +1 -0
  315. package/dist/types/enums/InterpolationType.d.ts.map +1 -0
  316. package/dist/types/enums/MetadataModules.d.ts +12 -0
  317. package/dist/types/enums/MetadataModules.d.ts.map +1 -0
  318. package/dist/{esm → types}/enums/OrientationAxis.d.ts +1 -0
  319. package/dist/types/enums/OrientationAxis.d.ts.map +1 -0
  320. package/dist/{esm → types}/enums/RequestType.d.ts +1 -0
  321. package/dist/types/enums/RequestType.d.ts.map +1 -0
  322. package/dist/{esm → types}/enums/SharedArrayBufferModes.d.ts +1 -0
  323. package/dist/types/enums/SharedArrayBufferModes.d.ts.map +1 -0
  324. package/dist/{esm → types}/enums/VOILUTFunctionType.d.ts +1 -0
  325. package/dist/types/enums/VOILUTFunctionType.d.ts.map +1 -0
  326. package/dist/{esm → types}/enums/VideoViewport.d.ts +1 -0
  327. package/dist/types/enums/VideoViewport.d.ts.map +1 -0
  328. package/dist/{esm → types}/enums/ViewportStatus.d.ts +1 -0
  329. package/dist/types/enums/ViewportStatus.d.ts.map +1 -0
  330. package/dist/{esm → types}/enums/ViewportType.d.ts +1 -0
  331. package/dist/types/enums/ViewportType.d.ts.map +1 -0
  332. package/dist/{esm → types}/enums/index.d.ts +4 -1
  333. package/dist/types/enums/index.d.ts.map +1 -0
  334. package/dist/{esm → types}/eventTarget.d.ts +1 -0
  335. package/dist/types/eventTarget.d.ts.map +1 -0
  336. package/dist/{esm → types}/getEnabledElement.d.ts +1 -0
  337. package/dist/types/getEnabledElement.d.ts.map +1 -0
  338. package/dist/{esm → types}/global.d.ts +1 -0
  339. package/dist/types/global.d.ts.map +1 -0
  340. package/dist/{esm → types}/index.d.ts +6 -3
  341. package/dist/types/index.d.ts.map +1 -0
  342. package/dist/{esm → types}/init.d.ts +1 -0
  343. package/dist/types/init.d.ts.map +1 -0
  344. package/dist/types/loaders/ProgressiveRetrieveImages.d.ts +36 -0
  345. package/dist/types/loaders/ProgressiveRetrieveImages.d.ts.map +1 -0
  346. package/dist/types/loaders/configuration/interleavedRetrieve.d.ts +4 -0
  347. package/dist/types/loaders/configuration/interleavedRetrieve.d.ts.map +1 -0
  348. package/dist/types/loaders/configuration/sequentialRetrieve.d.ts +4 -0
  349. package/dist/types/loaders/configuration/sequentialRetrieve.d.ts.map +1 -0
  350. package/dist/types/loaders/configuration/singleRetrieve.d.ts +4 -0
  351. package/dist/types/loaders/configuration/singleRetrieve.d.ts.map +1 -0
  352. package/dist/types/loaders/fillNearbyFrames.d.ts +4 -0
  353. package/dist/types/loaders/fillNearbyFrames.d.ts.map +1 -0
  354. package/dist/{esm → types}/loaders/geometryLoader.d.ts +1 -0
  355. package/dist/types/loaders/geometryLoader.d.ts.map +1 -0
  356. package/dist/{esm → types}/loaders/imageLoader.d.ts +1 -0
  357. package/dist/types/loaders/imageLoader.d.ts.map +1 -0
  358. package/dist/{esm → types}/loaders/utils/contourSet/createContourSet.d.ts +1 -0
  359. package/dist/types/loaders/utils/contourSet/createContourSet.d.ts.map +1 -0
  360. package/dist/{esm → types}/loaders/utils/contourSet/validateContourSet.d.ts +1 -0
  361. package/dist/types/loaders/utils/contourSet/validateContourSet.d.ts.map +1 -0
  362. package/dist/{esm → types}/loaders/utils/surface/createSurface.d.ts +1 -0
  363. package/dist/types/loaders/utils/surface/createSurface.d.ts.map +1 -0
  364. package/dist/{esm → types}/loaders/utils/surface/validateSurface.d.ts +1 -0
  365. package/dist/types/loaders/utils/surface/validateSurface.d.ts.map +1 -0
  366. package/dist/{esm → types}/loaders/volumeLoader.d.ts +1 -0
  367. package/dist/types/loaders/volumeLoader.d.ts.map +1 -0
  368. package/dist/{esm → types}/metaData.d.ts +2 -1
  369. package/dist/types/metaData.d.ts.map +1 -0
  370. package/dist/{esm → types}/requestPool/imageLoadPoolManager.d.ts +1 -0
  371. package/dist/types/requestPool/imageLoadPoolManager.d.ts.map +1 -0
  372. package/dist/{esm → types}/requestPool/imageRetrievalPoolManager.d.ts +1 -0
  373. package/dist/types/requestPool/imageRetrievalPoolManager.d.ts.map +1 -0
  374. package/dist/{esm → types}/requestPool/requestPoolManager.d.ts +1 -0
  375. package/dist/types/requestPool/requestPoolManager.d.ts.map +1 -0
  376. package/dist/{esm → types}/types/ActorSliceRange.d.ts +1 -0
  377. package/dist/types/types/ActorSliceRange.d.ts.map +1 -0
  378. package/dist/{esm → types}/types/AffineMatrix.d.ts +1 -0
  379. package/dist/types/types/AffineMatrix.d.ts.map +1 -0
  380. package/dist/{esm → types}/types/CPUFallbackColormap.d.ts +1 -0
  381. package/dist/types/types/CPUFallbackColormap.d.ts.map +1 -0
  382. package/dist/{esm → types}/types/CPUFallbackColormapData.d.ts +1 -0
  383. package/dist/types/types/CPUFallbackColormapData.d.ts.map +1 -0
  384. package/dist/{esm → types}/types/CPUFallbackColormapsData.d.ts +1 -0
  385. package/dist/types/types/CPUFallbackColormapsData.d.ts.map +1 -0
  386. package/dist/{esm → types}/types/CPUFallbackEnabledElement.d.ts +1 -0
  387. package/dist/types/types/CPUFallbackEnabledElement.d.ts.map +1 -0
  388. package/dist/{esm → types}/types/CPUFallbackLUT.d.ts +1 -0
  389. package/dist/types/types/CPUFallbackLUT.d.ts.map +1 -0
  390. package/dist/{esm → types}/types/CPUFallbackLookupTable.d.ts +1 -0
  391. package/dist/types/types/CPUFallbackLookupTable.d.ts.map +1 -0
  392. package/dist/{esm → types}/types/CPUFallbackRenderingTools.d.ts +1 -0
  393. package/dist/types/types/CPUFallbackRenderingTools.d.ts.map +1 -0
  394. package/dist/{esm → types}/types/CPUFallbackTransform.d.ts +1 -0
  395. package/dist/types/types/CPUFallbackTransform.d.ts.map +1 -0
  396. package/dist/{esm → types}/types/CPUFallbackViewport.d.ts +1 -0
  397. package/dist/types/types/CPUFallbackViewport.d.ts.map +1 -0
  398. package/dist/{esm → types}/types/CPUFallbackViewportDisplayedArea.d.ts +1 -0
  399. package/dist/types/types/CPUFallbackViewportDisplayedArea.d.ts.map +1 -0
  400. package/dist/{esm → types}/types/CPUIImageData.d.ts +2 -1
  401. package/dist/types/types/CPUIImageData.d.ts.map +1 -0
  402. package/dist/{esm → types}/types/Colormap.d.ts +1 -0
  403. package/dist/types/types/Colormap.d.ts.map +1 -0
  404. package/dist/{esm → types}/types/ContourData.d.ts +1 -0
  405. package/dist/types/types/ContourData.d.ts.map +1 -0
  406. package/dist/{esm → types}/types/Cornerstone3DConfig.d.ts +1 -0
  407. package/dist/types/types/Cornerstone3DConfig.d.ts.map +1 -0
  408. package/dist/{esm → types}/types/CustomEventType.d.ts +1 -0
  409. package/dist/types/types/CustomEventType.d.ts.map +1 -0
  410. package/dist/{esm → types}/types/EventTypes.d.ts +11 -11
  411. package/dist/types/types/EventTypes.d.ts.map +1 -0
  412. package/dist/{esm → types}/types/FlipDirection.d.ts +1 -0
  413. package/dist/types/types/FlipDirection.d.ts.map +1 -0
  414. package/dist/{esm → types}/types/IActor.d.ts +1 -0
  415. package/dist/types/types/IActor.d.ts.map +1 -0
  416. package/dist/{esm → types}/types/ICache.d.ts +2 -1
  417. package/dist/types/types/ICache.d.ts.map +1 -0
  418. package/dist/{esm → types}/types/ICachedGeometry.d.ts +1 -0
  419. package/dist/types/types/ICachedGeometry.d.ts.map +1 -0
  420. package/dist/{esm → types}/types/ICachedImage.d.ts +1 -0
  421. package/dist/types/types/ICachedImage.d.ts.map +1 -0
  422. package/dist/{esm → types}/types/ICachedVolume.d.ts +1 -0
  423. package/dist/types/types/ICachedVolume.d.ts.map +1 -0
  424. package/dist/{esm → types}/types/ICamera.d.ts +1 -0
  425. package/dist/types/types/ICamera.d.ts.map +1 -0
  426. package/dist/{esm → types}/types/IContour.d.ts +1 -0
  427. package/dist/types/types/IContour.d.ts.map +1 -0
  428. package/dist/{esm → types}/types/IContourSet.d.ts +1 -0
  429. package/dist/types/types/IContourSet.d.ts.map +1 -0
  430. package/dist/{esm → types}/types/IDynamicImageVolume.d.ts +1 -0
  431. package/dist/types/types/IDynamicImageVolume.d.ts.map +1 -0
  432. package/dist/{esm → types}/types/IEnabledElement.d.ts +1 -0
  433. package/dist/types/types/IEnabledElement.d.ts.map +1 -0
  434. package/dist/{esm → types}/types/IGeometry.d.ts +1 -0
  435. package/dist/types/types/IGeometry.d.ts.map +1 -0
  436. package/dist/{esm → types}/types/IImage.d.ts +7 -4
  437. package/dist/types/types/IImage.d.ts.map +1 -0
  438. package/dist/{esm → types}/types/IImageCalibration.d.ts +1 -0
  439. package/dist/types/types/IImageCalibration.d.ts.map +1 -0
  440. package/dist/{esm → types}/types/IImageData.d.ts +1 -0
  441. package/dist/types/types/IImageData.d.ts.map +1 -0
  442. package/dist/{esm → types}/types/IImageVolume.d.ts +1 -0
  443. package/dist/types/types/IImageVolume.d.ts.map +1 -0
  444. package/dist/{esm → types}/types/ILoadObject.d.ts +1 -0
  445. package/dist/types/types/ILoadObject.d.ts.map +1 -0
  446. package/dist/{esm → types}/types/IRegisterImageLoader.d.ts +1 -0
  447. package/dist/types/types/IRegisterImageLoader.d.ts.map +1 -0
  448. package/dist/{esm → types}/types/IRenderingEngine.d.ts +1 -0
  449. package/dist/types/types/IRenderingEngine.d.ts.map +1 -0
  450. package/dist/types/types/IRetrieveConfiguration.d.ts +39 -0
  451. package/dist/types/types/IRetrieveConfiguration.d.ts.map +1 -0
  452. package/dist/{esm → types}/types/IStackViewport.d.ts +2 -1
  453. package/dist/types/types/IStackViewport.d.ts.map +1 -0
  454. package/dist/{esm → types}/types/IStreamingImageVolume.d.ts +1 -0
  455. package/dist/types/types/IStreamingImageVolume.d.ts.map +1 -0
  456. package/dist/{esm → types}/types/IStreamingVolumeProperties.d.ts +3 -1
  457. package/dist/types/types/IStreamingVolumeProperties.d.ts.map +1 -0
  458. package/dist/{esm → types}/types/IVideoViewport.d.ts +2 -0
  459. package/dist/types/types/IVideoViewport.d.ts.map +1 -0
  460. package/dist/{esm → types}/types/IViewport.d.ts +2 -0
  461. package/dist/types/types/IViewport.d.ts.map +1 -0
  462. package/dist/{esm → types}/types/IViewportId.d.ts +1 -0
  463. package/dist/types/types/IViewportId.d.ts.map +1 -0
  464. package/dist/{esm → types}/types/IVolume.d.ts +1 -0
  465. package/dist/types/types/IVolume.d.ts.map +1 -0
  466. package/dist/{esm → types}/types/IVolumeInput.d.ts +1 -0
  467. package/dist/types/types/IVolumeInput.d.ts.map +1 -0
  468. package/dist/{esm → types}/types/IVolumeViewport.d.ts +1 -0
  469. package/dist/types/types/IVolumeViewport.d.ts.map +1 -0
  470. package/dist/types/types/ImageLoadListener.d.ts +6 -0
  471. package/dist/types/types/ImageLoadListener.d.ts.map +1 -0
  472. package/dist/{esm → types}/types/ImageLoaderFn.d.ts +1 -0
  473. package/dist/types/types/ImageLoaderFn.d.ts.map +1 -0
  474. package/dist/{esm → types}/types/ImagePixelModule.d.ts +1 -0
  475. package/dist/types/types/ImagePixelModule.d.ts.map +1 -0
  476. package/dist/{esm → types}/types/ImagePlaneModule.d.ts +1 -0
  477. package/dist/types/types/ImagePlaneModule.d.ts.map +1 -0
  478. package/dist/{esm → types}/types/ImageSliceData.d.ts +1 -0
  479. package/dist/types/types/ImageSliceData.d.ts.map +1 -0
  480. package/dist/{esm → types}/types/Mat3.d.ts +1 -0
  481. package/dist/types/types/Mat3.d.ts.map +1 -0
  482. package/dist/{esm → types}/types/Metadata.d.ts +1 -0
  483. package/dist/types/types/Metadata.d.ts.map +1 -0
  484. package/dist/{esm → types}/types/OrientationVectors.d.ts +1 -0
  485. package/dist/types/types/OrientationVectors.d.ts.map +1 -0
  486. package/dist/{esm → types}/types/PixelDataTypedArray.d.ts +1 -0
  487. package/dist/types/types/PixelDataTypedArray.d.ts.map +1 -0
  488. package/dist/{esm → types}/types/Plane.d.ts +1 -0
  489. package/dist/types/types/Plane.d.ts.map +1 -0
  490. package/dist/{esm → types}/types/Point2.d.ts +1 -0
  491. package/dist/types/types/Point2.d.ts.map +1 -0
  492. package/dist/{esm → types}/types/Point3.d.ts +1 -0
  493. package/dist/types/types/Point3.d.ts.map +1 -0
  494. package/dist/{esm → types}/types/Point4.d.ts +1 -0
  495. package/dist/types/types/Point4.d.ts.map +1 -0
  496. package/dist/{esm → types}/types/RGB.d.ts +1 -0
  497. package/dist/types/types/RGB.d.ts.map +1 -0
  498. package/dist/{esm → types}/types/ScalingParameters.d.ts +1 -0
  499. package/dist/types/types/ScalingParameters.d.ts.map +1 -0
  500. package/dist/{esm → types}/types/StackViewportProperties.d.ts +1 -0
  501. package/dist/types/types/StackViewportProperties.d.ts.map +1 -0
  502. package/dist/{esm → types}/types/SurfaceData.d.ts +1 -0
  503. package/dist/types/types/SurfaceData.d.ts.map +1 -0
  504. package/dist/{esm → types}/types/TransformMatrix2D.d.ts +1 -0
  505. package/dist/types/types/TransformMatrix2D.d.ts.map +1 -0
  506. package/dist/{esm → types}/types/VideoViewportProperties.d.ts +2 -1
  507. package/dist/types/types/VideoViewportProperties.d.ts.map +1 -0
  508. package/dist/{esm → types}/types/VideoViewportTypes.d.ts +1 -0
  509. package/dist/types/types/VideoViewportTypes.d.ts.map +1 -0
  510. package/dist/{esm → types}/types/ViewportInputOptions.d.ts +1 -0
  511. package/dist/types/types/ViewportInputOptions.d.ts.map +1 -0
  512. package/dist/{esm → types}/types/ViewportPreset.d.ts +1 -0
  513. package/dist/types/types/ViewportPreset.d.ts.map +1 -0
  514. package/dist/{esm → types}/types/ViewportProperties.d.ts +1 -0
  515. package/dist/types/types/ViewportProperties.d.ts.map +1 -0
  516. package/dist/{esm → types}/types/VolumeLoaderFn.d.ts +1 -0
  517. package/dist/types/types/VolumeLoaderFn.d.ts.map +1 -0
  518. package/dist/{esm → types}/types/VolumeViewportProperties.d.ts +1 -0
  519. package/dist/types/types/VolumeViewportProperties.d.ts.map +1 -0
  520. package/dist/{esm → types}/types/displayArea.d.ts +1 -0
  521. package/dist/types/types/displayArea.d.ts.map +1 -0
  522. package/dist/{esm → types}/types/index.d.ts +4 -1
  523. package/dist/types/types/index.d.ts.map +1 -0
  524. package/dist/{esm → types}/types/voi.d.ts +1 -0
  525. package/dist/types/types/voi.d.ts.map +1 -0
  526. package/dist/types/utilities/ProgressiveIterator.d.ts +25 -0
  527. package/dist/types/utilities/ProgressiveIterator.d.ts.map +1 -0
  528. package/dist/{esm → types}/utilities/actorCheck.d.ts +1 -0
  529. package/dist/types/utilities/actorCheck.d.ts.map +1 -0
  530. package/dist/{esm → types}/utilities/applyPreset.d.ts +1 -0
  531. package/dist/types/utilities/applyPreset.d.ts.map +1 -0
  532. package/dist/{esm → types}/utilities/calculateViewportsSpatialRegistration.d.ts +1 -0
  533. package/dist/types/utilities/calculateViewportsSpatialRegistration.d.ts.map +1 -0
  534. package/dist/{esm → types}/utilities/calibratedPixelSpacingMetadataProvider.d.ts +1 -0
  535. package/dist/types/utilities/calibratedPixelSpacingMetadataProvider.d.ts.map +1 -0
  536. package/dist/{esm → types}/utilities/clamp.d.ts +1 -0
  537. package/dist/types/utilities/clamp.d.ts.map +1 -0
  538. package/dist/{esm → types}/utilities/colormap.d.ts +1 -0
  539. package/dist/types/utilities/colormap.d.ts.map +1 -0
  540. package/dist/{esm → types}/utilities/createFloat32SharedArray.d.ts +1 -0
  541. package/dist/types/utilities/createFloat32SharedArray.d.ts.map +1 -0
  542. package/dist/{esm → types}/utilities/createInt16SharedArray.d.ts +1 -0
  543. package/dist/types/utilities/createInt16SharedArray.d.ts.map +1 -0
  544. package/dist/{esm → types}/utilities/createLinearRGBTransferFunction.d.ts +1 -0
  545. package/dist/types/utilities/createLinearRGBTransferFunction.d.ts.map +1 -0
  546. package/dist/{esm → types}/utilities/createSigmoidRGBTransferFunction.d.ts +1 -0
  547. package/dist/types/utilities/createSigmoidRGBTransferFunction.d.ts.map +1 -0
  548. package/dist/{esm → types}/utilities/createUInt16SharedArray.d.ts +1 -0
  549. package/dist/types/utilities/createUInt16SharedArray.d.ts.map +1 -0
  550. package/dist/{esm → types}/utilities/createUint8SharedArray.d.ts +1 -0
  551. package/dist/types/utilities/createUint8SharedArray.d.ts.map +1 -0
  552. package/dist/types/utilities/decimate.d.ts +2 -0
  553. package/dist/types/utilities/decimate.d.ts.map +1 -0
  554. package/dist/{esm → types}/utilities/deepFreeze.d.ts +1 -0
  555. package/dist/types/utilities/deepFreeze.d.ts.map +1 -0
  556. package/dist/{esm → types}/utilities/deepMerge.d.ts +1 -0
  557. package/dist/types/utilities/deepMerge.d.ts.map +1 -0
  558. package/dist/{esm → types}/utilities/eventListener/MultiTargetEventListenerManager.d.ts +1 -0
  559. package/dist/types/utilities/eventListener/MultiTargetEventListenerManager.d.ts.map +1 -0
  560. package/dist/{esm → types}/utilities/eventListener/TargetEventListeners.d.ts +1 -0
  561. package/dist/types/utilities/eventListener/TargetEventListeners.d.ts.map +1 -0
  562. package/dist/{esm → types}/utilities/eventListener/index.d.ts +1 -0
  563. package/dist/types/utilities/eventListener/index.d.ts.map +1 -0
  564. package/dist/{esm → types}/utilities/getClosestImageId.d.ts +1 -0
  565. package/dist/types/utilities/getClosestImageId.d.ts.map +1 -0
  566. package/dist/{esm → types}/utilities/getClosestStackImageIndexForPoint.d.ts +1 -0
  567. package/dist/types/utilities/getClosestStackImageIndexForPoint.d.ts.map +1 -0
  568. package/dist/{esm → types}/utilities/getImageLegacy.d.ts +1 -0
  569. package/dist/types/utilities/getImageLegacy.d.ts.map +1 -0
  570. package/dist/{esm → types}/utilities/getImageSliceDataForVolumeViewport.d.ts +1 -0
  571. package/dist/types/utilities/getImageSliceDataForVolumeViewport.d.ts.map +1 -0
  572. package/dist/{esm → types}/utilities/getMinMax.d.ts +1 -0
  573. package/dist/types/utilities/getMinMax.d.ts.map +1 -0
  574. package/dist/{esm → types}/utilities/getRuntimeId.d.ts +1 -0
  575. package/dist/types/utilities/getRuntimeId.d.ts.map +1 -0
  576. package/dist/{esm → types}/utilities/getScalarDataType.d.ts +1 -0
  577. package/dist/types/utilities/getScalarDataType.d.ts.map +1 -0
  578. package/dist/{esm → types}/utilities/getScalingParameters.d.ts +1 -0
  579. package/dist/types/utilities/getScalingParameters.d.ts.map +1 -0
  580. package/dist/{esm → types}/utilities/getSliceRange.d.ts +1 -0
  581. package/dist/types/utilities/getSliceRange.d.ts.map +1 -0
  582. package/dist/{esm → types}/utilities/getSpacingInNormalDirection.d.ts +1 -0
  583. package/dist/types/utilities/getSpacingInNormalDirection.d.ts.map +1 -0
  584. package/dist/{esm → types}/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -0
  585. package/dist/types/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts.map +1 -0
  586. package/dist/{esm → types}/utilities/getViewportImageCornersInWorld.d.ts +1 -0
  587. package/dist/types/utilities/getViewportImageCornersInWorld.d.ts.map +1 -0
  588. package/dist/{esm → types}/utilities/getViewportModality.d.ts +1 -0
  589. package/dist/types/utilities/getViewportModality.d.ts.map +1 -0
  590. package/dist/{esm → types}/utilities/getViewportsWithImageURI.d.ts +1 -0
  591. package/dist/types/utilities/getViewportsWithImageURI.d.ts.map +1 -0
  592. package/dist/{esm → types}/utilities/getViewportsWithVolumeId.d.ts +1 -0
  593. package/dist/types/utilities/getViewportsWithVolumeId.d.ts.map +1 -0
  594. package/dist/{esm → types}/utilities/getVoiFromSigmoidRGBTransferFunction.d.ts +1 -0
  595. package/dist/types/utilities/getVoiFromSigmoidRGBTransferFunction.d.ts.map +1 -0
  596. package/dist/{esm → types}/utilities/getVolumeActorCorners.d.ts +1 -0
  597. package/dist/types/utilities/getVolumeActorCorners.d.ts.map +1 -0
  598. package/dist/{esm → types}/utilities/getVolumeSliceRangeInfo.d.ts +1 -0
  599. package/dist/types/utilities/getVolumeSliceRangeInfo.d.ts.map +1 -0
  600. package/dist/{esm → types}/utilities/getVolumeViewportScrollInfo.d.ts +1 -0
  601. package/dist/types/utilities/getVolumeViewportScrollInfo.d.ts.map +1 -0
  602. package/dist/{esm → types}/utilities/getVolumeViewportsContainingSameVolumes.d.ts +1 -0
  603. package/dist/types/utilities/getVolumeViewportsContainingSameVolumes.d.ts.map +1 -0
  604. package/dist/{esm → types}/utilities/hasNaNValues.d.ts +1 -0
  605. package/dist/types/utilities/hasNaNValues.d.ts.map +1 -0
  606. package/dist/{esm → types}/utilities/imageIdToURI.d.ts +1 -0
  607. package/dist/types/utilities/imageIdToURI.d.ts.map +1 -0
  608. package/dist/types/utilities/imageRetrieveMetadataProvider.d.ts +8 -0
  609. package/dist/types/utilities/imageRetrieveMetadataProvider.d.ts.map +1 -0
  610. package/dist/{esm → types}/utilities/imageToWorldCoords.d.ts +1 -0
  611. package/dist/types/utilities/imageToWorldCoords.d.ts.map +1 -0
  612. package/dist/{esm → types}/utilities/index.d.ts +6 -1
  613. package/dist/types/utilities/index.d.ts.map +1 -0
  614. package/dist/{esm → types}/utilities/indexWithinDimensions.d.ts +1 -0
  615. package/dist/types/utilities/indexWithinDimensions.d.ts.map +1 -0
  616. package/dist/{esm → types}/utilities/invertRgbTransferFunction.d.ts +1 -0
  617. package/dist/types/utilities/invertRgbTransferFunction.d.ts.map +1 -0
  618. package/dist/{esm → types}/utilities/isEqual.d.ts +1 -0
  619. package/dist/types/utilities/isEqual.d.ts.map +1 -0
  620. package/dist/{esm → types}/utilities/isOpposite.d.ts +1 -0
  621. package/dist/types/utilities/isOpposite.d.ts.map +1 -0
  622. package/dist/{esm → types}/utilities/isPTPrescaledWithSUV.d.ts +1 -0
  623. package/dist/types/utilities/isPTPrescaledWithSUV.d.ts.map +1 -0
  624. package/dist/{esm → types}/utilities/isTypedArray.d.ts +1 -0
  625. package/dist/types/utilities/isTypedArray.d.ts.map +1 -0
  626. package/dist/types/utilities/isVideoTransferSyntax.d.ts +3 -0
  627. package/dist/types/utilities/isVideoTransferSyntax.d.ts.map +1 -0
  628. package/dist/{esm → types}/utilities/loadImageToCanvas.d.ts +1 -0
  629. package/dist/types/utilities/loadImageToCanvas.d.ts.map +1 -0
  630. package/dist/{esm → types}/utilities/planar.d.ts +1 -0
  631. package/dist/types/utilities/planar.d.ts.map +1 -0
  632. package/dist/{esm → types}/utilities/renderToCanvasCPU.d.ts +1 -0
  633. package/dist/types/utilities/renderToCanvasCPU.d.ts.map +1 -0
  634. package/dist/{esm → types}/utilities/renderToCanvasGPU.d.ts +1 -0
  635. package/dist/types/utilities/renderToCanvasGPU.d.ts.map +1 -0
  636. package/dist/{esm → types}/utilities/scaleRgbTransferFunction.d.ts +1 -0
  637. package/dist/types/utilities/scaleRgbTransferFunction.d.ts.map +1 -0
  638. package/dist/{esm → types}/utilities/snapFocalPointToSlice.d.ts +1 -0
  639. package/dist/types/utilities/snapFocalPointToSlice.d.ts.map +1 -0
  640. package/dist/{esm → types}/utilities/spatialRegistrationMetadataProvider.d.ts +1 -0
  641. package/dist/types/utilities/spatialRegistrationMetadataProvider.d.ts.map +1 -0
  642. package/dist/{esm → types}/utilities/transferFunctionUtils.d.ts +1 -0
  643. package/dist/types/utilities/transferFunctionUtils.d.ts.map +1 -0
  644. package/dist/{esm → types}/utilities/transformWorldToIndex.d.ts +1 -0
  645. package/dist/types/utilities/transformWorldToIndex.d.ts.map +1 -0
  646. package/dist/{esm → types}/utilities/triggerEvent.d.ts +1 -0
  647. package/dist/types/utilities/triggerEvent.d.ts.map +1 -0
  648. package/dist/{esm → types}/utilities/uuidv4.d.ts +1 -0
  649. package/dist/types/utilities/uuidv4.d.ts.map +1 -0
  650. package/dist/{esm → types}/utilities/windowLevel.d.ts +1 -0
  651. package/dist/types/utilities/windowLevel.d.ts.map +1 -0
  652. package/dist/{esm → types}/utilities/worldToImageCoords.d.ts +1 -0
  653. package/dist/types/utilities/worldToImageCoords.d.ts.map +1 -0
  654. package/dist/umd/index.js +1 -1
  655. package/dist/umd/index.js.map +1 -1
  656. package/package.json +3 -3
  657. package/src/RenderingEngine/StackViewport.ts +148 -107
  658. package/src/RenderingEngine/VideoViewport.ts +255 -16
  659. package/src/RenderingEngine/Viewport.ts +1 -0
  660. package/src/RenderingEngine/VolumeViewport.ts +7 -0
  661. package/{dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts → src/RenderingEngine/vtkClasses/vtkSlabCamera.ts} +153 -12
  662. package/src/cache/cache.ts +4 -1
  663. package/src/enums/Events.ts +10 -9
  664. package/src/enums/ImageQualityStatus.ts +37 -0
  665. package/src/enums/MetadataModules.ts +20 -0
  666. package/src/enums/index.ts +4 -0
  667. package/src/index.ts +19 -2
  668. package/src/loaders/ProgressiveRetrieveImages.ts +380 -0
  669. package/src/loaders/configuration/interleavedRetrieve.ts +96 -0
  670. package/src/loaders/configuration/sequentialRetrieve.ts +17 -0
  671. package/src/loaders/configuration/singleRetrieve.ts +18 -0
  672. package/src/loaders/fillNearbyFrames.ts +53 -0
  673. package/src/loaders/imageLoader.ts +2 -1
  674. package/src/metaData.ts +4 -1
  675. package/src/types/CPUIImageData.ts +1 -1
  676. package/src/types/EventTypes.ts +12 -25
  677. package/src/types/ICache.ts +2 -1
  678. package/src/types/IImage.ts +7 -4
  679. package/src/types/IRetrieveConfiguration.ts +194 -0
  680. package/src/types/IStackViewport.ts +4 -1
  681. package/src/types/IStreamingVolumeProperties.ts +3 -1
  682. package/src/types/IVideoViewport.ts +7 -0
  683. package/src/types/IViewport.ts +3 -0
  684. package/src/types/ImageLoadListener.ts +20 -0
  685. package/src/types/VideoViewportProperties.ts +1 -3
  686. package/src/types/index.ts +11 -0
  687. package/src/utilities/ProgressiveIterator.ts +190 -0
  688. package/src/utilities/decimate.ts +17 -0
  689. package/src/utilities/imageRetrieveMetadataProvider.ts +39 -0
  690. package/src/utilities/index.ts +8 -0
  691. package/src/utilities/isVideoTransferSyntax.ts +26 -0
  692. package/src/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +0 -781
  693. package/src/RenderingEngine/vtkClasses/vtkSlabCamera.js +0 -155
@@ -1,7 +1,9 @@
1
1
  import { VideoViewport as VideoViewportEnum } from '../enums';
2
- import { IVideoViewport, VideoViewportProperties, Point3, Point2, ICamera, VideoViewportInput } from '../types';
2
+ import { IVideoViewport, VideoViewportProperties, Point3, Point2, ICamera, VideoViewportInput, VOIRange } from '../types';
3
3
  import Viewport from './Viewport';
4
4
  declare class VideoViewport extends Viewport implements IVideoViewport {
5
+ modality: any;
6
+ protected imageId: string;
5
7
  readonly uid: any;
6
8
  readonly renderingEngineId: string;
7
9
  readonly canvasContext: CanvasRenderingContext2D;
@@ -12,13 +14,20 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
12
14
  private mute;
13
15
  private isPlaying;
14
16
  private scrollSpeed;
17
+ private playbackRate;
18
+ protected metadata: any;
15
19
  private fps;
16
20
  private videoCamera;
21
+ private feFilter;
22
+ private averageWhite;
23
+ private voiRange;
17
24
  constructor(props: VideoViewportInput);
18
25
  static get useCustomRenderingPipeline(): boolean;
19
26
  private addEventListeners;
20
27
  private removeEventListeners;
21
28
  private elementDisabledHandler;
29
+ private _getImageDataMetadata;
30
+ setVideo(imageIds: string | string[], frameNumber?: number): Promise<unknown>;
22
31
  setVideoURL(videoURL: string): Promise<unknown>;
23
32
  togglePlayPause(): boolean;
24
33
  play(): void;
@@ -28,19 +37,49 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
28
37
  end(): Promise<void>;
29
38
  setTime(timeInSeconds: number): Promise<void>;
30
39
  setFrame(frame: number): Promise<void>;
31
- setProperties(videoInterface: VideoViewportProperties): void;
40
+ setProperties(props: VideoViewportProperties): void;
32
41
  setPlaybackRate(rate?: number): void;
33
42
  setScrollSpeed(scrollSpeed?: number, unit?: VideoViewportEnum.SpeedUnit): void;
34
43
  getProperties: () => VideoViewportProperties;
35
44
  resetProperties(): void;
36
- getImageData(): any;
45
+ protected getScalarData(): Uint8ClampedArray;
46
+ getImageData(): {
47
+ dimensions: any;
48
+ spacing: any;
49
+ origin: any;
50
+ direction: any;
51
+ metadata: {
52
+ Modality: any;
53
+ };
54
+ imageData: {
55
+ getDirection: () => any;
56
+ getDimensions: () => any;
57
+ getRange: () => number[];
58
+ getScalarData: () => Uint8ClampedArray;
59
+ getSpacing: () => any;
60
+ worldToIndex: (point: Point3) => number[];
61
+ indexToWorld: (point: Point3) => Point3;
62
+ };
63
+ hasPixelSpacing: boolean;
64
+ calibration: import("../types").IImageCalibration;
65
+ preScale: {
66
+ scaled: boolean;
67
+ };
68
+ };
69
+ setVOI(voiRange: VOIRange): void;
70
+ setWindowLevel(windowWidth?: number, windowCenter?: number): void;
71
+ setAverageWhite(averageWhite: [number, number, number]): void;
72
+ protected setColorTransform(): void;
37
73
  setCamera(camera: ICamera): void;
38
74
  getCamera(): ICamera;
39
75
  resetCamera: () => boolean;
76
+ getNumberOfSlices: () => number;
40
77
  getFrameOfReferenceUID: () => string;
41
78
  resize: () => void;
42
79
  canvasToWorld: (canvasPos: Point2) => Point3;
43
80
  worldToCanvas: (worldPos: Point3) => Point2;
81
+ protected canvasToIndex: (canvasPos: Point2) => Point2;
82
+ protected indexToCanvas: (indexPos: Point2) => Point2;
44
83
  private refreshRenderValues;
45
84
  private getWorldToCanvasRatio;
46
85
  private getCanvasToWorldRatio;
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -12,7 +35,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
36
  };
14
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
+ const gl_matrix_1 = require("gl-matrix");
15
39
  const enums_1 = require("../enums");
40
+ const metaData = __importStar(require("../metaData"));
16
41
  const transform_1 = require("./helpers/cpuFallback/rendering/transform");
17
42
  const utilities_1 = require("../utilities");
18
43
  const Viewport_1 = __importDefault(require("./Viewport"));
@@ -26,15 +51,23 @@ class VideoViewport extends Viewport_1.default {
26
51
  this.mute = true;
27
52
  this.isPlaying = false;
28
53
  this.scrollSpeed = 1;
54
+ this.playbackRate = 1;
29
55
  this.fps = 30;
30
56
  this.videoCamera = {
31
57
  panWorld: [0, 0],
32
58
  parallelScale: 1,
33
59
  };
60
+ this.voiRange = {
61
+ lower: 0,
62
+ upper: 255,
63
+ };
34
64
  this.getProperties = () => {
35
65
  return {
36
66
  loop: this.videoElement.loop,
37
67
  muted: this.videoElement.muted,
68
+ playbackRate: this.playbackRate,
69
+ scrollSpeed: this.scrollSpeed,
70
+ voiRange: Object.assign({}, this.voiRange),
38
71
  };
39
72
  };
40
73
  this.resetCamera = () => {
@@ -45,6 +78,9 @@ class VideoViewport extends Viewport_1.default {
45
78
  }
46
79
  return true;
47
80
  };
81
+ this.getNumberOfSlices = () => {
82
+ return (this.videoElement.duration * this.fps) / this.scrollSpeed;
83
+ };
48
84
  this.getFrameOfReferenceUID = () => {
49
85
  return this.videoElement.src;
50
86
  };
@@ -88,6 +124,18 @@ class VideoViewport extends Viewport_1.default {
88
124
  const canvasPos = [subCanvasPos[0], subCanvasPos[1]];
89
125
  return canvasPos;
90
126
  };
127
+ this.canvasToIndex = (canvasPos) => {
128
+ const [x, y] = canvasPos;
129
+ const ratio = this.videoWidth / this.canvas.width;
130
+ const pan = this.getPan();
131
+ return [(x + pan[0]) * ratio, (y + pan[1]) * ratio];
132
+ };
133
+ this.indexToCanvas = (indexPos) => {
134
+ const [x, y] = indexPos;
135
+ const ratio = this.canvas.width / this.videoWidth;
136
+ const pan = this.getPan();
137
+ return [x * ratio - pan[0], y * ratio - pan[1]];
138
+ };
91
139
  this.customRenderViewportToCanvas = () => {
92
140
  this.renderFrame();
93
141
  };
@@ -148,6 +196,55 @@ class VideoViewport extends Viewport_1.default {
148
196
  this.removeEventListeners();
149
197
  this.videoElement.remove();
150
198
  }
199
+ _getImageDataMetadata() {
200
+ const imagePlaneModule = metaData.get(enums_1.MetadataModules.IMAGE_PLANE, this.imageId);
201
+ let rowCosines = imagePlaneModule.rowCosines;
202
+ let columnCosines = imagePlaneModule.columnCosines;
203
+ if (rowCosines == null || columnCosines == null) {
204
+ rowCosines = [1, 0, 0];
205
+ columnCosines = [0, 1, 0];
206
+ }
207
+ const rowCosineVec = gl_matrix_1.vec3.fromValues(rowCosines[0], rowCosines[1], rowCosines[2]);
208
+ const colCosineVec = gl_matrix_1.vec3.fromValues(columnCosines[0], columnCosines[1], columnCosines[2]);
209
+ const scanAxisNormal = gl_matrix_1.vec3.create();
210
+ gl_matrix_1.vec3.cross(scanAxisNormal, rowCosineVec, colCosineVec);
211
+ let origin = imagePlaneModule.imagePositionPatient;
212
+ if (origin == null) {
213
+ origin = [0, 0, 0];
214
+ }
215
+ const xSpacing = imagePlaneModule.columnPixelSpacing;
216
+ const ySpacing = imagePlaneModule.rowPixelSpacing;
217
+ const xVoxels = imagePlaneModule.columns;
218
+ const yVoxels = imagePlaneModule.rows;
219
+ const zSpacing = 1;
220
+ const zVoxels = 1;
221
+ return {
222
+ bitsAllocated: 8,
223
+ numComps: 3,
224
+ origin,
225
+ direction: [...rowCosineVec, ...colCosineVec, ...scanAxisNormal],
226
+ dimensions: [xVoxels, yVoxels, zVoxels],
227
+ spacing: [xSpacing, ySpacing, zSpacing],
228
+ numVoxels: xVoxels * yVoxels * zVoxels,
229
+ imagePlaneModule,
230
+ };
231
+ }
232
+ setVideo(imageIds, frameNumber) {
233
+ this.imageId = Array.isArray(imageIds) ? imageIds[0] : imageIds;
234
+ const { imageId } = this;
235
+ const { rendered } = metaData.get(enums_1.MetadataModules.IMAGE_URL, imageId);
236
+ const generalSeries = metaData.get(enums_1.MetadataModules.GENERAL_SERIES, imageId);
237
+ this.modality = generalSeries === null || generalSeries === void 0 ? void 0 : generalSeries.Modality;
238
+ this.metadata = this._getImageDataMetadata();
239
+ return this.setVideoURL(rendered).then(() => {
240
+ const { cineRate = 30 } = metaData.get(enums_1.MetadataModules.CINE, imageId);
241
+ this.fps = cineRate;
242
+ if (frameNumber !== undefined) {
243
+ this.pause();
244
+ this.setFrame(frameNumber);
245
+ }
246
+ });
247
+ }
151
248
  setVideoURL(videoURL) {
152
249
  return __awaiter(this, void 0, void 0, function* () {
153
250
  return new Promise((resolve) => {
@@ -183,10 +280,8 @@ class VideoViewport extends Viewport_1.default {
183
280
  }
184
281
  pause() {
185
282
  return __awaiter(this, void 0, void 0, function* () {
186
- if (this.isPlaying) {
187
- yield this.videoElement.pause();
188
- this.isPlaying = false;
189
- }
283
+ yield this.videoElement.pause();
284
+ this.isPlaying = false;
190
285
  });
191
286
  }
192
287
  scroll(delta = 1) {
@@ -211,7 +306,6 @@ class VideoViewport extends Viewport_1.default {
211
306
  videoElement.currentTime = 0;
212
307
  if (videoElement.paused) {
213
308
  const seekEventListener = (evt) => {
214
- console.log('seeked');
215
309
  renderFrame();
216
310
  videoElement.removeEventListener('seeked', seekEventListener);
217
311
  };
@@ -252,18 +346,25 @@ class VideoViewport extends Viewport_1.default {
252
346
  this.setTime((frame - 1) / this.fps);
253
347
  });
254
348
  }
255
- setProperties(videoInterface) {
256
- if (videoInterface.loop !== undefined) {
257
- this.videoElement.loop = videoInterface.loop;
349
+ setProperties(props) {
350
+ if (props.loop !== undefined) {
351
+ this.videoElement.loop = props.loop;
352
+ }
353
+ if (props.muted !== undefined) {
354
+ this.videoElement.muted = props.muted;
355
+ }
356
+ if (props.playbackRate !== undefined) {
357
+ this.setPlaybackRate(props.playbackRate);
258
358
  }
259
- if (videoInterface.muted !== undefined) {
260
- this.videoElement.muted = videoInterface.muted;
359
+ if (props.scrollSpeed !== undefined) {
360
+ this.setScrollSpeed(props.scrollSpeed);
261
361
  }
262
- if (videoInterface.playbackRate !== undefined) {
263
- this.setPlaybackRate(videoInterface.playbackRate);
362
+ if (props.voiRange) {
363
+ this.setVOI(props.voiRange);
264
364
  }
265
365
  }
266
366
  setPlaybackRate(rate = 1) {
367
+ this.playbackRate = rate;
267
368
  if (rate < 0.0625) {
268
369
  this.pause();
269
370
  return;
@@ -286,8 +387,86 @@ class VideoViewport extends Viewport_1.default {
286
387
  muted: true,
287
388
  });
288
389
  }
390
+ getScalarData() {
391
+ const canvas = document.createElement('canvas');
392
+ canvas.width = this.videoWidth;
393
+ canvas.height = this.videoHeight;
394
+ const context = canvas.getContext('2d');
395
+ context.drawImage(this.videoElement, 0, 0);
396
+ const canvasData = context.getImageData(0, 0, this.videoWidth, this.videoHeight);
397
+ const { data: scalarData } = canvasData;
398
+ scalarData.getRange = () => [0, 255];
399
+ return scalarData;
400
+ }
289
401
  getImageData() {
290
- return null;
402
+ const { metadata } = this;
403
+ const spacing = metadata.spacing;
404
+ return {
405
+ dimensions: metadata.dimensions,
406
+ spacing,
407
+ origin: metadata.origin,
408
+ direction: metadata.direction,
409
+ metadata: { Modality: this.modality },
410
+ imageData: {
411
+ getDirection: () => metadata.direction,
412
+ getDimensions: () => metadata.dimensions,
413
+ getRange: () => [0, 255],
414
+ getScalarData: () => this.getScalarData(),
415
+ getSpacing: () => metadata.spacing,
416
+ worldToIndex: (point) => {
417
+ const canvasPoint = this.worldToCanvas(point);
418
+ const pixelCoord = this.canvasToIndex(canvasPoint);
419
+ return [pixelCoord[0], pixelCoord[1], 0];
420
+ },
421
+ indexToWorld: (point) => {
422
+ const canvasPoint = this.indexToCanvas([point[0], point[1]]);
423
+ return this.canvasToWorld(canvasPoint);
424
+ },
425
+ },
426
+ hasPixelSpacing: this.hasPixelSpacing,
427
+ calibration: this.calibration,
428
+ preScale: {
429
+ scaled: false,
430
+ },
431
+ };
432
+ }
433
+ setVOI(voiRange) {
434
+ this.voiRange = voiRange;
435
+ this.setColorTransform();
436
+ }
437
+ setWindowLevel(windowWidth = 256, windowCenter = 128) {
438
+ const lower = windowCenter - windowWidth / 2;
439
+ const upper = windowCenter + windowWidth / 2 - 1;
440
+ this.setVOI({ lower, upper });
441
+ this.setColorTransform();
442
+ }
443
+ setAverageWhite(averageWhite) {
444
+ this.averageWhite = averageWhite;
445
+ this.setColorTransform();
446
+ }
447
+ setColorTransform() {
448
+ if (!this.voiRange && !this.averageWhite) {
449
+ this.feFilter = null;
450
+ return;
451
+ }
452
+ const white = this.averageWhite || [255, 255, 255];
453
+ const maxWhite = Math.max(...white);
454
+ const scaleWhite = white.map((c) => maxWhite / c);
455
+ const { lower = 0, upper = 255 } = this.voiRange || {};
456
+ const wlScale = (upper - lower + 1) / 255;
457
+ const wlDelta = lower / 255;
458
+ this.feFilter = `url('data:image/svg+xml,\
459
+ <svg xmlns="http://www.w3.org/2000/svg">\
460
+ <filter id="colour" color-interpolation-filters="linearRGB">\
461
+ <feColorMatrix type="matrix" \
462
+ values="\
463
+ ${scaleWhite[0] * wlScale} 0 0 0 ${wlDelta} \
464
+ 0 ${scaleWhite[1] * wlScale} 0 0 ${wlDelta} \
465
+ 0 0 ${scaleWhite[2] * wlScale} 0 ${wlDelta} \
466
+ 0 0 0 1 0" />\
467
+ </filter>\
468
+ </svg>#colour')`;
469
+ this.canvas.style.filter = this.feFilter;
291
470
  }
292
471
  setCamera(camera) {
293
472
  const { parallelScale, focalPoint } = camera;
@@ -1 +1 @@
1
- {"version":3,"file":"VideoViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VideoViewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VideoViewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VideoViewport.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ declare class Viewport implements IViewport {
39
39
  resize: () => void;
40
40
  getProperties: () => void;
41
41
  updateRenderingPipeline: () => void;
42
+ getNumberOfSlices: () => number;
42
43
  static get useCustomRenderingPipeline(): boolean;
43
44
  setRendered(): void;
44
45
  getRenderingEngine(): IRenderingEngine;
@@ -1 +1 @@
1
- {"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/Viewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../../src/RenderingEngine/Viewport.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ declare class VolumeViewport extends BaseVolumeViewport {
6
6
  private _useAcquisitionPlaneForViewPlane;
7
7
  constructor(props: ViewportInput);
8
8
  setVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean, suppressEvents?: boolean): Promise<void>;
9
+ getNumberOfSlices: () => number;
9
10
  addVolumes(volumeInputArray: Array<IVolumeInput>, immediate?: boolean, suppressEvents?: boolean): Promise<void>;
10
11
  setOrientation(orientation: OrientationAxis, immediate?: boolean): void;
11
12
  private _getAcquisitionPlaneOrientation;
@@ -21,10 +21,15 @@ const utilities_1 = require("../utilities");
21
21
  const BaseVolumeViewport_1 = __importDefault(require("./BaseVolumeViewport"));
22
22
  const setDefaultVolumeVOI_1 = __importDefault(require("./helpers/setDefaultVolumeVOI"));
23
23
  const transferFunctionUtils_1 = require("../utilities/transferFunctionUtils");
24
+ const getImageSliceDataForVolumeViewport_1 = __importDefault(require("../utilities/getImageSliceDataForVolumeViewport"));
24
25
  class VolumeViewport extends BaseVolumeViewport_1.default {
25
26
  constructor(props) {
26
27
  super(props);
27
28
  this._useAcquisitionPlaneForViewPlane = false;
29
+ this.getNumberOfSlices = () => {
30
+ const { numberOfSlices } = (0, getImageSliceDataForVolumeViewport_1.default)(this);
31
+ return numberOfSlices;
32
+ };
28
33
  this.getCurrentImageIdIndex = (volumeId) => {
29
34
  const { viewPlaneNormal, focalPoint } = this.getCamera();
30
35
  const { origin, direction, spacing } = this.getImageData(volumeId);