@cornerstonejs/core 2.0.0-beta.20 → 2.0.0-beta.21
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 +36 -44
- 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 +7 -8
- package/dist/esm/RenderingEngine/RenderingEngine.js +18 -17
- package/dist/esm/RenderingEngine/StackViewport.d.ts +29 -18
- package/dist/esm/RenderingEngine/StackViewport.js +66 -50
- package/dist/esm/RenderingEngine/VideoViewport.d.ts +19 -28
- package/dist/esm/RenderingEngine/VideoViewport.js +59 -22
- package/dist/esm/RenderingEngine/Viewport.d.ts +25 -14
- package/dist/esm/RenderingEngine/Viewport.js +20 -14
- package/dist/esm/RenderingEngine/VolumeViewport.d.ts +21 -9
- package/dist/esm/RenderingEngine/VolumeViewport.js +88 -8
- 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 +2 -2
- 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 +3 -6
- 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 +10 -35
- 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/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 +110 -56
- 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 +48 -254
- package/dist/esm/cache/classes/Surface.d.ts +3 -3
- 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 +4 -3
- package/dist/esm/index.js +3 -2
- package/dist/esm/init.d.ts +5 -8
- package/dist/esm/init.js +21 -82
- package/dist/esm/loaders/ProgressiveRetrieveImages.d.ts +5 -5
- package/dist/esm/loaders/ProgressiveRetrieveImages.js +3 -1
- 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/imageLoader.d.ts +12 -17
- package/dist/esm/loaders/imageLoader.js +174 -95
- 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 +14 -22
- package/dist/esm/loaders/volumeLoader.js +62 -210
- package/dist/esm/metaData.d.ts +2 -4
- package/dist/esm/requestPool/requestPoolManager.d.ts +7 -9
- 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 +14 -11
- 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 +12 -10
- 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 +4 -4
- 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 +1 -1
- 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/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/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/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/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/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/isTypedArray.d.ts +1 -1
- package/dist/esm/utilities/loadImageToCanvas.d.ts +6 -6
- package/dist/esm/utilities/makeVolumeMetadata.d.ts +2 -2
- 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/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/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +5 -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
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { IGeometry, PublicSurfaceData } from '../../../types';
|
|
1
|
+
import type { IGeometry, PublicSurfaceData } from '../../../types';
|
|
2
2
|
export declare function createSurface(geometryId: string, SurfaceData: PublicSurfaceData): IGeometry;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { PublicSurfaceData } from '../../../types';
|
|
1
|
+
import type { PublicSurfaceData } from '../../../types';
|
|
2
2
|
export declare function validateSurface(contourSetData: PublicSurfaceData): void;
|
|
@@ -1,42 +1,34 @@
|
|
|
1
1
|
import '@kitware/vtk.js/Rendering/Profiles/Volume';
|
|
2
|
-
import { Point3, Metadata, Mat3, IImageVolume, VolumeLoaderFn, PixelDataTypedArray, PixelDataTypedArrayString } from '../types';
|
|
2
|
+
import type { Point3, Metadata, Mat3, IImageVolume, VolumeLoaderFn, PixelDataTypedArray, PixelDataTypedArrayString } from '../types';
|
|
3
3
|
interface VolumeLoaderOptions {
|
|
4
|
-
imageIds:
|
|
4
|
+
imageIds: string[];
|
|
5
5
|
}
|
|
6
6
|
interface DerivedVolumeOptions {
|
|
7
7
|
volumeId: string;
|
|
8
|
-
|
|
9
|
-
type: PixelDataTypedArrayString;
|
|
10
|
-
sharedArrayBuffer?: boolean;
|
|
11
|
-
};
|
|
8
|
+
targetBufferType?: PixelDataTypedArrayString;
|
|
12
9
|
}
|
|
13
|
-
interface LocalVolumeOptions {
|
|
10
|
+
export interface LocalVolumeOptions {
|
|
14
11
|
metadata: Metadata;
|
|
15
12
|
dimensions: Point3;
|
|
16
13
|
spacing: Point3;
|
|
17
14
|
origin: Point3;
|
|
18
15
|
direction: Mat3;
|
|
19
16
|
scalarData?: PixelDataTypedArray;
|
|
20
|
-
imageIds?:
|
|
21
|
-
referencedImageIds?:
|
|
17
|
+
imageIds?: string[];
|
|
18
|
+
referencedImageIds?: string[];
|
|
22
19
|
referencedVolumeId?: string;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
sharedArrayBuffer?: boolean;
|
|
26
|
-
};
|
|
20
|
+
preventCache?: boolean;
|
|
21
|
+
targetBufferType?: PixelDataTypedArrayString;
|
|
27
22
|
}
|
|
28
23
|
export declare function loadVolume(volumeId: string, options?: VolumeLoaderOptions): Promise<IImageVolume>;
|
|
29
|
-
export declare function
|
|
30
|
-
export declare function createAndCacheDerivedVolume(referencedVolumeId: string, options: DerivedVolumeOptions):
|
|
31
|
-
export declare function
|
|
32
|
-
export declare function
|
|
33
|
-
preventCache?: boolean;
|
|
34
|
-
additionalDetails?: Record<string, any>;
|
|
35
|
-
}): Promise<IImageVolume>;
|
|
24
|
+
export declare function createAndCacheVolume(volumeId: string, options?: VolumeLoaderOptions): Promise<IImageVolume>;
|
|
25
|
+
export declare function createAndCacheDerivedVolume(referencedVolumeId: string, options: DerivedVolumeOptions): IImageVolume;
|
|
26
|
+
export declare function createAndCacheVolumeFromImages(volumeId: string, imageIds: string[]): Promise<IImageVolume>;
|
|
27
|
+
export declare function createLocalVolume(volumeId: string, options?: LocalVolumeOptions): IImageVolume;
|
|
36
28
|
export declare function registerVolumeLoader(scheme: string, volumeLoader: VolumeLoaderFn): void;
|
|
37
29
|
export declare function getVolumeLoaderSchemes(): string[];
|
|
38
30
|
export declare function registerUnknownVolumeLoader(volumeLoader: VolumeLoaderFn): VolumeLoaderFn | undefined;
|
|
39
31
|
export declare function getUnknownVolumeLoaderSchema(): string;
|
|
40
|
-
export declare function createAndCacheDerivedSegmentationVolume(referencedVolumeId: string, options?: DerivedVolumeOptions):
|
|
41
|
-
export declare function createLocalSegmentationVolume(options: LocalVolumeOptions, volumeId: string, preventCache?: boolean):
|
|
32
|
+
export declare function createAndCacheDerivedSegmentationVolume(referencedVolumeId: string, options?: DerivedVolumeOptions): IImageVolume;
|
|
33
|
+
export declare function createLocalSegmentationVolume(options: LocalVolumeOptions, volumeId: string, preventCache?: boolean): IImageVolume;
|
|
42
34
|
export {};
|
|
@@ -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 { getBufferConfiguration, uuidv4, VoxelManager } from '../utilities';
|
|
8
|
+
import { imageLoader } from '..';
|
|
9
|
+
import { createAndCacheLocalImage } 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,112 @@ 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
|
-
|
|
142
|
-
}
|
|
71
|
+
const derivedImages = imageLoader.createAndCacheDerivedImages(referencedImageIds, {
|
|
72
|
+
targetBufferType: options.targetBufferType,
|
|
73
|
+
});
|
|
74
|
+
const dataType = derivedImages[0].dataType;
|
|
75
|
+
const derivedVolumeImageIds = derivedImages.map((image) => image.imageId);
|
|
143
76
|
const derivedVolume = new ImageVolume({
|
|
144
77
|
volumeId,
|
|
78
|
+
dataType,
|
|
145
79
|
metadata: structuredClone(metadata),
|
|
146
80
|
dimensions: [dimensions[0], dimensions[1], dimensions[2]],
|
|
147
81
|
spacing,
|
|
148
82
|
origin,
|
|
149
83
|
direction,
|
|
150
|
-
imageData: derivedImageData,
|
|
151
|
-
scalarData: volumeScalarData,
|
|
152
|
-
sizeInBytes: numBytes,
|
|
153
84
|
referencedVolumeId,
|
|
154
85
|
imageIds: derivedVolumeImageIds,
|
|
155
86
|
referencedImageIds: referencedVolume.imageIds ?? [],
|
|
156
87
|
});
|
|
157
|
-
|
|
158
|
-
promise: Promise.resolve(derivedVolume),
|
|
159
|
-
};
|
|
160
|
-
await cache.putVolumeLoadObject(volumeId, volumeLoadObject);
|
|
161
|
-
performCacheOptimizationForVolume(derivedVolume);
|
|
88
|
+
cache.putVolumeSync(volumeId, derivedVolume);
|
|
162
89
|
return derivedVolume;
|
|
163
90
|
}
|
|
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));
|
|
91
|
+
export async function createAndCacheVolumeFromImages(volumeId, imageIds) {
|
|
92
|
+
if (imageIds === undefined) {
|
|
93
|
+
throw new Error('createAndCacheVolumeFromImages: parameter imageIds must not be undefined');
|
|
179
94
|
}
|
|
180
95
|
if (volumeId === undefined) {
|
|
181
|
-
volumeId
|
|
96
|
+
throw new Error('createAndCacheVolumeFromImages: parameter volumeId must not be undefined');
|
|
182
97
|
}
|
|
183
98
|
const cachedVolume = cache.getVolume(volumeId);
|
|
184
99
|
if (cachedVolume) {
|
|
185
100
|
return cachedVolume;
|
|
186
101
|
}
|
|
187
|
-
const
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
102
|
+
const volume = (await createAndCacheVolume(volumeId, {
|
|
103
|
+
imageIds,
|
|
104
|
+
}));
|
|
105
|
+
return volume;
|
|
106
|
+
}
|
|
107
|
+
export function createLocalVolume(volumeId, options = {}) {
|
|
108
|
+
const { metadata, dimensions, spacing, origin, direction, scalarData, targetBufferType, preventCache = false, } = options;
|
|
109
|
+
const cachedVolume = cache.getVolume(volumeId);
|
|
110
|
+
if (cachedVolume) {
|
|
111
|
+
return cachedVolume;
|
|
191
112
|
}
|
|
192
|
-
const
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
const
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
113
|
+
const sliceLength = dimensions[0] * dimensions[1];
|
|
114
|
+
const dataType = scalarData
|
|
115
|
+
? scalarData.constructor.name
|
|
116
|
+
: targetBufferType;
|
|
117
|
+
const imageIds = [];
|
|
118
|
+
const derivedImages = [];
|
|
119
|
+
for (let i = 0; i < dimensions[2]; i++) {
|
|
120
|
+
const imageId = `${volumeId}_slice_${i}`;
|
|
121
|
+
imageIds.push(imageId);
|
|
122
|
+
const sliceData = scalarData.subarray(i * sliceLength, (i + 1) * sliceLength);
|
|
123
|
+
const derivedImage = createAndCacheLocalImage(imageId, {
|
|
124
|
+
scalarData: sliceData,
|
|
125
|
+
dimensions: [dimensions[0], dimensions[1]],
|
|
126
|
+
spacing: [spacing[0], spacing[1]],
|
|
127
|
+
origin,
|
|
128
|
+
direction,
|
|
129
|
+
targetBufferType: dataType,
|
|
130
|
+
});
|
|
131
|
+
derivedImages.push(derivedImage);
|
|
132
|
+
}
|
|
133
|
+
const imageVolume = new ImageVolume({
|
|
204
134
|
volumeId,
|
|
205
135
|
metadata: structuredClone(metadata),
|
|
206
136
|
dimensions: [dimensions[0], dimensions[1], dimensions[2]],
|
|
207
137
|
spacing,
|
|
208
138
|
origin,
|
|
209
139
|
direction,
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
sizeInBytes: numBytes,
|
|
213
|
-
referencedImageIds: options.referencedImageIds || [],
|
|
214
|
-
referencedVolumeId: options.referencedVolumeId,
|
|
215
|
-
imageIds: options.imageIds || [],
|
|
140
|
+
imageIds,
|
|
141
|
+
dataType,
|
|
216
142
|
});
|
|
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,
|
|
143
|
+
const voxelManager = VoxelManager.createImageVolumeVoxelManager({
|
|
144
|
+
imageIds,
|
|
145
|
+
dimensions,
|
|
146
|
+
numberOfComponents: 1,
|
|
253
147
|
});
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
};
|
|
258
|
-
if (preventCache) {
|
|
259
|
-
return volumeLoadObject.promise;
|
|
260
|
-
}
|
|
261
|
-
cache.putVolumeLoadObject(volumeId, volumeLoadObject);
|
|
262
|
-
return volumeLoadObject.promise;
|
|
148
|
+
imageVolume.voxelManager = voxelManager;
|
|
149
|
+
cache.putVolumeSync(volumeId, imageVolume);
|
|
150
|
+
return imageVolume;
|
|
263
151
|
}
|
|
264
152
|
export function registerVolumeLoader(scheme, volumeLoader) {
|
|
265
153
|
volumeLoaders[scheme] = volumeLoader;
|
|
@@ -275,51 +163,15 @@ export function registerUnknownVolumeLoader(volumeLoader) {
|
|
|
275
163
|
export function getUnknownVolumeLoaderSchema() {
|
|
276
164
|
return unknownVolumeLoader.name;
|
|
277
165
|
}
|
|
278
|
-
export
|
|
166
|
+
export function createAndCacheDerivedSegmentationVolume(referencedVolumeId, options = {}) {
|
|
279
167
|
return createAndCacheDerivedVolume(referencedVolumeId, {
|
|
280
168
|
...options,
|
|
281
|
-
|
|
282
|
-
type: 'Uint8Array',
|
|
283
|
-
},
|
|
169
|
+
targetBufferType: 'Uint8Array',
|
|
284
170
|
});
|
|
285
171
|
}
|
|
286
|
-
export
|
|
172
|
+
export function createLocalSegmentationVolume(options, volumeId, preventCache = false) {
|
|
287
173
|
if (!options.scalarData) {
|
|
288
174
|
options.scalarData = new Uint8Array(options.dimensions[0] * options.dimensions[1] * options.dimensions[2]);
|
|
289
175
|
}
|
|
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 };
|
|
176
|
+
return createLocalVolume(volumeId, { ...options, preventCache });
|
|
325
177
|
}
|
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,13 +1,15 @@
|
|
|
1
|
-
import Point2 from './Point2';
|
|
2
|
-
import Point3 from './Point3';
|
|
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';
|
|
1
|
+
import type Point2 from './Point2';
|
|
2
|
+
import type Point3 from './Point3';
|
|
3
|
+
import type Mat3 from './Mat3';
|
|
4
|
+
import type IImage from './IImage';
|
|
5
|
+
import type CPUFallbackViewport from './CPUFallbackViewport';
|
|
6
|
+
import type CPUFallbackTransform from './CPUFallbackTransform';
|
|
7
|
+
import type CPUFallbackColormap from './CPUFallbackColormap';
|
|
8
|
+
import type CPUFallbackRenderingTools from './CPUFallbackRenderingTools';
|
|
9
|
+
import type { ImagePlaneModule } from './ImagePlaneModule';
|
|
10
|
+
import type { ImagePixelModule } from './ImagePixelModule';
|
|
11
|
+
import type RGB from './RGB';
|
|
12
|
+
import type { IVoxelManager } from './IVoxelManager';
|
|
11
13
|
interface CPUFallbackEnabledElement {
|
|
12
14
|
scale?: number;
|
|
13
15
|
pan?: Point2;
|
|
@@ -33,5 +35,6 @@ interface CPUFallbackEnabledElement {
|
|
|
33
35
|
imagePlaneModule?: ImagePlaneModule;
|
|
34
36
|
imagePixelModule?: ImagePixelModule;
|
|
35
37
|
};
|
|
38
|
+
voxelManager?: IVoxelManager<number> | IVoxelManager<RGB>;
|
|
36
39
|
}
|
|
37
|
-
export default
|
|
40
|
+
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 };
|