@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.
- package/dist/esm/RenderingEngine/BaseVolumeViewport.d.ts +23 -13
- package/dist/esm/RenderingEngine/BaseVolumeViewport.js +52 -50
- package/dist/esm/RenderingEngine/CanvasActor/CanvasMapper.d.ts +1 -1
- package/dist/esm/RenderingEngine/CanvasActor/CanvasProperties.d.ts +1 -1
- package/dist/esm/RenderingEngine/CanvasActor/index.js +2 -1
- package/dist/esm/RenderingEngine/RenderingEngine.d.ts +8 -10
- package/dist/esm/RenderingEngine/RenderingEngine.js +20 -18
- package/dist/esm/RenderingEngine/StackViewport.d.ts +28 -19
- package/dist/esm/RenderingEngine/StackViewport.js +81 -58
- package/dist/esm/RenderingEngine/VideoViewport.d.ts +19 -28
- package/dist/esm/RenderingEngine/VideoViewport.js +61 -24
- package/dist/esm/RenderingEngine/Viewport.d.ts +25 -14
- package/dist/esm/RenderingEngine/Viewport.js +24 -15
- package/dist/esm/RenderingEngine/VolumeViewport.d.ts +21 -9
- package/dist/esm/RenderingEngine/VolumeViewport.js +95 -10
- package/dist/esm/RenderingEngine/VolumeViewport3D.d.ts +3 -3
- package/dist/esm/RenderingEngine/VolumeViewport3D.js +10 -3
- package/dist/esm/RenderingEngine/WSIViewport.d.ts +58 -0
- package/dist/esm/RenderingEngine/WSIViewport.js +414 -0
- package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.js +3 -3
- package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.d.ts +2 -2
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.js +15 -5
- package/dist/esm/RenderingEngine/helpers/cpuFallback/drawImageSync.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/calculateTransform.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/canvasToPixel.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/correctShift.d.ts +3 -3
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/createViewport.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/doesImageNeedToBeRendered.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/fitToWindow.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.js +2 -2
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getDefaultViewport.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageFitScale.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageSize.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getTransform.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/initializeRenderCanvas.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.d.ts +2 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/pixelToCanvas.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.js +3 -4
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js +2 -3
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +3 -3
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resetCamera.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resize.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/saveLastRendered.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setDefaultViewport.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setToPixelCoordinateSystem.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/transform.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/validator.d.ts +2 -2
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +3 -3
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +4 -7
- package/dist/esm/RenderingEngine/helpers/createVolumeMapper.d.ts +4 -1
- package/dist/esm/RenderingEngine/helpers/getOrCreateCanvas.js +5 -4
- package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +2 -2
- package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +13 -37
- package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.d.ts +2 -0
- package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.js +2 -0
- package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.js +4 -4
- package/dist/esm/RenderingEngine/renderingEngineCache.d.ts +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +4 -2
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +87 -78
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLViewNodeFactory.js +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +83 -42
- package/dist/esm/Settings.d.ts +1 -1
- package/dist/esm/cache/cache.d.ts +15 -19
- package/dist/esm/cache/cache.js +112 -57
- package/dist/esm/cache/classes/Contour.d.ts +4 -4
- package/dist/esm/cache/classes/ContourSet.d.ts +3 -3
- package/dist/esm/cache/classes/ImageVolume.d.ts +19 -19
- package/dist/esm/cache/classes/ImageVolume.js +49 -254
- package/dist/esm/cache/classes/Surface.d.ts +3 -3
- package/dist/esm/cache/index.d.ts +1 -2
- package/dist/esm/cache/index.js +1 -2
- package/dist/esm/constants/cpuColormaps.d.ts +1 -1
- package/dist/esm/constants/viewportPresets.d.ts +1 -1
- package/dist/esm/enums/GenerateImageType.d.ts +5 -0
- package/dist/esm/enums/GenerateImageType.js +6 -0
- package/dist/esm/enums/MetadataModules.d.ts +2 -1
- package/dist/esm/enums/MetadataModules.js +1 -0
- package/dist/esm/enums/ViewportType.d.ts +2 -1
- package/dist/esm/enums/ViewportType.js +1 -0
- package/dist/esm/enums/index.d.ts +2 -2
- package/dist/esm/enums/index.js +2 -2
- package/dist/esm/eventTarget.js +2 -3
- package/dist/esm/getEnabledElement.d.ts +1 -1
- package/dist/esm/global.d.ts +0 -1
- package/dist/esm/index.d.ts +9 -5
- package/dist/esm/index.js +8 -4
- package/dist/esm/init.d.ts +5 -8
- package/dist/esm/init.js +22 -83
- package/dist/esm/loaders/ProgressiveRetrieveImages.d.ts +5 -5
- package/dist/esm/loaders/ProgressiveRetrieveImages.js +7 -3
- package/dist/esm/loaders/configuration/interleavedRetrieve.d.ts +1 -1
- package/dist/esm/loaders/fillNearbyFrames.d.ts +2 -2
- package/dist/esm/loaders/geometryLoader.d.ts +3 -3
- package/dist/esm/loaders/geometryLoader.js +1 -1
- package/dist/esm/loaders/imageLoader.d.ts +12 -17
- package/dist/esm/loaders/imageLoader.js +179 -96
- package/dist/esm/loaders/utils/contourSet/createContourSet.d.ts +1 -1
- package/dist/esm/loaders/utils/contourSet/validateContourSet.d.ts +1 -1
- package/dist/esm/loaders/utils/surface/createSurface.d.ts +1 -1
- package/dist/esm/loaders/utils/surface/validateSurface.d.ts +1 -1
- package/dist/esm/loaders/volumeLoader.d.ts +15 -22
- package/dist/esm/loaders/volumeLoader.js +88 -207
- package/dist/esm/metaData.d.ts +2 -4
- package/dist/esm/requestPool/requestPoolManager.d.ts +7 -9
- package/dist/esm/requestPool/requestPoolManager.js +1 -1
- package/dist/esm/types/AABB2.d.ts +2 -2
- package/dist/esm/types/AABB3.d.ts +2 -2
- package/dist/esm/types/ActorSliceRange.d.ts +5 -5
- package/dist/esm/types/BoundsIJK.d.ts +1 -1
- package/dist/esm/types/BoundsLPS.d.ts +1 -1
- package/dist/esm/types/CPUFallbackColormap.d.ts +3 -3
- package/dist/esm/types/CPUFallbackColormapData.d.ts +4 -4
- package/dist/esm/types/CPUFallbackColormapsData.d.ts +3 -5
- package/dist/esm/types/CPUFallbackEnabledElement.d.ts +2 -37
- package/dist/esm/types/CPUFallbackLUT.d.ts +4 -3
- package/dist/esm/types/CPUFallbackLookupTable.d.ts +2 -2
- package/dist/esm/types/CPUFallbackRenderingTools.d.ts +5 -5
- package/dist/esm/types/CPUFallbackTransform.d.ts +3 -3
- package/dist/esm/types/CPUFallbackViewport.d.ts +6 -6
- package/dist/esm/types/CPUFallbackViewportDisplayedArea.d.ts +3 -3
- package/dist/esm/types/CPUIImageData.d.ts +17 -9
- package/dist/esm/types/Color.d.ts +1 -1
- package/dist/esm/types/Colormap.d.ts +7 -7
- package/dist/esm/types/ContourData.d.ts +6 -6
- package/dist/esm/types/Cornerstone3DConfig.d.ts +7 -7
- package/dist/esm/types/CustomEventType.d.ts +2 -2
- package/dist/esm/types/EventTypes.d.ts +55 -55
- package/dist/esm/types/FlipDirection.d.ts +3 -3
- package/dist/esm/types/IActor.d.ts +3 -3
- package/dist/esm/types/ICache.d.ts +4 -4
- package/dist/esm/types/ICachedGeometry.d.ts +3 -3
- package/dist/esm/types/ICachedImage.d.ts +3 -2
- package/dist/esm/types/ICachedVolume.d.ts +3 -2
- package/dist/esm/types/ICamera.d.ts +3 -3
- package/dist/esm/types/IContour.d.ts +4 -3
- package/dist/esm/types/IContourSet.d.ts +5 -2
- package/dist/esm/types/IDynamicImageVolume.d.ts +3 -3
- package/dist/esm/types/IEnabledElement.d.ts +2 -2
- package/dist/esm/types/IGeometry.d.ts +4 -4
- package/dist/esm/types/IImage.d.ts +48 -11
- package/dist/esm/types/IImageCalibration.d.ts +2 -2
- package/dist/esm/types/IImageData.d.ts +11 -4
- package/dist/esm/types/IImageFrame.d.ts +42 -0
- package/dist/esm/types/IImageFrame.js +1 -0
- package/dist/esm/types/IImageVolume.d.ts +17 -14
- package/dist/esm/types/ILoadObject.d.ts +3 -3
- package/dist/esm/types/IPointsManager.d.ts +23 -0
- package/dist/esm/types/IPointsManager.js +1 -0
- package/dist/esm/types/IRLEVoxelMap.d.ts +16 -0
- package/dist/esm/types/IRLEVoxelMap.js +1 -0
- package/dist/esm/types/IRegisterImageLoader.d.ts +2 -2
- package/dist/esm/types/IRenderingEngine.d.ts +11 -12
- package/dist/esm/types/IRetrieveConfiguration.d.ts +6 -6
- package/dist/esm/types/IStackInput.d.ts +1 -1
- package/dist/esm/types/IStackViewport.d.ts +69 -2
- package/dist/esm/types/IStreamingImageVolume.d.ts +3 -4
- package/dist/esm/types/IStreamingVolumeProperties.d.ts +5 -5
- package/dist/esm/types/ISurface.d.ts +1 -1
- package/dist/esm/types/ITransferFunctionNode.d.ts +9 -0
- package/dist/esm/types/ITransferFunctionNode.js +1 -0
- package/dist/esm/types/IVideoViewport.d.ts +40 -2
- package/dist/esm/types/IViewport.d.ts +62 -41
- package/dist/esm/types/IVolume.d.ts +2 -2
- package/dist/esm/types/IVolumeInput.d.ts +2 -2
- package/dist/esm/types/IVolumeViewport.d.ts +17 -16
- package/dist/esm/types/IVoxelManager.d.ts +54 -0
- package/dist/esm/types/IVoxelManager.js +1 -0
- package/dist/esm/types/IWSIViewport.d.ts +16 -0
- package/dist/esm/types/IWSIViewport.js +1 -0
- package/dist/esm/types/ImageLoadListener.d.ts +2 -2
- package/dist/esm/types/ImageLoaderFn.d.ts +3 -3
- package/dist/esm/types/ImagePixelModule.d.ts +1 -1
- package/dist/esm/types/ImagePlaneModule.d.ts +2 -2
- package/dist/esm/types/ImageSliceData.d.ts +3 -3
- package/dist/esm/types/ImageVolumeProps.d.ts +4 -4
- package/dist/esm/types/Mat3.d.ts +1 -1
- package/dist/esm/types/Metadata.d.ts +6 -6
- package/dist/esm/types/MetadataModuleTypes.d.ts +65 -0
- package/dist/esm/types/MetadataModuleTypes.js +1 -0
- package/dist/esm/types/OrientationVectors.d.ts +4 -4
- package/dist/esm/types/Plane.d.ts +1 -1
- package/dist/esm/types/Point2.d.ts +1 -1
- package/dist/esm/types/Point3.d.ts +3 -3
- package/dist/esm/types/Point4.d.ts +1 -1
- package/dist/esm/types/RGB.d.ts +1 -1
- package/dist/esm/types/ScalingParameters.d.ts +7 -7
- package/dist/esm/types/StackViewportProperties.d.ts +3 -3
- package/dist/esm/types/SurfaceData.d.ts +5 -5
- package/dist/esm/types/TransformMatrix2D.d.ts +1 -1
- package/dist/esm/types/VideoViewportProperties.d.ts +3 -3
- package/dist/esm/types/VideoViewportTypes.d.ts +7 -7
- package/dist/esm/types/ViewportInputOptions.d.ts +7 -7
- package/dist/esm/types/ViewportPreset.d.ts +1 -1
- package/dist/esm/types/ViewportProperties.d.ts +5 -5
- package/dist/esm/types/VolumeLoaderFn.d.ts +4 -3
- package/dist/esm/types/VolumeProps.d.ts +10 -5
- package/dist/esm/types/VolumeViewportProperties.d.ts +3 -3
- package/dist/esm/types/WSIViewportProperties.d.ts +3 -0
- package/dist/esm/types/WSIViewportProperties.js +1 -0
- package/dist/esm/types/WSIViewportTypes.d.ts +13 -0
- package/dist/esm/types/WSIViewportTypes.js +1 -0
- package/dist/esm/types/displayArea.d.ts +4 -4
- package/dist/esm/types/index.d.ts +16 -8
- package/dist/esm/types/voi.d.ts +4 -4
- package/dist/esm/utilities/PointsManager.d.ts +8 -10
- package/dist/esm/utilities/ProgressiveIterator.d.ts +1 -1
- package/dist/esm/utilities/ProgressiveIterator.js +3 -1
- package/dist/esm/utilities/RLEVoxelMap.d.ts +3 -8
- package/dist/esm/utilities/RLEVoxelMap.js +19 -19
- package/dist/esm/utilities/VoxelManager.d.ts +82 -20
- package/dist/esm/utilities/VoxelManager.js +466 -60
- package/dist/esm/utilities/actorCheck.d.ts +1 -1
- package/dist/esm/utilities/applyPreset.d.ts +2 -2
- package/dist/esm/utilities/calculateViewportsSpatialRegistration.d.ts +1 -1
- package/dist/esm/utilities/calculateViewportsSpatialRegistration.js +5 -5
- package/dist/esm/utilities/calibratedPixelSpacingMetadataProvider.d.ts +1 -1
- package/dist/esm/utilities/colormap.d.ts +1 -1
- package/dist/esm/utilities/convertStackToVolumeViewport.d.ts +2 -2
- package/dist/esm/utilities/convertStackToVolumeViewport.js +4 -4
- package/dist/esm/utilities/convertVolumeToStackViewport.d.ts +1 -1
- package/dist/esm/utilities/convertVolumeToStackViewport.js +3 -2
- package/dist/esm/utilities/createLinearRGBTransferFunction.d.ts +1 -1
- package/dist/esm/utilities/createLinearRGBTransferFunction.js +1 -3
- package/dist/esm/utilities/createSigmoidRGBTransferFunction.d.ts +2 -3
- package/dist/esm/utilities/createSigmoidRGBTransferFunction.js +8 -7
- package/dist/esm/utilities/decimate.d.ts +1 -1
- package/dist/esm/utilities/eventListener/TargetEventListeners.js +5 -3
- package/dist/esm/utilities/generateVolumePropsFromImageIds.d.ts +1 -1
- package/dist/esm/utilities/generateVolumePropsFromImageIds.js +33 -80
- package/dist/esm/utilities/genericMetadataProvider.d.ts +9 -2
- package/dist/esm/utilities/genericMetadataProvider.js +7 -1
- package/dist/esm/utilities/getBufferConfiguration.d.ts +2 -3
- package/dist/esm/utilities/getBufferConfiguration.js +5 -15
- package/dist/esm/utilities/getClosestImageId.js +1 -1
- package/dist/esm/utilities/getClosestStackImageIndexForPoint.d.ts +1 -1
- package/dist/esm/utilities/getClosestStackImageIndexForPoint.js +2 -2
- package/dist/esm/utilities/getCurrentVolumeViewportSlice.d.ts +4 -5
- package/dist/esm/utilities/getCurrentVolumeViewportSlice.js +8 -58
- package/dist/esm/utilities/getImageLegacy.d.ts +1 -1
- package/dist/esm/utilities/getImageLegacy.js +1 -1
- package/dist/esm/utilities/getImageSliceDataForVolumeViewport.d.ts +1 -1
- package/dist/esm/utilities/getMinMax.d.ts +2 -1
- package/dist/esm/utilities/getScalingParameters.d.ts +1 -1
- package/dist/esm/utilities/getScalingParameters.js +4 -4
- package/dist/esm/utilities/getSpacingInNormalDirection.d.ts +2 -2
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +2 -2
- package/dist/esm/utilities/getViewportImageCornersInWorld.d.ts +1 -1
- package/dist/esm/utilities/getViewportImageIds.d.ts +1 -1
- package/dist/esm/utilities/getViewportImageIds.js +1 -1
- package/dist/esm/utilities/getViewportModality.d.ts +7 -3
- package/dist/esm/utilities/getViewportModality.js +9 -6
- package/dist/esm/utilities/getViewportsWithImageURI.d.ts +2 -2
- package/dist/esm/utilities/getViewportsWithVolumeId.d.ts +2 -2
- package/dist/esm/utilities/getViewportsWithVolumeId.js +3 -7
- package/dist/esm/utilities/getVoiFromSigmoidRGBTransferFunction.d.ts +1 -1
- package/dist/esm/utilities/getVolumeActorCorners.d.ts +2 -2
- package/dist/esm/utilities/getVolumeId.js +2 -2
- package/dist/esm/utilities/getVolumeSliceRangeInfo.d.ts +1 -1
- package/dist/esm/utilities/getVolumeViewportScrollInfo.d.ts +1 -1
- package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.d.ts +2 -2
- package/dist/esm/utilities/hasFloatScalingParameters.d.ts +1 -1
- package/dist/esm/utilities/imageRetrieveMetadataProvider.d.ts +1 -1
- package/dist/esm/utilities/imageToWorldCoords.d.ts +1 -1
- package/dist/esm/utilities/imageToWorldCoords.js +2 -2
- package/dist/esm/utilities/index.d.ts +3 -8
- package/dist/esm/utilities/index.js +4 -8
- package/dist/esm/utilities/indexWithinDimensions.d.ts +1 -1
- package/dist/esm/utilities/invertRgbTransferFunction.d.ts +2 -1
- package/dist/esm/utilities/isEqual.js +6 -1
- package/dist/esm/utilities/isPTPrescaledWithSUV.d.ts +1 -1
- package/dist/esm/utilities/isPTPrescaledWithSUV.js +1 -1
- package/dist/esm/utilities/isValidVolume.js +1 -1
- package/dist/esm/utilities/loadImageToCanvas.d.ts +6 -6
- package/dist/esm/utilities/loadImageToCanvas.js +1 -1
- package/dist/esm/utilities/makeVolumeMetadata.d.ts +2 -2
- package/dist/esm/utilities/makeVolumeMetadata.js +5 -5
- package/dist/esm/utilities/planar.d.ts +2 -2
- package/dist/esm/utilities/renderToCanvasCPU.d.ts +1 -1
- package/dist/esm/utilities/renderToCanvasGPU.d.ts +2 -2
- package/dist/esm/utilities/renderToCanvasGPU.js +1 -1
- package/dist/esm/utilities/scaleRgbTransferFunction.d.ts +2 -1
- package/dist/esm/utilities/snapFocalPointToSlice.d.ts +1 -1
- package/dist/esm/utilities/sortImageIdsAndGetSpacing.d.ts +5 -5
- package/dist/esm/utilities/sortImageIdsAndGetSpacing.js +2 -1
- package/dist/esm/utilities/transformCanvasToIJK.d.ts +2 -2
- package/dist/esm/utilities/transformIJKToCanvas.d.ts +1 -1
- package/dist/esm/utilities/triggerEvent.js +1 -1
- package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.d.ts +2 -2
- package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.js +1 -1
- package/dist/esm/utilities/uuidv4.js +3 -1
- package/dist/esm/utilities/worldToImageCoords.d.ts +1 -1
- package/dist/esm/utilities/worldToImageCoords.js +2 -2
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +6 -6
- package/dist/esm/cache/utils/restoreImagesFromBuffer.d.ts +0 -2
- package/dist/esm/cache/utils/restoreImagesFromBuffer.js +0 -28
- package/dist/esm/enums/SharedArrayBufferModes.d.ts +0 -6
- package/dist/esm/enums/SharedArrayBufferModes.js +0 -7
- package/dist/esm/utilities/cacheUtils.d.ts +0 -2
- package/dist/esm/utilities/cacheUtils.js +0 -86
- package/dist/esm/utilities/createFloat32SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createFloat32SharedArray.js +0 -27
- package/dist/esm/utilities/createInt16SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createInt16SharedArray.js +0 -11
- package/dist/esm/utilities/createUInt16SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createUInt16SharedArray.js +0 -11
- package/dist/esm/utilities/createUint8SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createUint8SharedArray.js +0 -12
- package/dist/esm/utilities/getScalarDataType.d.ts +0 -2
- package/dist/esm/utilities/getScalarDataType.js +0 -19
- package/dist/esm/utilities/isTypedArray.d.ts +0 -1
- package/dist/esm/utilities/isTypedArray.js +0 -11
|
@@ -1,56 +1,12 @@
|
|
|
1
1
|
import '@kitware/vtk.js/Rendering/Profiles/Volume';
|
|
2
|
-
import vtkImageData from '@kitware/vtk.js/Common/DataModel/ImageData';
|
|
3
|
-
import vtkDataArray from '@kitware/vtk.js/Common/Core/DataArray';
|
|
4
2
|
import { ImageVolume } from '../cache/classes/ImageVolume';
|
|
5
3
|
import cache from '../cache/cache';
|
|
6
4
|
import Events from '../enums/Events';
|
|
7
5
|
import eventTarget from '../eventTarget';
|
|
8
6
|
import triggerEvent from '../utilities/triggerEvent';
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
function addScalarDataToImageData(imageData, scalarData, dataArrayAttrs) {
|
|
13
|
-
const scalarArray = vtkDataArray.newInstance({
|
|
14
|
-
name: `Pixels`,
|
|
15
|
-
values: scalarData,
|
|
16
|
-
...dataArrayAttrs,
|
|
17
|
-
});
|
|
18
|
-
imageData.getPointData().setScalars(scalarArray);
|
|
19
|
-
}
|
|
20
|
-
function addScalarDataArraysToImageData(imageData, scalarDataArrays, dataArrayAttrs) {
|
|
21
|
-
scalarDataArrays.forEach((scalarData, i) => {
|
|
22
|
-
const vtkScalarArray = vtkDataArray.newInstance({
|
|
23
|
-
name: `timePoint-${i}`,
|
|
24
|
-
values: scalarData,
|
|
25
|
-
...dataArrayAttrs,
|
|
26
|
-
});
|
|
27
|
-
imageData.getPointData().addArray(vtkScalarArray);
|
|
28
|
-
});
|
|
29
|
-
imageData.getPointData().setActiveScalars('timePoint-0');
|
|
30
|
-
}
|
|
31
|
-
function createInternalVTKRepresentation(volume) {
|
|
32
|
-
const { dimensions, metadata, spacing, direction, origin } = volume;
|
|
33
|
-
const { PhotometricInterpretation } = metadata;
|
|
34
|
-
let numComponents = 1;
|
|
35
|
-
if (PhotometricInterpretation === 'RGB') {
|
|
36
|
-
numComponents = 3;
|
|
37
|
-
}
|
|
38
|
-
const imageData = vtkImageData.newInstance();
|
|
39
|
-
const dataArrayAttrs = { numberOfComponents: numComponents };
|
|
40
|
-
imageData.setDimensions(dimensions);
|
|
41
|
-
imageData.setSpacing(spacing);
|
|
42
|
-
imageData.setDirection(direction);
|
|
43
|
-
imageData.setOrigin(origin);
|
|
44
|
-
if (volume.isDynamicVolume()) {
|
|
45
|
-
const scalarDataArrays = (volume).getScalarDataArrays();
|
|
46
|
-
addScalarDataArraysToImageData(imageData, scalarDataArrays, dataArrayAttrs);
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
const scalarData = volume.getScalarData();
|
|
50
|
-
addScalarDataToImageData(imageData, scalarData, dataArrayAttrs);
|
|
51
|
-
}
|
|
52
|
-
return imageData;
|
|
53
|
-
}
|
|
7
|
+
import uuidv4 from '../utilities/uuidv4';
|
|
8
|
+
import VoxelManager from '../utilities/VoxelManager';
|
|
9
|
+
import { createAndCacheLocalImage, createAndCacheDerivedImages, } from './imageLoader';
|
|
54
10
|
const volumeLoaders = {};
|
|
55
11
|
let unknownVolumeLoader;
|
|
56
12
|
function loadVolumeFromVolumeLoader(volumeId, options) {
|
|
@@ -65,7 +21,6 @@ function loadVolumeFromVolumeLoader(volumeId, options) {
|
|
|
65
21
|
loader = unknownVolumeLoader;
|
|
66
22
|
}
|
|
67
23
|
const volumeLoadObject = loader(volumeId, options);
|
|
68
|
-
setupCacheOptimizationEventListener(volumeId);
|
|
69
24
|
volumeLoadObject.promise.then(function (volume) {
|
|
70
25
|
triggerEvent(eventTarget, Events.VOLUME_LOADED, { volume });
|
|
71
26
|
}, function (error) {
|
|
@@ -87,179 +42,141 @@ export function loadVolume(volumeId, options = { imageIds: [] }) {
|
|
|
87
42
|
}
|
|
88
43
|
volumeLoadObject = loadVolumeFromVolumeLoader(volumeId, options);
|
|
89
44
|
return volumeLoadObject.promise.then((volume) => {
|
|
90
|
-
volume.imageData = createInternalVTKRepresentation(volume);
|
|
91
45
|
return volume;
|
|
92
46
|
});
|
|
93
47
|
}
|
|
94
|
-
export async function
|
|
48
|
+
export async function createAndCacheVolume(volumeId, options) {
|
|
95
49
|
if (volumeId === undefined) {
|
|
96
|
-
throw new Error('
|
|
50
|
+
throw new Error('createAndCacheVolume: parameter volumeId must not be undefined');
|
|
97
51
|
}
|
|
98
52
|
let volumeLoadObject = cache.getVolumeLoadObject(volumeId);
|
|
99
53
|
if (volumeLoadObject !== undefined) {
|
|
100
54
|
return volumeLoadObject.promise;
|
|
101
55
|
}
|
|
102
56
|
volumeLoadObject = loadVolumeFromVolumeLoader(volumeId, options);
|
|
103
|
-
|
|
104
|
-
volume.imageData = createInternalVTKRepresentation(volume);
|
|
105
|
-
});
|
|
106
|
-
cache.putVolumeLoadObject(volumeId, volumeLoadObject).catch((err) => {
|
|
107
|
-
throw err;
|
|
108
|
-
});
|
|
57
|
+
cache.putVolumeLoadObject(volumeId, volumeLoadObject);
|
|
109
58
|
return volumeLoadObject.promise;
|
|
110
59
|
}
|
|
111
|
-
export
|
|
60
|
+
export function createAndCacheDerivedVolume(referencedVolumeId, options) {
|
|
112
61
|
const referencedVolume = cache.getVolume(referencedVolumeId);
|
|
113
62
|
if (!referencedVolume) {
|
|
114
63
|
throw new Error(`Cannot created derived volume: Referenced volume with id ${referencedVolumeId} does not exist.`);
|
|
115
64
|
}
|
|
116
65
|
let { volumeId } = options;
|
|
117
|
-
const { targetBuffer } = options;
|
|
118
66
|
if (volumeId === undefined) {
|
|
119
67
|
volumeId = uuidv4();
|
|
120
68
|
}
|
|
121
69
|
const { metadata, dimensions, spacing, origin, direction } = referencedVolume;
|
|
122
|
-
const scalarData = referencedVolume.getScalarData();
|
|
123
|
-
const scalarLength = scalarData.length;
|
|
124
|
-
const { volumeScalarData, numBytes } = generateVolumeScalarData(targetBuffer, scalarLength);
|
|
125
|
-
const scalarArray = vtkDataArray.newInstance({
|
|
126
|
-
name: 'Pixels',
|
|
127
|
-
numberOfComponents: 1,
|
|
128
|
-
values: volumeScalarData,
|
|
129
|
-
});
|
|
130
|
-
const derivedImageData = vtkImageData.newInstance();
|
|
131
|
-
derivedImageData.setDimensions(dimensions);
|
|
132
|
-
derivedImageData.setSpacing(spacing);
|
|
133
|
-
derivedImageData.setDirection(direction);
|
|
134
|
-
derivedImageData.setOrigin(origin);
|
|
135
|
-
derivedImageData.getPointData().setScalars(scalarArray);
|
|
136
70
|
const referencedImageIds = referencedVolume.imageIds ?? [];
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
71
|
+
const byteLength = referencedImageIds.reduce((total, imageId) => {
|
|
72
|
+
const image = cache.getImage(imageId);
|
|
73
|
+
return total + image.sizeInBytes;
|
|
74
|
+
}, 0);
|
|
75
|
+
const isCacheable = cache.isCacheable(byteLength);
|
|
76
|
+
if (!isCacheable) {
|
|
77
|
+
throw new Error(`Cannot created derived volume: Referenced volume with id ${referencedVolumeId} does not exist.`);
|
|
142
78
|
}
|
|
79
|
+
const derivedImages = createAndCacheDerivedImages(referencedImageIds, {
|
|
80
|
+
targetBufferType: options.targetBufferType,
|
|
81
|
+
});
|
|
82
|
+
const dataType = derivedImages[0].dataType;
|
|
83
|
+
const derivedVolumeImageIds = derivedImages.map((image) => image.imageId);
|
|
143
84
|
const derivedVolume = new ImageVolume({
|
|
144
85
|
volumeId,
|
|
86
|
+
dataType,
|
|
145
87
|
metadata: structuredClone(metadata),
|
|
146
88
|
dimensions: [dimensions[0], dimensions[1], dimensions[2]],
|
|
147
89
|
spacing,
|
|
148
90
|
origin,
|
|
149
91
|
direction,
|
|
150
|
-
imageData: derivedImageData,
|
|
151
|
-
scalarData: volumeScalarData,
|
|
152
|
-
sizeInBytes: numBytes,
|
|
153
92
|
referencedVolumeId,
|
|
154
93
|
imageIds: derivedVolumeImageIds,
|
|
155
94
|
referencedImageIds: referencedVolume.imageIds ?? [],
|
|
156
95
|
});
|
|
157
|
-
|
|
158
|
-
promise: Promise.resolve(derivedVolume),
|
|
159
|
-
};
|
|
160
|
-
await cache.putVolumeLoadObject(volumeId, volumeLoadObject);
|
|
161
|
-
performCacheOptimizationForVolume(derivedVolume);
|
|
96
|
+
cache.putVolumeSync(volumeId, derivedVolume);
|
|
162
97
|
return derivedVolume;
|
|
163
98
|
}
|
|
164
|
-
export function
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
const validDataTypes = [
|
|
168
|
-
'Uint8Array',
|
|
169
|
-
'Float32Array',
|
|
170
|
-
'Uint16Array',
|
|
171
|
-
'Int16Array',
|
|
172
|
-
];
|
|
173
|
-
const scalarLength = dimensions[0] * dimensions[1] * dimensions[2];
|
|
174
|
-
if (!scalarData || !validDataTypes.includes(scalarData.constructor.name)) {
|
|
175
|
-
if (!targetBuffer?.type || !validDataTypes.includes(targetBuffer.type)) {
|
|
176
|
-
throw new Error('createLocalVolume: parameter scalarData must be provided and must be either Uint8Array, Float32Array, Uint16Array or Int16Array');
|
|
177
|
-
}
|
|
178
|
-
({ volumeScalarData: scalarData } = generateVolumeScalarData(targetBuffer, scalarLength));
|
|
99
|
+
export async function createAndCacheVolumeFromImages(volumeId, imageIds) {
|
|
100
|
+
if (imageIds === undefined) {
|
|
101
|
+
throw new Error('createAndCacheVolumeFromImages: parameter imageIds must not be undefined');
|
|
179
102
|
}
|
|
180
103
|
if (volumeId === undefined) {
|
|
181
|
-
volumeId
|
|
104
|
+
throw new Error('createAndCacheVolumeFromImages: parameter volumeId must not be undefined');
|
|
182
105
|
}
|
|
183
106
|
const cachedVolume = cache.getVolume(volumeId);
|
|
184
107
|
if (cachedVolume) {
|
|
185
108
|
return cachedVolume;
|
|
186
109
|
}
|
|
187
|
-
const
|
|
188
|
-
|
|
110
|
+
const volume = (await createAndCacheVolume(volumeId, {
|
|
111
|
+
imageIds,
|
|
112
|
+
}));
|
|
113
|
+
return volume;
|
|
114
|
+
}
|
|
115
|
+
export function createLocalVolume(volumeId, options = {}) {
|
|
116
|
+
const { metadata, dimensions, spacing, origin, direction, scalarData, targetBufferType, preventCache = false, } = options;
|
|
117
|
+
const cachedVolume = cache.getVolume(volumeId);
|
|
118
|
+
if (cachedVolume) {
|
|
119
|
+
return cachedVolume;
|
|
120
|
+
}
|
|
121
|
+
const sliceLength = dimensions[0] * dimensions[1];
|
|
122
|
+
const dataType = scalarData
|
|
123
|
+
? scalarData.constructor.name
|
|
124
|
+
: targetBufferType;
|
|
125
|
+
const totalNumberOfVoxels = sliceLength * dimensions[2];
|
|
126
|
+
let byteLength;
|
|
127
|
+
switch (dataType) {
|
|
128
|
+
case 'Uint8Array':
|
|
129
|
+
case 'Int8Array':
|
|
130
|
+
byteLength = totalNumberOfVoxels;
|
|
131
|
+
break;
|
|
132
|
+
case 'Uint16Array':
|
|
133
|
+
case 'Int16Array':
|
|
134
|
+
byteLength = totalNumberOfVoxels * 2;
|
|
135
|
+
break;
|
|
136
|
+
case 'Float32Array':
|
|
137
|
+
byteLength = totalNumberOfVoxels * 4;
|
|
138
|
+
break;
|
|
139
|
+
}
|
|
140
|
+
const isCacheable = cache.isCacheable(byteLength);
|
|
189
141
|
if (!isCacheable) {
|
|
190
|
-
throw new Error(
|
|
142
|
+
throw new Error(`Cannot created derived volume: Volume with id ${volumeId} is not cacheable.`);
|
|
143
|
+
}
|
|
144
|
+
const imageIds = [];
|
|
145
|
+
const derivedImages = [];
|
|
146
|
+
for (let i = 0; i < dimensions[2]; i++) {
|
|
147
|
+
const imageId = `${volumeId}_slice_${i}`;
|
|
148
|
+
imageIds.push(imageId);
|
|
149
|
+
const sliceData = scalarData.subarray(i * sliceLength, (i + 1) * sliceLength);
|
|
150
|
+
const derivedImage = createAndCacheLocalImage(imageId, {
|
|
151
|
+
scalarData: sliceData,
|
|
152
|
+
dimensions: [dimensions[0], dimensions[1]],
|
|
153
|
+
spacing: [spacing[0], spacing[1]],
|
|
154
|
+
origin,
|
|
155
|
+
direction,
|
|
156
|
+
targetBufferType: dataType,
|
|
157
|
+
});
|
|
158
|
+
derivedImages.push(derivedImage);
|
|
191
159
|
}
|
|
192
|
-
const
|
|
193
|
-
name: 'Pixels',
|
|
194
|
-
numberOfComponents: 1,
|
|
195
|
-
values: scalarData,
|
|
196
|
-
});
|
|
197
|
-
const imageData = vtkImageData.newInstance();
|
|
198
|
-
imageData.setDimensions(dimensions);
|
|
199
|
-
imageData.setSpacing(spacing);
|
|
200
|
-
imageData.setDirection(direction);
|
|
201
|
-
imageData.setOrigin(origin);
|
|
202
|
-
imageData.getPointData().setScalars(scalarArray);
|
|
203
|
-
const derivedVolume = new ImageVolume({
|
|
160
|
+
const imageVolume = new ImageVolume({
|
|
204
161
|
volumeId,
|
|
205
162
|
metadata: structuredClone(metadata),
|
|
206
163
|
dimensions: [dimensions[0], dimensions[1], dimensions[2]],
|
|
207
164
|
spacing,
|
|
208
165
|
origin,
|
|
209
166
|
direction,
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
sizeInBytes: numBytes,
|
|
213
|
-
referencedImageIds: options.referencedImageIds || [],
|
|
214
|
-
referencedVolumeId: options.referencedVolumeId,
|
|
215
|
-
imageIds: options.imageIds || [],
|
|
167
|
+
imageIds,
|
|
168
|
+
dataType,
|
|
216
169
|
});
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
promise: Promise.resolve(derivedVolume),
|
|
222
|
-
};
|
|
223
|
-
cache.putVolumeLoadObject(volumeId, volumeLoadObject);
|
|
224
|
-
performCacheOptimizationForVolume(derivedVolume);
|
|
225
|
-
return derivedVolume;
|
|
226
|
-
}
|
|
227
|
-
export async function createAndCacheVolumeFromImages(volumeId, imageIds, options = {}) {
|
|
228
|
-
const { preventCache = false } = options;
|
|
229
|
-
if (imageIds === undefined) {
|
|
230
|
-
throw new Error('createAndCacheVolumeFromImages: parameter imageIds must not be undefined');
|
|
231
|
-
}
|
|
232
|
-
if (volumeId === undefined) {
|
|
233
|
-
throw new Error('createAndCacheVolumeFromImages: parameter volumeId must not be undefined');
|
|
234
|
-
}
|
|
235
|
-
const cachedVolume = cache.getVolume(volumeId);
|
|
236
|
-
if (cachedVolume) {
|
|
237
|
-
return Promise.resolve(cachedVolume);
|
|
238
|
-
}
|
|
239
|
-
const volumeProps = generateVolumePropsFromImageIds(imageIds, volumeId);
|
|
240
|
-
const imagePromises = volumeProps.imageIds.map((imageId, imageIdIndex) => {
|
|
241
|
-
const imageLoadObject = cache.getImageLoadObject(imageId);
|
|
242
|
-
return imageLoadObject.promise.then((image) => {
|
|
243
|
-
const pixelData = image.getPixelData();
|
|
244
|
-
const offset = imageIdIndex * image.rows * image.columns;
|
|
245
|
-
volumeProps.scalarData.set(pixelData, offset);
|
|
246
|
-
});
|
|
247
|
-
});
|
|
248
|
-
await Promise.all(imagePromises);
|
|
249
|
-
const volume = new ImageVolume({
|
|
250
|
-
...volumeProps,
|
|
251
|
-
referencedImageIds: imageIds,
|
|
252
|
-
...options,
|
|
170
|
+
const voxelManager = VoxelManager.createImageVolumeVoxelManager({
|
|
171
|
+
imageIds,
|
|
172
|
+
dimensions,
|
|
173
|
+
numberOfComponents: 1,
|
|
253
174
|
});
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
};
|
|
258
|
-
if (preventCache) {
|
|
259
|
-
return volumeLoadObject.promise;
|
|
175
|
+
imageVolume.voxelManager = voxelManager;
|
|
176
|
+
if (!preventCache) {
|
|
177
|
+
cache.putVolumeSync(volumeId, imageVolume);
|
|
260
178
|
}
|
|
261
|
-
|
|
262
|
-
return volumeLoadObject.promise;
|
|
179
|
+
return imageVolume;
|
|
263
180
|
}
|
|
264
181
|
export function registerVolumeLoader(scheme, volumeLoader) {
|
|
265
182
|
volumeLoaders[scheme] = volumeLoader;
|
|
@@ -275,51 +192,15 @@ export function registerUnknownVolumeLoader(volumeLoader) {
|
|
|
275
192
|
export function getUnknownVolumeLoaderSchema() {
|
|
276
193
|
return unknownVolumeLoader.name;
|
|
277
194
|
}
|
|
278
|
-
export
|
|
195
|
+
export function createAndCacheDerivedSegmentationVolume(referencedVolumeId, options = {}) {
|
|
279
196
|
return createAndCacheDerivedVolume(referencedVolumeId, {
|
|
280
197
|
...options,
|
|
281
|
-
|
|
282
|
-
type: 'Uint8Array',
|
|
283
|
-
},
|
|
198
|
+
targetBufferType: 'Uint8Array',
|
|
284
199
|
});
|
|
285
200
|
}
|
|
286
|
-
export
|
|
201
|
+
export function createLocalSegmentationVolume(options, volumeId, preventCache = false) {
|
|
287
202
|
if (!options.scalarData) {
|
|
288
203
|
options.scalarData = new Uint8Array(options.dimensions[0] * options.dimensions[1] * options.dimensions[2]);
|
|
289
204
|
}
|
|
290
|
-
return createLocalVolume(
|
|
291
|
-
}
|
|
292
|
-
function generateVolumeScalarData(targetBuffer, scalarLength) {
|
|
293
|
-
const { useNorm16Texture } = getConfiguration().rendering;
|
|
294
|
-
const { TypedArrayConstructor, numBytes } = getBufferConfiguration(targetBuffer?.type, scalarLength, {
|
|
295
|
-
use16BitTexture: useNorm16Texture,
|
|
296
|
-
isVolumeBuffer: true,
|
|
297
|
-
});
|
|
298
|
-
const isCacheable = cache.isCacheable(numBytes);
|
|
299
|
-
if (!isCacheable) {
|
|
300
|
-
throw new Error(Events.CACHE_SIZE_EXCEEDED);
|
|
301
|
-
}
|
|
302
|
-
let volumeScalarData;
|
|
303
|
-
if (targetBuffer?.sharedArrayBuffer ?? getShouldUseSharedArrayBuffer()) {
|
|
304
|
-
switch (targetBuffer.type) {
|
|
305
|
-
case 'Float32Array':
|
|
306
|
-
volumeScalarData = createFloat32SharedArray(scalarLength);
|
|
307
|
-
break;
|
|
308
|
-
case 'Uint8Array':
|
|
309
|
-
volumeScalarData = createUint8SharedArray(scalarLength);
|
|
310
|
-
break;
|
|
311
|
-
case 'Uint16Array':
|
|
312
|
-
volumeScalarData = createUint16SharedArray(scalarLength);
|
|
313
|
-
break;
|
|
314
|
-
case 'Int16Array':
|
|
315
|
-
volumeScalarData = createUint16SharedArray(scalarLength);
|
|
316
|
-
break;
|
|
317
|
-
default:
|
|
318
|
-
throw new Error('generateVolumeScalarData: SharedArrayBuffer is not supported for the specified target buffer type');
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
else {
|
|
322
|
-
volumeScalarData = new TypedArrayConstructor(scalarLength);
|
|
323
|
-
}
|
|
324
|
-
return { volumeScalarData, numBytes };
|
|
205
|
+
return createLocalVolume(volumeId, { ...options, preventCache });
|
|
325
206
|
}
|
package/dist/esm/metaData.d.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
export declare function addProvider(provider: (type: string, ...query: string[]) =>
|
|
2
|
-
export declare function removeProvider(provider: (type: string, query:
|
|
3
|
-
any: any;
|
|
4
|
-
}): void;
|
|
1
|
+
export declare function addProvider(provider: (type: string, ...query: string[]) => unknown, priority?: number): void;
|
|
2
|
+
export declare function removeProvider(provider: (type: string, query: unknown) => unknown): void;
|
|
5
3
|
export declare function removeAllProviders(): void;
|
|
6
4
|
declare function getMetaData(type: string, ...queries: any[]): any;
|
|
7
5
|
export { getMetaData as get };
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
import RequestType from '../enums/RequestType';
|
|
2
|
-
import { IImage } from '../types';
|
|
3
|
-
|
|
2
|
+
import type { IImage } from '../types';
|
|
3
|
+
interface AdditionalDetails {
|
|
4
4
|
imageId?: string;
|
|
5
5
|
volumeId?: string;
|
|
6
|
-
}
|
|
7
|
-
|
|
6
|
+
}
|
|
7
|
+
interface RequestDetailsInterface {
|
|
8
8
|
requestFn: () => Promise<IImage | void>;
|
|
9
9
|
type: RequestType;
|
|
10
10
|
additionalDetails: AdditionalDetails;
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
type RequestPool = {
|
|
13
|
-
[name in RequestType]:
|
|
14
|
-
[key: number]: RequestDetailsInterface[];
|
|
15
|
-
};
|
|
13
|
+
[name in RequestType]: Record<number, RequestDetailsInterface[]>;
|
|
16
14
|
};
|
|
17
15
|
declare class RequestPoolManager {
|
|
18
16
|
private id;
|
|
@@ -38,7 +36,7 @@ declare class RequestPoolManager {
|
|
|
38
36
|
private getNextRequest;
|
|
39
37
|
protected startGrabbing(): void;
|
|
40
38
|
protected startAgain(): void;
|
|
41
|
-
protected getSortedPriorityGroups(type: string):
|
|
39
|
+
protected getSortedPriorityGroups(type: string): number[];
|
|
42
40
|
getRequestPool(): RequestPool;
|
|
43
41
|
}
|
|
44
42
|
export { RequestPoolManager };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { VolumeActor } from './IActor';
|
|
2
|
-
import Point3 from './Point3';
|
|
3
|
-
|
|
1
|
+
import type { VolumeActor } from './IActor';
|
|
2
|
+
import type Point3 from './Point3';
|
|
3
|
+
interface ActorSliceRange {
|
|
4
4
|
actor: VolumeActor;
|
|
5
5
|
viewPlaneNormal: Point3;
|
|
6
6
|
focalPoint: Point3;
|
|
7
7
|
min: number;
|
|
8
8
|
max: number;
|
|
9
9
|
current: number;
|
|
10
|
-
}
|
|
11
|
-
export default
|
|
10
|
+
}
|
|
11
|
+
export type { ActorSliceRange as default };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Point4 from './Point4';
|
|
2
|
-
import CPUFallbackLookupTable from './CPUFallbackLookupTable';
|
|
1
|
+
import type Point4 from './Point4';
|
|
2
|
+
import type CPUFallbackLookupTable from './CPUFallbackLookupTable';
|
|
3
3
|
interface CPUFallbackColormap {
|
|
4
4
|
getId: () => string;
|
|
5
5
|
getColorSchemeName: () => string;
|
|
@@ -17,4 +17,4 @@ interface CPUFallbackColormap {
|
|
|
17
17
|
createLookupTable: () => CPUFallbackLookupTable;
|
|
18
18
|
isValidIndex: (index: number) => boolean;
|
|
19
19
|
}
|
|
20
|
-
export default
|
|
20
|
+
export type { CPUFallbackColormap as default };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import Point4 from './Point4';
|
|
2
|
-
|
|
1
|
+
import type Point4 from './Point4';
|
|
2
|
+
interface CPUFallbackColormapData {
|
|
3
3
|
name: string;
|
|
4
4
|
numOfColors?: number;
|
|
5
5
|
colors?: Point4[];
|
|
6
6
|
segmentedData?: unknown;
|
|
7
7
|
numColors?: number;
|
|
8
8
|
gamma?: number;
|
|
9
|
-
}
|
|
10
|
-
export default
|
|
9
|
+
}
|
|
10
|
+
export type { CPUFallbackColormapData as default };
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import CPUFallbackColormapData from './CPUFallbackColormapData';
|
|
2
|
-
type CPUFallbackColormapsData =
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
export default CPUFallbackColormapsData;
|
|
1
|
+
import type CPUFallbackColormapData from './CPUFallbackColormapData';
|
|
2
|
+
type CPUFallbackColormapsData = Record<string, CPUFallbackColormapData>;
|
|
3
|
+
export type { CPUFallbackColormapsData };
|
|
@@ -1,37 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import Mat3 from './Mat3';
|
|
4
|
-
import IImage from './IImage';
|
|
5
|
-
import CPUFallbackViewport from './CPUFallbackViewport';
|
|
6
|
-
import CPUFallbackTransform from './CPUFallbackTransform';
|
|
7
|
-
import CPUFallbackColormap from './CPUFallbackColormap';
|
|
8
|
-
import CPUFallbackRenderingTools from './CPUFallbackRenderingTools';
|
|
9
|
-
import { ImagePlaneModule } from './ImagePlaneModule';
|
|
10
|
-
import { ImagePixelModule } from './ImagePixelModule';
|
|
11
|
-
interface CPUFallbackEnabledElement {
|
|
12
|
-
scale?: number;
|
|
13
|
-
pan?: Point2;
|
|
14
|
-
zoom?: number;
|
|
15
|
-
rotation?: number;
|
|
16
|
-
image?: IImage;
|
|
17
|
-
canvas?: HTMLCanvasElement;
|
|
18
|
-
viewport?: CPUFallbackViewport;
|
|
19
|
-
colormap?: CPUFallbackColormap;
|
|
20
|
-
options?: {
|
|
21
|
-
[key: string]: unknown;
|
|
22
|
-
colormap?: CPUFallbackColormap;
|
|
23
|
-
};
|
|
24
|
-
renderingTools?: CPUFallbackRenderingTools;
|
|
25
|
-
transform?: CPUFallbackTransform;
|
|
26
|
-
invalid?: boolean;
|
|
27
|
-
needsRedraw?: boolean;
|
|
28
|
-
metadata?: {
|
|
29
|
-
direction?: Mat3;
|
|
30
|
-
dimensions?: Point3;
|
|
31
|
-
spacing?: Point3;
|
|
32
|
-
origin?: Point3;
|
|
33
|
-
imagePlaneModule?: ImagePlaneModule;
|
|
34
|
-
imagePixelModule?: ImagePixelModule;
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
export default CPUFallbackEnabledElement;
|
|
1
|
+
import type { CPUFallbackEnabledElement } from './IImage';
|
|
2
|
+
export type { CPUFallbackEnabledElement as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import Point4 from './Point4';
|
|
1
|
+
import type Point4 from './Point4';
|
|
2
2
|
interface CPUFallbackLookupTable {
|
|
3
3
|
setNumberOfTableValues: (number: number) => void;
|
|
4
4
|
setRamp: (ramp: string) => void;
|
|
@@ -12,4 +12,4 @@ interface CPUFallbackLookupTable {
|
|
|
12
12
|
build: (force: boolean) => void;
|
|
13
13
|
setTableValue(index: number, rgba: Point4): any;
|
|
14
14
|
}
|
|
15
|
-
export default
|
|
15
|
+
export type { CPUFallbackLookupTable as default };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import CPUFallbackLookupTable from './CPUFallbackLookupTable';
|
|
2
|
-
import CPUFallbackLUT from './CPUFallbackLUT';
|
|
3
|
-
|
|
1
|
+
import type CPUFallbackLookupTable from './CPUFallbackLookupTable';
|
|
2
|
+
import type CPUFallbackLUT from './CPUFallbackLUT';
|
|
3
|
+
interface CPUFallbackRenderingTools {
|
|
4
4
|
renderCanvas?: HTMLCanvasElement;
|
|
5
5
|
lastRenderedIsColor?: boolean;
|
|
6
6
|
lastRenderedImageId?: string;
|
|
@@ -19,5 +19,5 @@ type CPUFallbackRenderingTools = {
|
|
|
19
19
|
colormapId?: string;
|
|
20
20
|
colorLUT?: CPUFallbackLookupTable;
|
|
21
21
|
renderCanvasData?: ImageData;
|
|
22
|
-
}
|
|
23
|
-
export default
|
|
22
|
+
}
|
|
23
|
+
export type { CPUFallbackRenderingTools as default };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Point2 from './Point2';
|
|
2
|
-
import TransformMatrix2D from './TransformMatrix2D';
|
|
1
|
+
import type Point2 from './Point2';
|
|
2
|
+
import type TransformMatrix2D from './TransformMatrix2D';
|
|
3
3
|
interface CPUFallbackTransform {
|
|
4
4
|
reset: () => void;
|
|
5
5
|
clone: () => CPUFallbackTransform;
|
|
@@ -11,4 +11,4 @@ interface CPUFallbackTransform {
|
|
|
11
11
|
scale: (sx: number, sy: number) => void;
|
|
12
12
|
transformPoint: (point: Point2) => Point2;
|
|
13
13
|
}
|
|
14
|
-
export default
|
|
14
|
+
export type { CPUFallbackTransform as default };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import CPUFallbackViewportDisplayedArea from './CPUFallbackViewportDisplayedArea';
|
|
2
|
-
import CPUFallbackColormap from './CPUFallbackColormap';
|
|
3
|
-
import CPUFallbackLUT from './CPUFallbackLUT';
|
|
4
|
-
|
|
1
|
+
import type CPUFallbackViewportDisplayedArea from './CPUFallbackViewportDisplayedArea';
|
|
2
|
+
import type CPUFallbackColormap from './CPUFallbackColormap';
|
|
3
|
+
import type CPUFallbackLUT from './CPUFallbackLUT';
|
|
4
|
+
interface CPUFallbackViewport {
|
|
5
5
|
scale?: number;
|
|
6
6
|
parallelScale?: number;
|
|
7
7
|
focalPoint?: number[];
|
|
@@ -23,5 +23,5 @@ type CPUFallbackViewport = {
|
|
|
23
23
|
colormap?: CPUFallbackColormap;
|
|
24
24
|
displayedArea?: CPUFallbackViewportDisplayedArea;
|
|
25
25
|
modality?: string;
|
|
26
|
-
}
|
|
27
|
-
export default
|
|
26
|
+
}
|
|
27
|
+
export type { CPUFallbackViewport as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
interface CPUFallbackViewportDisplayedArea {
|
|
2
2
|
tlhc: {
|
|
3
3
|
x: number;
|
|
4
4
|
y: number;
|
|
@@ -10,5 +10,5 @@ type CPUFallbackViewportDisplayedArea = {
|
|
|
10
10
|
rowPixelSpacing: number;
|
|
11
11
|
columnPixelSpacing: number;
|
|
12
12
|
presentationSizeMode: string;
|
|
13
|
-
}
|
|
14
|
-
export default
|
|
13
|
+
}
|
|
14
|
+
export type { CPUFallbackViewportDisplayedArea as default };
|