@cornerstonejs/core 2.0.0-beta.20 → 2.0.0-beta.22

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 (341) hide show
  1. package/dist/esm/RenderingEngine/BaseVolumeViewport.d.ts +23 -13
  2. package/dist/esm/RenderingEngine/BaseVolumeViewport.js +52 -50
  3. package/dist/esm/RenderingEngine/CanvasActor/CanvasMapper.d.ts +1 -1
  4. package/dist/esm/RenderingEngine/CanvasActor/CanvasProperties.d.ts +1 -1
  5. package/dist/esm/RenderingEngine/CanvasActor/index.js +2 -1
  6. package/dist/esm/RenderingEngine/RenderingEngine.d.ts +8 -10
  7. package/dist/esm/RenderingEngine/RenderingEngine.js +20 -18
  8. package/dist/esm/RenderingEngine/StackViewport.d.ts +28 -19
  9. package/dist/esm/RenderingEngine/StackViewport.js +81 -58
  10. package/dist/esm/RenderingEngine/VideoViewport.d.ts +19 -28
  11. package/dist/esm/RenderingEngine/VideoViewport.js +61 -24
  12. package/dist/esm/RenderingEngine/Viewport.d.ts +25 -14
  13. package/dist/esm/RenderingEngine/Viewport.js +24 -15
  14. package/dist/esm/RenderingEngine/VolumeViewport.d.ts +21 -9
  15. package/dist/esm/RenderingEngine/VolumeViewport.js +95 -10
  16. package/dist/esm/RenderingEngine/VolumeViewport3D.d.ts +3 -3
  17. package/dist/esm/RenderingEngine/VolumeViewport3D.js +10 -3
  18. package/dist/esm/RenderingEngine/WSIViewport.d.ts +58 -0
  19. package/dist/esm/RenderingEngine/WSIViewport.js +414 -0
  20. package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.d.ts +1 -1
  21. package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.js +3 -3
  22. package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -1
  23. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.d.ts +1 -1
  24. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.js +1 -1
  25. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.d.ts +2 -2
  26. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.js +15 -5
  27. package/dist/esm/RenderingEngine/helpers/cpuFallback/drawImageSync.d.ts +1 -1
  28. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/calculateTransform.d.ts +1 -1
  29. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/canvasToPixel.d.ts +1 -1
  30. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/correctShift.d.ts +3 -3
  31. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/createViewport.d.ts +1 -1
  32. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/doesImageNeedToBeRendered.d.ts +1 -1
  33. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/fitToWindow.d.ts +1 -1
  34. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.d.ts +1 -1
  35. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.js +1 -1
  36. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.d.ts +1 -1
  37. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.js +2 -2
  38. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getDefaultViewport.d.ts +1 -1
  39. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageFitScale.d.ts +1 -1
  40. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageSize.d.ts +1 -1
  41. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.d.ts +1 -1
  42. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.js +1 -1
  43. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getTransform.d.ts +1 -1
  44. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/initializeRenderCanvas.d.ts +1 -1
  45. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.d.ts +2 -1
  46. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.js +1 -1
  47. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/pixelToCanvas.d.ts +1 -1
  48. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.d.ts +1 -1
  49. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.js +3 -4
  50. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.d.ts +1 -1
  51. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js +2 -3
  52. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +3 -3
  53. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resetCamera.d.ts +1 -1
  54. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resize.d.ts +1 -1
  55. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/saveLastRendered.d.ts +1 -1
  56. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setDefaultViewport.d.ts +1 -1
  57. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setToPixelCoordinateSystem.d.ts +1 -1
  58. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.d.ts +1 -1
  59. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.js +1 -1
  60. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.d.ts +1 -1
  61. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.js +1 -1
  62. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +1 -1
  63. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.d.ts +1 -1
  64. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.js +1 -1
  65. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +1 -1
  66. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +1 -1
  67. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.d.ts +1 -1
  68. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.js +1 -1
  69. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.d.ts +1 -1
  70. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.js +1 -1
  71. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/transform.d.ts +1 -1
  72. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/validator.d.ts +2 -2
  73. package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +3 -3
  74. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +4 -7
  75. package/dist/esm/RenderingEngine/helpers/createVolumeMapper.d.ts +4 -1
  76. package/dist/esm/RenderingEngine/helpers/getOrCreateCanvas.js +5 -4
  77. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +2 -2
  78. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +13 -37
  79. package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -1
  80. package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.d.ts +2 -0
  81. package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.js +2 -0
  82. package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.d.ts +1 -1
  83. package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.js +4 -4
  84. package/dist/esm/RenderingEngine/renderingEngineCache.d.ts +1 -1
  85. package/dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +4 -2
  86. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +87 -78
  87. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLViewNodeFactory.js +1 -1
  88. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +83 -42
  89. package/dist/esm/Settings.d.ts +1 -1
  90. package/dist/esm/cache/cache.d.ts +15 -19
  91. package/dist/esm/cache/cache.js +112 -57
  92. package/dist/esm/cache/classes/Contour.d.ts +4 -4
  93. package/dist/esm/cache/classes/ContourSet.d.ts +3 -3
  94. package/dist/esm/cache/classes/ImageVolume.d.ts +19 -19
  95. package/dist/esm/cache/classes/ImageVolume.js +49 -254
  96. package/dist/esm/cache/classes/Surface.d.ts +3 -3
  97. package/dist/esm/cache/index.d.ts +1 -2
  98. package/dist/esm/cache/index.js +1 -2
  99. package/dist/esm/constants/cpuColormaps.d.ts +1 -1
  100. package/dist/esm/constants/viewportPresets.d.ts +1 -1
  101. package/dist/esm/enums/GenerateImageType.d.ts +5 -0
  102. package/dist/esm/enums/GenerateImageType.js +6 -0
  103. package/dist/esm/enums/MetadataModules.d.ts +2 -1
  104. package/dist/esm/enums/MetadataModules.js +1 -0
  105. package/dist/esm/enums/ViewportType.d.ts +2 -1
  106. package/dist/esm/enums/ViewportType.js +1 -0
  107. package/dist/esm/enums/index.d.ts +2 -2
  108. package/dist/esm/enums/index.js +2 -2
  109. package/dist/esm/eventTarget.js +2 -3
  110. package/dist/esm/getEnabledElement.d.ts +1 -1
  111. package/dist/esm/global.d.ts +0 -1
  112. package/dist/esm/index.d.ts +9 -5
  113. package/dist/esm/index.js +8 -4
  114. package/dist/esm/init.d.ts +5 -8
  115. package/dist/esm/init.js +22 -83
  116. package/dist/esm/loaders/ProgressiveRetrieveImages.d.ts +5 -5
  117. package/dist/esm/loaders/ProgressiveRetrieveImages.js +7 -3
  118. package/dist/esm/loaders/configuration/interleavedRetrieve.d.ts +1 -1
  119. package/dist/esm/loaders/fillNearbyFrames.d.ts +2 -2
  120. package/dist/esm/loaders/geometryLoader.d.ts +3 -3
  121. package/dist/esm/loaders/geometryLoader.js +1 -1
  122. package/dist/esm/loaders/imageLoader.d.ts +12 -17
  123. package/dist/esm/loaders/imageLoader.js +179 -96
  124. package/dist/esm/loaders/utils/contourSet/createContourSet.d.ts +1 -1
  125. package/dist/esm/loaders/utils/contourSet/validateContourSet.d.ts +1 -1
  126. package/dist/esm/loaders/utils/surface/createSurface.d.ts +1 -1
  127. package/dist/esm/loaders/utils/surface/validateSurface.d.ts +1 -1
  128. package/dist/esm/loaders/volumeLoader.d.ts +15 -22
  129. package/dist/esm/loaders/volumeLoader.js +88 -207
  130. package/dist/esm/metaData.d.ts +2 -4
  131. package/dist/esm/requestPool/requestPoolManager.d.ts +7 -9
  132. package/dist/esm/requestPool/requestPoolManager.js +1 -1
  133. package/dist/esm/types/AABB2.d.ts +2 -2
  134. package/dist/esm/types/AABB3.d.ts +2 -2
  135. package/dist/esm/types/ActorSliceRange.d.ts +5 -5
  136. package/dist/esm/types/BoundsIJK.d.ts +1 -1
  137. package/dist/esm/types/BoundsLPS.d.ts +1 -1
  138. package/dist/esm/types/CPUFallbackColormap.d.ts +3 -3
  139. package/dist/esm/types/CPUFallbackColormapData.d.ts +4 -4
  140. package/dist/esm/types/CPUFallbackColormapsData.d.ts +3 -5
  141. package/dist/esm/types/CPUFallbackEnabledElement.d.ts +2 -37
  142. package/dist/esm/types/CPUFallbackLUT.d.ts +4 -3
  143. package/dist/esm/types/CPUFallbackLookupTable.d.ts +2 -2
  144. package/dist/esm/types/CPUFallbackRenderingTools.d.ts +5 -5
  145. package/dist/esm/types/CPUFallbackTransform.d.ts +3 -3
  146. package/dist/esm/types/CPUFallbackViewport.d.ts +6 -6
  147. package/dist/esm/types/CPUFallbackViewportDisplayedArea.d.ts +3 -3
  148. package/dist/esm/types/CPUIImageData.d.ts +17 -9
  149. package/dist/esm/types/Color.d.ts +1 -1
  150. package/dist/esm/types/Colormap.d.ts +7 -7
  151. package/dist/esm/types/ContourData.d.ts +6 -6
  152. package/dist/esm/types/Cornerstone3DConfig.d.ts +7 -7
  153. package/dist/esm/types/CustomEventType.d.ts +2 -2
  154. package/dist/esm/types/EventTypes.d.ts +55 -55
  155. package/dist/esm/types/FlipDirection.d.ts +3 -3
  156. package/dist/esm/types/IActor.d.ts +3 -3
  157. package/dist/esm/types/ICache.d.ts +4 -4
  158. package/dist/esm/types/ICachedGeometry.d.ts +3 -3
  159. package/dist/esm/types/ICachedImage.d.ts +3 -2
  160. package/dist/esm/types/ICachedVolume.d.ts +3 -2
  161. package/dist/esm/types/ICamera.d.ts +3 -3
  162. package/dist/esm/types/IContour.d.ts +4 -3
  163. package/dist/esm/types/IContourSet.d.ts +5 -2
  164. package/dist/esm/types/IDynamicImageVolume.d.ts +3 -3
  165. package/dist/esm/types/IEnabledElement.d.ts +2 -2
  166. package/dist/esm/types/IGeometry.d.ts +4 -4
  167. package/dist/esm/types/IImage.d.ts +48 -11
  168. package/dist/esm/types/IImageCalibration.d.ts +2 -2
  169. package/dist/esm/types/IImageData.d.ts +11 -4
  170. package/dist/esm/types/IImageFrame.d.ts +42 -0
  171. package/dist/esm/types/IImageFrame.js +1 -0
  172. package/dist/esm/types/IImageVolume.d.ts +17 -14
  173. package/dist/esm/types/ILoadObject.d.ts +3 -3
  174. package/dist/esm/types/IPointsManager.d.ts +23 -0
  175. package/dist/esm/types/IPointsManager.js +1 -0
  176. package/dist/esm/types/IRLEVoxelMap.d.ts +16 -0
  177. package/dist/esm/types/IRLEVoxelMap.js +1 -0
  178. package/dist/esm/types/IRegisterImageLoader.d.ts +2 -2
  179. package/dist/esm/types/IRenderingEngine.d.ts +11 -12
  180. package/dist/esm/types/IRetrieveConfiguration.d.ts +6 -6
  181. package/dist/esm/types/IStackInput.d.ts +1 -1
  182. package/dist/esm/types/IStackViewport.d.ts +69 -2
  183. package/dist/esm/types/IStreamingImageVolume.d.ts +3 -4
  184. package/dist/esm/types/IStreamingVolumeProperties.d.ts +5 -5
  185. package/dist/esm/types/ISurface.d.ts +1 -1
  186. package/dist/esm/types/ITransferFunctionNode.d.ts +9 -0
  187. package/dist/esm/types/ITransferFunctionNode.js +1 -0
  188. package/dist/esm/types/IVideoViewport.d.ts +40 -2
  189. package/dist/esm/types/IViewport.d.ts +62 -41
  190. package/dist/esm/types/IVolume.d.ts +2 -2
  191. package/dist/esm/types/IVolumeInput.d.ts +2 -2
  192. package/dist/esm/types/IVolumeViewport.d.ts +17 -16
  193. package/dist/esm/types/IVoxelManager.d.ts +54 -0
  194. package/dist/esm/types/IVoxelManager.js +1 -0
  195. package/dist/esm/types/IWSIViewport.d.ts +16 -0
  196. package/dist/esm/types/IWSIViewport.js +1 -0
  197. package/dist/esm/types/ImageLoadListener.d.ts +2 -2
  198. package/dist/esm/types/ImageLoaderFn.d.ts +3 -3
  199. package/dist/esm/types/ImagePixelModule.d.ts +1 -1
  200. package/dist/esm/types/ImagePlaneModule.d.ts +2 -2
  201. package/dist/esm/types/ImageSliceData.d.ts +3 -3
  202. package/dist/esm/types/ImageVolumeProps.d.ts +4 -4
  203. package/dist/esm/types/Mat3.d.ts +1 -1
  204. package/dist/esm/types/Metadata.d.ts +6 -6
  205. package/dist/esm/types/MetadataModuleTypes.d.ts +65 -0
  206. package/dist/esm/types/MetadataModuleTypes.js +1 -0
  207. package/dist/esm/types/OrientationVectors.d.ts +4 -4
  208. package/dist/esm/types/Plane.d.ts +1 -1
  209. package/dist/esm/types/Point2.d.ts +1 -1
  210. package/dist/esm/types/Point3.d.ts +3 -3
  211. package/dist/esm/types/Point4.d.ts +1 -1
  212. package/dist/esm/types/RGB.d.ts +1 -1
  213. package/dist/esm/types/ScalingParameters.d.ts +7 -7
  214. package/dist/esm/types/StackViewportProperties.d.ts +3 -3
  215. package/dist/esm/types/SurfaceData.d.ts +5 -5
  216. package/dist/esm/types/TransformMatrix2D.d.ts +1 -1
  217. package/dist/esm/types/VideoViewportProperties.d.ts +3 -3
  218. package/dist/esm/types/VideoViewportTypes.d.ts +7 -7
  219. package/dist/esm/types/ViewportInputOptions.d.ts +7 -7
  220. package/dist/esm/types/ViewportPreset.d.ts +1 -1
  221. package/dist/esm/types/ViewportProperties.d.ts +5 -5
  222. package/dist/esm/types/VolumeLoaderFn.d.ts +4 -3
  223. package/dist/esm/types/VolumeProps.d.ts +10 -5
  224. package/dist/esm/types/VolumeViewportProperties.d.ts +3 -3
  225. package/dist/esm/types/WSIViewportProperties.d.ts +3 -0
  226. package/dist/esm/types/WSIViewportProperties.js +1 -0
  227. package/dist/esm/types/WSIViewportTypes.d.ts +13 -0
  228. package/dist/esm/types/WSIViewportTypes.js +1 -0
  229. package/dist/esm/types/displayArea.d.ts +4 -4
  230. package/dist/esm/types/index.d.ts +16 -8
  231. package/dist/esm/types/voi.d.ts +4 -4
  232. package/dist/esm/utilities/PointsManager.d.ts +8 -10
  233. package/dist/esm/utilities/ProgressiveIterator.d.ts +1 -1
  234. package/dist/esm/utilities/ProgressiveIterator.js +3 -1
  235. package/dist/esm/utilities/RLEVoxelMap.d.ts +3 -8
  236. package/dist/esm/utilities/RLEVoxelMap.js +19 -19
  237. package/dist/esm/utilities/VoxelManager.d.ts +82 -20
  238. package/dist/esm/utilities/VoxelManager.js +466 -60
  239. package/dist/esm/utilities/actorCheck.d.ts +1 -1
  240. package/dist/esm/utilities/applyPreset.d.ts +2 -2
  241. package/dist/esm/utilities/calculateViewportsSpatialRegistration.d.ts +1 -1
  242. package/dist/esm/utilities/calculateViewportsSpatialRegistration.js +5 -5
  243. package/dist/esm/utilities/calibratedPixelSpacingMetadataProvider.d.ts +1 -1
  244. package/dist/esm/utilities/colormap.d.ts +1 -1
  245. package/dist/esm/utilities/convertStackToVolumeViewport.d.ts +2 -2
  246. package/dist/esm/utilities/convertStackToVolumeViewport.js +4 -4
  247. package/dist/esm/utilities/convertVolumeToStackViewport.d.ts +1 -1
  248. package/dist/esm/utilities/convertVolumeToStackViewport.js +3 -2
  249. package/dist/esm/utilities/createLinearRGBTransferFunction.d.ts +1 -1
  250. package/dist/esm/utilities/createLinearRGBTransferFunction.js +1 -3
  251. package/dist/esm/utilities/createSigmoidRGBTransferFunction.d.ts +2 -3
  252. package/dist/esm/utilities/createSigmoidRGBTransferFunction.js +8 -7
  253. package/dist/esm/utilities/decimate.d.ts +1 -1
  254. package/dist/esm/utilities/eventListener/TargetEventListeners.js +5 -3
  255. package/dist/esm/utilities/generateVolumePropsFromImageIds.d.ts +1 -1
  256. package/dist/esm/utilities/generateVolumePropsFromImageIds.js +33 -80
  257. package/dist/esm/utilities/genericMetadataProvider.d.ts +9 -2
  258. package/dist/esm/utilities/genericMetadataProvider.js +7 -1
  259. package/dist/esm/utilities/getBufferConfiguration.d.ts +2 -3
  260. package/dist/esm/utilities/getBufferConfiguration.js +5 -15
  261. package/dist/esm/utilities/getClosestImageId.js +1 -1
  262. package/dist/esm/utilities/getClosestStackImageIndexForPoint.d.ts +1 -1
  263. package/dist/esm/utilities/getClosestStackImageIndexForPoint.js +2 -2
  264. package/dist/esm/utilities/getCurrentVolumeViewportSlice.d.ts +4 -5
  265. package/dist/esm/utilities/getCurrentVolumeViewportSlice.js +8 -58
  266. package/dist/esm/utilities/getImageLegacy.d.ts +1 -1
  267. package/dist/esm/utilities/getImageLegacy.js +1 -1
  268. package/dist/esm/utilities/getImageSliceDataForVolumeViewport.d.ts +1 -1
  269. package/dist/esm/utilities/getMinMax.d.ts +2 -1
  270. package/dist/esm/utilities/getScalingParameters.d.ts +1 -1
  271. package/dist/esm/utilities/getScalingParameters.js +4 -4
  272. package/dist/esm/utilities/getSpacingInNormalDirection.d.ts +2 -2
  273. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
  274. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +2 -2
  275. package/dist/esm/utilities/getViewportImageCornersInWorld.d.ts +1 -1
  276. package/dist/esm/utilities/getViewportImageIds.d.ts +1 -1
  277. package/dist/esm/utilities/getViewportImageIds.js +1 -1
  278. package/dist/esm/utilities/getViewportModality.d.ts +7 -3
  279. package/dist/esm/utilities/getViewportModality.js +9 -6
  280. package/dist/esm/utilities/getViewportsWithImageURI.d.ts +2 -2
  281. package/dist/esm/utilities/getViewportsWithVolumeId.d.ts +2 -2
  282. package/dist/esm/utilities/getViewportsWithVolumeId.js +3 -7
  283. package/dist/esm/utilities/getVoiFromSigmoidRGBTransferFunction.d.ts +1 -1
  284. package/dist/esm/utilities/getVolumeActorCorners.d.ts +2 -2
  285. package/dist/esm/utilities/getVolumeId.js +2 -2
  286. package/dist/esm/utilities/getVolumeSliceRangeInfo.d.ts +1 -1
  287. package/dist/esm/utilities/getVolumeViewportScrollInfo.d.ts +1 -1
  288. package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.d.ts +2 -2
  289. package/dist/esm/utilities/hasFloatScalingParameters.d.ts +1 -1
  290. package/dist/esm/utilities/imageRetrieveMetadataProvider.d.ts +1 -1
  291. package/dist/esm/utilities/imageToWorldCoords.d.ts +1 -1
  292. package/dist/esm/utilities/imageToWorldCoords.js +2 -2
  293. package/dist/esm/utilities/index.d.ts +3 -8
  294. package/dist/esm/utilities/index.js +4 -8
  295. package/dist/esm/utilities/indexWithinDimensions.d.ts +1 -1
  296. package/dist/esm/utilities/invertRgbTransferFunction.d.ts +2 -1
  297. package/dist/esm/utilities/isEqual.js +6 -1
  298. package/dist/esm/utilities/isPTPrescaledWithSUV.d.ts +1 -1
  299. package/dist/esm/utilities/isPTPrescaledWithSUV.js +1 -1
  300. package/dist/esm/utilities/isValidVolume.js +1 -1
  301. package/dist/esm/utilities/loadImageToCanvas.d.ts +6 -6
  302. package/dist/esm/utilities/loadImageToCanvas.js +1 -1
  303. package/dist/esm/utilities/makeVolumeMetadata.d.ts +2 -2
  304. package/dist/esm/utilities/makeVolumeMetadata.js +5 -5
  305. package/dist/esm/utilities/planar.d.ts +2 -2
  306. package/dist/esm/utilities/renderToCanvasCPU.d.ts +1 -1
  307. package/dist/esm/utilities/renderToCanvasGPU.d.ts +2 -2
  308. package/dist/esm/utilities/renderToCanvasGPU.js +1 -1
  309. package/dist/esm/utilities/scaleRgbTransferFunction.d.ts +2 -1
  310. package/dist/esm/utilities/snapFocalPointToSlice.d.ts +1 -1
  311. package/dist/esm/utilities/sortImageIdsAndGetSpacing.d.ts +5 -5
  312. package/dist/esm/utilities/sortImageIdsAndGetSpacing.js +2 -1
  313. package/dist/esm/utilities/transformCanvasToIJK.d.ts +2 -2
  314. package/dist/esm/utilities/transformIJKToCanvas.d.ts +1 -1
  315. package/dist/esm/utilities/triggerEvent.js +1 -1
  316. package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.d.ts +2 -2
  317. package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.js +1 -1
  318. package/dist/esm/utilities/uuidv4.js +3 -1
  319. package/dist/esm/utilities/worldToImageCoords.d.ts +1 -1
  320. package/dist/esm/utilities/worldToImageCoords.js +2 -2
  321. package/dist/umd/index.js +1 -1
  322. package/dist/umd/index.js.map +1 -1
  323. package/package.json +6 -6
  324. package/dist/esm/cache/utils/restoreImagesFromBuffer.d.ts +0 -2
  325. package/dist/esm/cache/utils/restoreImagesFromBuffer.js +0 -28
  326. package/dist/esm/enums/SharedArrayBufferModes.d.ts +0 -6
  327. package/dist/esm/enums/SharedArrayBufferModes.js +0 -7
  328. package/dist/esm/utilities/cacheUtils.d.ts +0 -2
  329. package/dist/esm/utilities/cacheUtils.js +0 -86
  330. package/dist/esm/utilities/createFloat32SharedArray.d.ts +0 -2
  331. package/dist/esm/utilities/createFloat32SharedArray.js +0 -27
  332. package/dist/esm/utilities/createInt16SharedArray.d.ts +0 -2
  333. package/dist/esm/utilities/createInt16SharedArray.js +0 -11
  334. package/dist/esm/utilities/createUInt16SharedArray.d.ts +0 -2
  335. package/dist/esm/utilities/createUInt16SharedArray.js +0 -11
  336. package/dist/esm/utilities/createUint8SharedArray.d.ts +0 -2
  337. package/dist/esm/utilities/createUint8SharedArray.js +0 -12
  338. package/dist/esm/utilities/getScalarDataType.d.ts +0 -2
  339. package/dist/esm/utilities/getScalarDataType.js +0 -19
  340. package/dist/esm/utilities/isTypedArray.d.ts +0 -1
  341. package/dist/esm/utilities/isTypedArray.js +0 -11
@@ -8,9 +8,19 @@ import vtkImageSlice from '@kitware/vtk.js/Rendering/Core/ImageSlice';
8
8
  import { mat4, vec2, vec3 } from 'gl-matrix';
9
9
  import eventTarget from '../eventTarget';
10
10
  import * as metaData from '../metaData';
11
- import { actorIsA, colormap as colormapUtils, createSigmoidRGBTransferFunction, imageIdToURI, imageRetrieveMetadataProvider, invertRgbTransferFunction, isEqual, isImageActor, triggerEvent, updateVTKImageDataWithCornerstoneImage, windowLevel as windowLevelUtil, } from '../utilities';
11
+ import { actorIsA, isImageActor } from '../utilities/actorCheck';
12
+ import * as colormapUtils from '../utilities/colormap';
13
+ import { getTransferFunctionNodes, setTransferFunctionNodes, } from '../utilities/transferFunctionUtils';
14
+ import * as windowLevelUtil from '../utilities/windowLevel';
15
+ import createLinearRGBTransferFunction from '../utilities/createLinearRGBTransferFunction';
16
+ import createSigmoidRGBTransferFunction from '../utilities/createSigmoidRGBTransferFunction';
17
+ import { updateVTKImageDataWithCornerstoneImage } from '../utilities/updateVTKImageDataWithCornerstoneImage';
18
+ import triggerEvent from '../utilities/triggerEvent';
19
+ import { isEqual } from '../utilities/isEqual';
20
+ import invertRgbTransferFunction from '../utilities/invertRgbTransferFunction';
21
+ import imageRetrieveMetadataProvider from '../utilities/imageRetrieveMetadataProvider';
22
+ import imageIdToURI from '../utilities/imageIdToURI';
12
23
  import Viewport from './Viewport';
13
- import { getColormap } from './helpers/cpuFallback/colors/index';
14
24
  import drawImageSync from './helpers/cpuFallback/drawImageSync';
15
25
  import { Events, InterpolationType, MetadataModules, RequestType, VOILUTFunctionType, ViewportStatus, } from '../enums';
16
26
  import { loadAndCacheImage } from '../loaders/imageLoader';
@@ -20,15 +30,12 @@ import canvasToPixel from './helpers/cpuFallback/rendering/canvasToPixel';
20
30
  import getDefaultViewport from './helpers/cpuFallback/rendering/getDefaultViewport';
21
31
  import pixelToCanvas from './helpers/cpuFallback/rendering/pixelToCanvas';
22
32
  import resize from './helpers/cpuFallback/rendering/resize';
23
- import cache from '../cache';
33
+ import cache from '../cache/cache';
24
34
  import { getConfiguration, getShouldUseCPURendering } from '../init';
25
35
  import { createProgressive } from '../loaders/ProgressiveRetrieveImages';
26
- import createLinearRGBTransferFunction from '../utilities/createLinearRGBTransferFunction';
27
- import { getTransferFunctionNodes, setTransferFunctionNodes, } from '../utilities/transferFunctionUtils';
28
36
  import correctShift from './helpers/cpuFallback/rendering/correctShift';
29
37
  import resetCamera from './helpers/cpuFallback/rendering/resetCamera';
30
38
  import { Transform } from './helpers/cpuFallback/rendering/transform';
31
- import { findMatchingColormap } from '../utilities/colormap';
32
39
  const EPSILON = 1;
33
40
  class StackViewport extends Viewport {
34
41
  constructor(props) {
@@ -41,7 +48,6 @@ class StackViewport extends Viewport {
41
48
  this.initialTransferFunctionNodes = null;
42
49
  this.stackInvalidated = false;
43
50
  this._publishCalibratedEvent = false;
44
- this.useNativeDataType = false;
45
51
  this.updateRenderingPipeline = () => {
46
52
  this._configureRenderingPipeline();
47
53
  };
@@ -66,7 +72,7 @@ class StackViewport extends Viewport {
66
72
  if (preferSizeOverAccuracy) {
67
73
  mapper.setPreferSizeOverAccuracy(true);
68
74
  }
69
- if (imageData.getPointData().getNumberOfComponents() > 1) {
75
+ if (imageData.getPointData().getScalars().getNumberOfComponents() > 1) {
70
76
  actor.getProperty().setIndependentComponents(false);
71
77
  }
72
78
  return actor;
@@ -115,9 +121,12 @@ class StackViewport extends Viewport {
115
121
  };
116
122
  this.setRotation = (rotation) => {
117
123
  const previousCamera = this.getCamera();
118
- this.useCPURendering
119
- ? this.setRotationCPU(rotation)
120
- : this.setRotationGPU(rotation);
124
+ if (this.useCPURendering) {
125
+ this.setRotationCPU(rotation);
126
+ }
127
+ else {
128
+ this.setRotationGPU(rotation);
129
+ }
121
130
  if (this._suppressCameraModifiedEvents) {
122
131
  return;
123
132
  }
@@ -159,11 +168,11 @@ class StackViewport extends Viewport {
159
168
  const iVector = direction.slice(0, 3);
160
169
  const jVector = direction.slice(3, 6);
161
170
  const diff = vec3.subtract(vec3.create(), worldPos, origin);
162
- const worldPoint = [
171
+ const indexPoint = [
163
172
  vec3.dot(diff, iVector) / spacing[0],
164
173
  vec3.dot(diff, jVector) / spacing[1],
165
174
  ];
166
- const canvasPoint = pixelToCanvas(this._cpuFallbackEnabledElement, worldPoint);
175
+ const canvasPoint = pixelToCanvas(this._cpuFallbackEnabledElement, indexPoint);
167
176
  return canvasPoint;
168
177
  };
169
178
  this.canvasToWorldGPU = (canvasPos) => {
@@ -365,9 +374,8 @@ class StackViewport extends Viewport {
365
374
  this.scaling = {};
366
375
  this.modality = null;
367
376
  this.useCPURendering = getShouldUseCPURendering();
368
- this.useNativeDataType = this._shouldUseNativeDataType();
369
377
  this._configureRenderingPipeline();
370
- this.useCPURendering
378
+ const result = this.useCPURendering
371
379
  ? this._resetCPUFallbackElement()
372
380
  : this._resetGPUViewport();
373
381
  this.imageIds = [];
@@ -385,7 +393,6 @@ class StackViewport extends Viewport {
385
393
  return getShouldUseCPURendering();
386
394
  }
387
395
  _configureRenderingPipeline(value) {
388
- this.useNativeDataType = this._shouldUseNativeDataType();
389
396
  this.useCPURendering = value ?? getShouldUseCPURendering();
390
397
  for (const key in this.renderingPipelineFunctions) {
391
398
  if (Object.prototype.hasOwnProperty.call(this.renderingPipelineFunctions, key)) {
@@ -393,7 +400,7 @@ class StackViewport extends Viewport {
393
400
  this[key] = this.useCPURendering ? functions.cpu : functions.gpu;
394
401
  }
395
402
  }
396
- this.useCPURendering
403
+ const result = this.useCPURendering
397
404
  ? this._resetCPUFallbackElement()
398
405
  : this._resetGPUViewport();
399
406
  }
@@ -438,7 +445,9 @@ class StackViewport extends Viewport {
438
445
  spacing: vtkImageData.getSpacing(),
439
446
  origin: vtkImageData.getOrigin(),
440
447
  direction: vtkImageData.getDirection(),
441
- scalarData: vtkImageData.getPointData().getScalars().getData(),
448
+ get scalarData() {
449
+ return this.csImage.voxelManager.getScalarData();
450
+ },
442
451
  imageData: actor.getMapper().getInputData(),
443
452
  metadata: {
444
453
  Modality: this.modality,
@@ -450,6 +459,7 @@ class StackViewport extends Viewport {
450
459
  preScale: {
451
460
  ...this.csImage.preScale,
452
461
  },
462
+ voxelManager: this.csImage.voxelManager,
453
463
  };
454
464
  }
455
465
  getImageDataCPU() {
@@ -489,6 +499,7 @@ class StackViewport extends Viewport {
489
499
  preScale: {
490
500
  ...this.csImage.preScale,
491
501
  },
502
+ voxelManager: this.csImage.voxelManager,
492
503
  };
493
504
  }
494
505
  buildMetadata(image) {
@@ -623,7 +634,7 @@ class StackViewport extends Viewport {
623
634
  return acc;
624
635
  }, []);
625
636
  const defaultActor = this.getDefaultActor();
626
- const matchedColormap = findMatchingColormap(RGBPoints, defaultActor.actor);
637
+ const matchedColormap = colormapUtils.findMatchingColormap(RGBPoints, defaultActor.actor);
627
638
  this.setColormap(matchedColormap);
628
639
  }
629
640
  resetToDefaultProperties() {
@@ -981,7 +992,7 @@ class StackViewport extends Viewport {
981
992
  _getNumCompsFromPhotometricInterpretation(photometricInterpretation) {
982
993
  let numberOfComponents = 1;
983
994
  if (photometricInterpretation === 'RGB' ||
984
- photometricInterpretation.indexOf('YBR') !== -1 ||
995
+ photometricInterpretation.includes('YBR') ||
985
996
  photometricInterpretation === 'PALETTE COLOR') {
986
997
  numberOfComponents = 3;
987
998
  }
@@ -1010,11 +1021,11 @@ class StackViewport extends Viewport {
1010
1021
  const yVoxels = image.rows;
1011
1022
  const zSpacing = EPSILON;
1012
1023
  const zVoxels = 1;
1013
- const numComps = image.numComps ||
1024
+ const numberOfComponents = image.numberOfComponents ||
1014
1025
  this._getNumCompsFromPhotometricInterpretation(imagePixelModule.photometricInterpretation);
1015
1026
  return {
1016
1027
  bitsAllocated: imagePixelModule.bitsAllocated,
1017
- numComps,
1028
+ numberOfComponents,
1018
1029
  origin,
1019
1030
  direction: [...rowCosineVec, ...colCosineVec, ...scanAxisNormal],
1020
1031
  dimensions: [xVoxels, yVoxels, zVoxels],
@@ -1037,7 +1048,7 @@ class StackViewport extends Viewport {
1037
1048
  let { rowCosines, columnCosines } = imagePlaneModule;
1038
1049
  rowCosines ||= [1, 0, 0];
1039
1050
  columnCosines ||= [0, 1, 0];
1040
- const viewPlaneNormal = (vec3.cross([0, 0, 0], columnCosines, rowCosines));
1051
+ const viewPlaneNormal = vec3.cross([0, 0, 0], columnCosines, rowCosines);
1041
1052
  return {
1042
1053
  FrameOfReferenceUID,
1043
1054
  viewPlaneNormal,
@@ -1058,11 +1069,11 @@ class StackViewport extends Viewport {
1058
1069
  viewUp: [viewUp[0], viewUp[1], viewUp[2]],
1059
1070
  };
1060
1071
  }
1061
- createVTKImageData({ origin, direction, dimensions, spacing, numComps, pixelArray, }) {
1072
+ createVTKImageData({ origin, direction, dimensions, spacing, numberOfComponents, pixelArray, }) {
1062
1073
  const values = new pixelArray.constructor(pixelArray.length);
1063
1074
  const scalarArray = vtkDataArray.newInstance({
1064
1075
  name: 'Pixels',
1065
- numberOfComponents: numComps,
1076
+ numberOfComponents: numberOfComponents,
1066
1077
  values: values,
1067
1078
  });
1068
1079
  const imageData = vtkImageData.newInstance();
@@ -1073,15 +1084,20 @@ class StackViewport extends Viewport {
1073
1084
  imageData.getPointData().setScalars(scalarArray);
1074
1085
  return imageData;
1075
1086
  }
1076
- _createVTKImageData({ origin, direction, dimensions, spacing, numComps, pixelArray, }) {
1077
- this._imageData = this.createVTKImageData({
1078
- origin,
1079
- direction,
1080
- dimensions,
1081
- spacing,
1082
- numComps,
1083
- pixelArray,
1084
- });
1087
+ _createVTKImageData({ origin, direction, dimensions, spacing, numberOfComponents, pixelArray, }) {
1088
+ try {
1089
+ this._imageData = this.createVTKImageData({
1090
+ origin,
1091
+ direction,
1092
+ dimensions,
1093
+ spacing,
1094
+ numberOfComponents,
1095
+ pixelArray,
1096
+ });
1097
+ }
1098
+ catch (e) {
1099
+ console.error(e);
1100
+ }
1085
1101
  }
1086
1102
  async setStack(imageIds, currentImageIdIndex = 0) {
1087
1103
  this._throwIfDestroyed();
@@ -1142,8 +1158,7 @@ class StackViewport extends Viewport {
1142
1158
  yVoxels === image.rows &&
1143
1159
  isEqual(imagePlaneModule.rowCosines, rowCosines) &&
1144
1160
  isEqual(imagePlaneModule.columnCosines, columnCosines) &&
1145
- (!this.useNativeDataType ||
1146
- dataType === image.getPixelData().constructor.name));
1161
+ dataType === image.voxelManager.getScalarData().constructor.name);
1147
1162
  }
1148
1163
  _updateVTKImageDataFromCornerstoneImage(image) {
1149
1164
  const imagePlaneModule = this._getImagePlaneModule(image.imageId);
@@ -1165,7 +1180,7 @@ class StackViewport extends Viewport {
1165
1180
  if (this.currentImageIdIndex !== imageIdIndex) {
1166
1181
  return;
1167
1182
  }
1168
- const pixelData = image.getPixelData();
1183
+ const pixelData = image.voxelManager.getScalarData();
1169
1184
  const preScale = image.preScale;
1170
1185
  const scalingParams = preScale?.scalingParameters;
1171
1186
  const scaledWithNonIntegers = (preScale?.scaled && scalingParams?.rescaleIntercept % 1 !== 0) ||
@@ -1290,17 +1305,12 @@ class StackViewport extends Viewport {
1290
1305
  getLoaderImageOptions(imageId) {
1291
1306
  const imageIdIndex = this.imageIds.indexOf(imageId);
1292
1307
  const { transferSyntaxUID } = metaData.get('transferSyntax', imageId) || {};
1293
- const additionalDetails = { imageId, imageIdIndex };
1294
1308
  const options = {
1295
- targetBuffer: {
1296
- type: this.useNativeDataType ? undefined : 'Float32Array',
1297
- },
1298
1309
  useRGBA: false,
1299
1310
  transferSyntaxUID,
1300
- useNativeDataType: this.useNativeDataType,
1301
1311
  priority: 5,
1302
1312
  requestType: RequestType.Interaction,
1303
- additionalDetails,
1313
+ additionalDetails: { imageId, imageIdIndex },
1304
1314
  };
1305
1315
  return options;
1306
1316
  }
@@ -1346,7 +1356,7 @@ class StackViewport extends Viewport {
1346
1356
  this._cpuFallbackEnabledElement.metadata = {
1347
1357
  ...metadata,
1348
1358
  };
1349
- this.cpuImagePixelData = image.getPixelData();
1359
+ this.cpuImagePixelData = image.voxelManager.getScalarData();
1350
1360
  const viewportSettingToUse = Object.assign({}, viewport, this._cpuFallbackEnabledElement.viewport);
1351
1361
  this._cpuFallbackEnabledElement.viewport = this.stackInvalidated
1352
1362
  ? viewport
@@ -1355,19 +1365,22 @@ class StackViewport extends Viewport {
1355
1365
  this.cpuRenderingInvalidated = true;
1356
1366
  this._cpuFallbackEnabledElement.transform = calculateTransform(this._cpuFallbackEnabledElement);
1357
1367
  }
1368
+ getSliceViewInfo() {
1369
+ throw new Error('Method not implemented.');
1370
+ }
1358
1371
  addImages(stackInputs) {
1359
1372
  const actors = this.getActors();
1360
1373
  stackInputs.forEach((stackInput) => {
1361
1374
  const { imageId } = stackInput;
1362
1375
  const image = cache.getImage(imageId);
1363
- const { origin, dimensions, direction, spacing, numComps } = this.getImageDataMetadata(image);
1376
+ const { origin, dimensions, direction, spacing, numberOfComponents } = this.getImageDataMetadata(image);
1364
1377
  const imagedata = this.createVTKImageData({
1365
1378
  origin,
1366
1379
  dimensions,
1367
1380
  direction,
1368
1381
  spacing,
1369
- numComps,
1370
- pixelArray: image.getPixelData(),
1382
+ numberOfComponents,
1383
+ pixelArray: image.voxelManager.getScalarData(),
1371
1384
  });
1372
1385
  const imageActor = this.createActorMapper(imagedata);
1373
1386
  if (imageActor) {
@@ -1405,14 +1418,14 @@ class StackViewport extends Viewport {
1405
1418
  this.stackActorReInitialized = false;
1406
1419
  return;
1407
1420
  }
1408
- const { origin, direction, dimensions, spacing, numComps, imagePixelModule, } = this.getImageDataMetadata(image);
1409
- const pixelArray = image.getPixelData();
1421
+ const { origin, direction, dimensions, spacing, numberOfComponents, imagePixelModule, } = this.getImageDataMetadata(image);
1422
+ const pixelArray = image.voxelManager.getScalarData();
1410
1423
  this._createVTKImageData({
1411
1424
  origin,
1412
1425
  direction,
1413
1426
  dimensions,
1414
1427
  spacing,
1415
- numComps,
1428
+ numberOfComponents,
1416
1429
  pixelArray,
1417
1430
  });
1418
1431
  this._updateVTKImageDataFromCornerstoneImage(image);
@@ -1464,7 +1477,7 @@ class StackViewport extends Viewport {
1464
1477
  if (this.modality !== 'PT' || !this.csImage.isPreScaled) {
1465
1478
  return false;
1466
1479
  }
1467
- if (!this.csImage.preScale?.scalingParameters?.suvbw) {
1480
+ if (!this.csImage.preScale?.scalingParameters.suvbw) {
1468
1481
  return false;
1469
1482
  }
1470
1483
  return true;
@@ -1626,18 +1639,28 @@ class StackViewport extends Viewport {
1626
1639
  return this._getVOIRangeFromWindowLevel(windowWidth, windowCenter);
1627
1640
  }
1628
1641
  _getValidVOILUTFunction(voiLUTFunction) {
1629
- if (Object.values(VOILUTFunctionType).indexOf(voiLUTFunction) === -1) {
1630
- voiLUTFunction = VOILUTFunctionType.LINEAR;
1642
+ if (!Object.values(VOILUTFunctionType).includes(voiLUTFunction)) {
1643
+ return VOILUTFunctionType.LINEAR;
1631
1644
  }
1632
1645
  return voiLUTFunction;
1633
1646
  }
1647
+ getSliceInfo() {
1648
+ const sliceIndex = this.getSliceIndex();
1649
+ const { dimensions } = this.getImageData();
1650
+ return {
1651
+ width: dimensions[0],
1652
+ height: dimensions[1],
1653
+ sliceIndex,
1654
+ slicePlane: 2,
1655
+ };
1656
+ }
1634
1657
  isReferenceViewable(viewRef, options = {}) {
1635
1658
  if (!super.isReferenceViewable(viewRef, options)) {
1636
1659
  return false;
1637
1660
  }
1638
1661
  const { referencedImageId, sliceIndex } = viewRef;
1639
1662
  if (viewRef.volumeId && !referencedImageId) {
1640
- return options.asVolume === true;
1663
+ return options.asVolume;
1641
1664
  }
1642
1665
  let testIndex = this.getCurrentImageIdIndex();
1643
1666
  const currentImageId = this.imageIds[testIndex];
@@ -1715,16 +1738,16 @@ class StackViewport extends Viewport {
1715
1738
  if (!viewRef) {
1716
1739
  return;
1717
1740
  }
1718
- const { referencedImageId, sliceIndex, volumeId } = viewRef;
1741
+ const { referencedImageId, sliceIndex } = viewRef;
1719
1742
  if (typeof sliceIndex === 'number' &&
1720
1743
  referencedImageId &&
1721
1744
  referencedImageId === this.imageIds[sliceIndex]) {
1722
- this.setImageIdIndex(sliceIndex);
1745
+ this.scroll(sliceIndex - this.targetImageIdIndex);
1723
1746
  }
1724
1747
  else {
1725
1748
  const foundIndex = this.imageIds.indexOf(referencedImageId);
1726
1749
  if (foundIndex !== -1) {
1727
- this.setImageIdIndex(foundIndex);
1750
+ this.scroll(foundIndex - this.targetImageIdIndex);
1728
1751
  }
1729
1752
  else {
1730
1753
  throw new Error('Unsupported - referenced image id not found');
@@ -1756,7 +1779,7 @@ class StackViewport extends Viewport {
1756
1779
  }
1757
1780
  setColormapCPU(colormapData) {
1758
1781
  this.colormap = colormapData;
1759
- const colormap = getColormap(colormapData.name, colormapData);
1782
+ const colormap = colormapUtils.getColormap(colormapData.name);
1760
1783
  this._cpuFallbackEnabledElement.viewport.colormap = colormap;
1761
1784
  this._cpuFallbackEnabledElement.renderingTools = {};
1762
1785
  this.fillWithBackgroundColor();
@@ -1,5 +1,6 @@
1
+ import type { mat4 } from 'gl-matrix';
1
2
  import { VideoEnums as VideoViewportEnum } from '../enums';
2
- import type { IVideoViewport, VideoViewportProperties, Point3, Point2, ICamera, VideoViewportInput, VOIRange, IImage, ViewReferenceSpecifier, ViewReference, ReferenceCompatibleOptions } from '../types';
3
+ import type { IVideoViewport, VideoViewportProperties, Point3, Point2, ICamera, VideoViewportInput, VOIRange, IImage, ViewReferenceSpecifier, ViewReference, ReferenceCompatibleOptions, ImageSetOptions, IStackInput, CPUIImageData, IImageData } from '../types';
3
4
  import { Transform } from './helpers/cpuFallback/rendering/transform';
4
5
  import Viewport from './Viewport';
5
6
  import CanvasActor from './CanvasActor';
@@ -39,7 +40,7 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
39
40
  private elementDisabledHandler;
40
41
  getImageDataMetadata(image: IImage | string): {
41
42
  bitsAllocated: number;
42
- numComps: number;
43
+ numberOfComponents: number;
43
44
  origin: any;
44
45
  rows: any;
45
46
  columns: any;
@@ -50,16 +51,25 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
50
51
  numVoxels: number;
51
52
  imagePlaneModule: any;
52
53
  };
54
+ setDataIds(imageIds: string[], options?: ImageSetOptions): void;
53
55
  setVideo(imageId: string, frameNumber?: number): Promise<unknown>;
54
56
  setVideoURL(videoURL: string): Promise<unknown>;
55
57
  getImageIds(): string[];
56
58
  togglePlayPause(): boolean;
57
59
  play(): Promise<void>;
58
- pause(): Promise<void>;
60
+ pause(): void;
59
61
  scroll(delta?: number): Promise<void>;
60
62
  start(): Promise<void>;
61
63
  end(): Promise<void>;
62
64
  setTime(timeInSeconds: number): Promise<void>;
65
+ getSliceViewInfo(): {
66
+ width: number;
67
+ height: number;
68
+ sliceIndex: number;
69
+ slicePlane: number;
70
+ sliceToIndexMatrix: mat4;
71
+ indexToSliceMatrix: mat4;
72
+ };
63
73
  setFrameNumber(frame: number): Promise<void>;
64
74
  setFrameRange(frameRange: number[]): void;
65
75
  getFrameRange(): [number, number];
@@ -69,30 +79,9 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
69
79
  getProperties: () => VideoViewportProperties;
70
80
  resetProperties(): void;
71
81
  protected getScalarData(): CanvasScalarData;
72
- getImageData(): {
73
- dimensions: any;
74
- spacing: any;
75
- origin: any;
76
- direction: any;
77
- metadata: {
78
- Modality: any;
79
- };
80
- getScalarData: () => CanvasScalarData;
81
- imageData: {
82
- getDirection: () => any;
83
- getDimensions: () => any;
84
- getRange: () => number[];
85
- getScalarData: () => CanvasScalarData;
86
- getSpacing: () => any;
87
- worldToIndex: (point: Point3) => number[];
88
- indexToWorld: (point: Point2, destPoint?: Point3) => Point3;
89
- };
90
- hasPixelSpacing: boolean;
91
- calibration: import("../types").IImageCalibration;
92
- preScale: {
93
- scaled: boolean;
94
- };
95
- };
82
+ getImageData(): IImageData | CPUIImageData;
83
+ getMiddleSliceData: () => never;
84
+ useCustomRenderingPipeline: boolean;
96
85
  hasImageURI(imageURI: string): boolean;
97
86
  setVOI(voiRange: VOIRange): void;
98
87
  setWindowLevel(windowWidth?: number, windowCenter?: number): void;
@@ -102,6 +91,7 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
102
91
  getCurrentImageId(): string;
103
92
  getViewReferenceId(specifier?: ViewReferenceSpecifier): string;
104
93
  isReferenceViewable(viewRef: ViewReference, options?: ReferenceCompatibleOptions): boolean;
94
+ setViewReference(viewRef: ViewReference): void;
105
95
  getViewReference(viewRefSpecifier?: ViewReferenceSpecifier): ViewReference;
106
96
  getFrameNumber(): number;
107
97
  getCurrentImageIdIndex(): number;
@@ -109,6 +99,7 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
109
99
  getCamera(): ICamera;
110
100
  resetCamera: () => boolean;
111
101
  getNumberOfSlices: () => number;
102
+ getFrameRate(): number;
112
103
  getFrameOfReferenceUID: () => string;
113
104
  resize: () => void;
114
105
  canvasToWorld: (canvasPos: Point2, destPos?: Point3) => Point3;
@@ -123,7 +114,7 @@ declare class VideoViewport extends Viewport implements IVideoViewport {
123
114
  customRenderViewportToCanvas: () => void;
124
115
  protected getTransform(): Transform;
125
116
  updateCameraClippingPlanesAndRange(): void;
126
- addImages(stackInputs: Array<any>): void;
117
+ addImages(stackInputs: IStackInput[]): void;
127
118
  protected createActorMapper(image: any): CanvasActor;
128
119
  private renderFrame;
129
120
  private renderWhilstPlaying;