From 59cdc4ba9a1a99095021b3515689caf252893bfe Mon Sep 17 00:00:00 2001 From: Igor Octaviano Date: Mon, 19 Jun 2023 10:31:04 -0300 Subject: [PATCH] fix(SEG): Missing SpacingBetweenSlices prevents SEG rendering (#3344) Co-authored-by: Igor Octaviano --- .../viewports/OHIFCornerstoneSEGViewport.tsx | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/extensions/cornerstone-dicom-seg/src/viewports/OHIFCornerstoneSEGViewport.tsx b/extensions/cornerstone-dicom-seg/src/viewports/OHIFCornerstoneSEGViewport.tsx index 08ed004f0..0df1a29da 100644 --- a/extensions/cornerstone-dicom-seg/src/viewports/OHIFCornerstoneSEGViewport.tsx +++ b/extensions/cornerstone-dicom-seg/src/viewports/OHIFCornerstoneSEGViewport.tsx @@ -71,7 +71,8 @@ function OHIFCornerstoneSEGViewport(props) { const referencedDisplaySet = segDisplaySet.getReferenceDisplaySet(); const referencedDisplaySetMetadata = _getReferencedDisplaySetMetadata( - referencedDisplaySet + referencedDisplaySet, + segDisplaySet ); referencedDisplaySetRef.current = { @@ -381,20 +382,28 @@ OHIFCornerstoneSEGViewport.defaultProps = { customProps: {}, }; -function _getReferencedDisplaySetMetadata(referencedDisplaySet) { +function _getReferencedDisplaySetMetadata(referencedDisplaySet, segDisplaySet) { + const { + SharedFunctionalGroupsSequence: [SharedFunctionalGroup], + } = segDisplaySet.instance; + const { + PixelMeasuresSequence: [PixelMeasures], + } = SharedFunctionalGroup; + const { SpacingBetweenSlices, SliceThickness } = PixelMeasures; + const image0 = referencedDisplaySet.images[0]; const referencedDisplaySetMetadata = { PatientID: image0.PatientID, PatientName: image0.PatientName, PatientSex: image0.PatientSex, PatientAge: image0.PatientAge, - SliceThickness: image0.SliceThickness, + SliceThickness: image0.SliceThickness || SliceThickness, StudyDate: image0.StudyDate, SeriesDescription: image0.SeriesDescription, SeriesInstanceUID: image0.SeriesInstanceUID, SeriesNumber: image0.SeriesNumber, ManufacturerModelName: image0.ManufacturerModelName, - SpacingBetweenSlices: image0.SpacingBetweenSlices, + SpacingBetweenSlices: image0.SpacingBetweenSlices || SpacingBetweenSlices, }; return referencedDisplaySetMetadata;