Mercurial > hg > orthanc
comparison OrthancServer/OrthancRestApi/OrthancRestResources.cpp @ 3816:09f091b6b569
/rendered route: fix automatic windowing of files without windowing tags and RescaleSlope != 1
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Wed, 08 Apr 2020 14:49:54 +0200 |
parents | 2a170a8f1faf |
children | 2910b0d30fe0 |
comparison
equal
deleted
inserted
replaced
3800:38b0f51781aa | 3816:09f091b6b569 |
---|---|
692 { | 692 { |
693 dicom.ParseFloat(rescaleSlope, Orthanc::DICOM_TAG_RESCALE_SLOPE); | 693 dicom.ParseFloat(rescaleSlope, Orthanc::DICOM_TAG_RESCALE_SLOPE); |
694 dicom.ParseFloat(rescaleIntercept, Orthanc::DICOM_TAG_RESCALE_INTERCEPT); | 694 dicom.ParseFloat(rescaleIntercept, Orthanc::DICOM_TAG_RESCALE_INTERCEPT); |
695 } | 695 } |
696 | 696 |
697 windowWidth = static_cast<float>(1 << info.GetBitsStored()); | 697 windowWidth = static_cast<float>(1 << info.GetBitsStored()) * rescaleSlope; |
698 windowCenter = windowWidth / 2.0f; | 698 windowCenter = windowWidth / 2.0f + rescaleIntercept; |
699 | 699 |
700 if (dicom.HasTag(Orthanc::DICOM_TAG_WINDOW_CENTER) && | 700 if (dicom.HasTag(Orthanc::DICOM_TAG_WINDOW_CENTER) && |
701 dicom.HasTag(Orthanc::DICOM_TAG_WINDOW_WIDTH)) | 701 dicom.HasTag(Orthanc::DICOM_TAG_WINDOW_WIDTH)) |
702 { | 702 { |
703 dicom.ParseFirstFloat(windowCenter, Orthanc::DICOM_TAG_WINDOW_CENTER); | 703 dicom.ParseFirstFloat(windowCenter, Orthanc::DICOM_TAG_WINDOW_CENTER); |