From 9bbdb35d88c2acb5af6f49a09dae27556314c637 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Tue, 13 Apr 2021 12:57:28 +0200 Subject: [PATCH] IDC2259: do not check uniform spacing in the 4th dimension for 4D datasets (#2356) --- .../src/utils/isDisplaySetReconstructable.js | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/platform/core/src/utils/isDisplaySetReconstructable.js b/platform/core/src/utils/isDisplaySetReconstructable.js index 31855964b..1950e3254 100644 --- a/platform/core/src/utils/isDisplaySetReconstructable.js +++ b/platform/core/src/utils/isDisplaySetReconstructable.js @@ -90,6 +90,12 @@ function processSingleframe(instances) { } } + // check if dataset is 4D + const datasetIs4D = _isDataset4D(instances); + if (datasetIs4D) { + warningIssues.push(ReconstructionIssues.DATASET_4D); + } + let missingFrames = 0; // Check if frame spacing is approximately equal within a spacingTolerance. @@ -115,6 +121,14 @@ function processSingleframe(instances) { ImagePositionPatient, previousImagePositionPatient ); + + if (datasetIs4D && spacingBetweenFrames < 1.e-3) { + // the dataset is 4D, if the distance is zero, means that we are + // checking the 4th dimension. Do not return, since we want still to + // check the 3rd dimension spacing. + continue; + } + const spacingIssue = _getSpacingIssue( spacingBetweenFrames, averageSpacingBetweenFrames @@ -136,10 +150,7 @@ function processSingleframe(instances) { } } - // check if dataset is 4D - if (_isDataset4D(instances)) { - warningIssues.push(ReconstructionIssues.DATASET_4D); - } + return { value: warningIssues.length === 0 ? true : false, missingFrames, warningIssues }; }