From 715dfc556a3883de31d74012dcc99e431d91f57d Mon Sep 17 00:00:00 2001 From: Alireza Date: Mon, 30 Aug 2021 09:01:46 -0400 Subject: [PATCH] fix: MPR metadata parsing for spacings (#2517) * fix: MPR metadata parsing for spacings * fix: OHIF Metadata provider for validNumbers for imagePlaneModule --- extensions/vtk/src/OHIFVTKViewport.js | 6 +++--- platform/core/src/classes/MetadataProvider.js | 18 +++++++++--------- platform/viewer/public/config/default.js | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/extensions/vtk/src/OHIFVTKViewport.js b/extensions/vtk/src/OHIFVTKViewport.js index aa11b5c32..92d5ab86a 100644 --- a/extensions/vtk/src/OHIFVTKViewport.js +++ b/extensions/vtk/src/OHIFVTKViewport.js @@ -72,7 +72,7 @@ class OHIFVTKViewport extends Component { }; static defaultProps = { - onScroll: () => {}, + onScroll: () => { }, }; static id = 'OHIFVTKViewport'; @@ -271,7 +271,7 @@ class OHIFVTKViewport extends Component { volumeMapper.setSampleDistance(sampleDistance); - // Be generous to surpress warnings, as the logging really hurts performance. + // Be generous to suppress warnings, as the logging really hurts performance. // TODO: maybe we should auto adjust samples to 1000. volumeMapper.setMaximumSamplesPerRay(4000); @@ -398,7 +398,7 @@ class OHIFVTKViewport extends Component { if ( displaySet.displaySetInstanceUID !== - prevDisplaySet.displaySetInstanceUID || + prevDisplaySet.displaySetInstanceUID || displaySet.SOPInstanceUID !== prevDisplaySet.SOPInstanceUID || displaySet.frameIndex !== prevDisplaySet.frameIndex ) { diff --git a/platform/core/src/classes/MetadataProvider.js b/platform/core/src/classes/MetadataProvider.js index c1517468e..763e23f6b 100644 --- a/platform/core/src/classes/MetadataProvider.js +++ b/platform/core/src/classes/MetadataProvider.js @@ -231,26 +231,26 @@ class MetadataProvider { let columnCosines; if (PixelSpacing) { - rowPixelSpacing = PixelSpacing[0]; - columnPixelSpacing = PixelSpacing[1]; + rowPixelSpacing = validNumber(PixelSpacing[0]); + columnPixelSpacing = validNumber(PixelSpacing[1]); } if (ImageOrientationPatient) { - rowCosines = ImageOrientationPatient.slice(0, 3); - columnCosines = ImageOrientationPatient.slice(3, 6); + rowCosines = validNumber(ImageOrientationPatient.slice(0, 3)); + columnCosines = validNumber(ImageOrientationPatient.slice(3, 6)); } metadata = { frameOfReferenceUID: instance.FrameOfReferenceUID, rows: instance.Rows, columns: instance.Columns, - imageOrientationPatient: ImageOrientationPatient, + imageOrientationPatient: validNumber(ImageOrientationPatient), rowCosines, columnCosines, - imagePositionPatient: instance.ImagePositionPatient, - sliceThickness: instance.SliceThickness, - sliceLocation: instance.SliceLocation, - pixelSpacing: PixelSpacing, + imagePositionPatient: validNumber(instance.ImagePositionPatient), + sliceThickness: validNumber(instance.SliceThickness), + sliceLocation: validNumber(instance.SliceLocation), + pixelSpacing: validNumber(PixelSpacing), rowPixelSpacing, columnPixelSpacing, }; diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index 7db1fe70d..7bc3bc78e 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -124,6 +124,6 @@ window.config = { // If the server is particularly slow to respond to series metadata // requests as it extracts the metadata from raw files everytime, // try setting this to even lower value - // Leave it undefined for no limit, sutiable for HTTP/2 enabled servers + // Leave it undefined for no limit, suitable for HTTP/2 enabled servers // maxConcurrentMetadataRequests: 5, };