]> Creatis software - gdcm.git/commitdiff
*ENH: Add Rescale Slope & Intercept helper, defaults are:
authormalaterre <malaterre>
Fri, 7 Nov 2003 14:57:58 +0000 (14:57 +0000)
committermalaterre <malaterre>
Fri, 7 Nov 2003 14:57:58 +0000 (14:57 +0000)
0 for Intercept
1 for Slope

src/gdcmHeaderHelper.cxx
src/gdcmHeaderHelper.h

index 25d2d80c55d1e0dde855a0ebae8ff24f7e3fc5d2..cc3053cb9b986ec688ec5653fe9cef669cb22a67 100644 (file)
@@ -1,4 +1,4 @@
-// $Header: /cvs/public/gdcm/src/Attic/gdcmHeaderHelper.cxx,v 1.15 2003/11/03 10:49:31 jpr Exp $
+// $Header: /cvs/public/gdcm/src/Attic/gdcmHeaderHelper.cxx,v 1.16 2003/11/07 14:57:58 malaterre Exp $
 
 #include "gdcmHeaderHelper.h"
 
@@ -497,6 +497,35 @@ std::string gdcmHeaderHelper::GetInstanceUID()
 {
   return GetPubElValByNumber(0x0008,0x0018); //0008 0018 UI ID SOP Instance UID
 }
+//----------------------------------------------------------------------------
+float gdcmHeaderHelper::GetRescaleIntercept()
+{
+  float resInter;
+  std::string StrRescInter = GetPubElValByNumber(0x0028,0x1052); //0028 1052 DS IMG Rescale Intercept
+  if (StrRescInter != GDCM_UNFOUND) {
+      if( sscanf( StrRescInter.c_str(), "%f", &resInter) != 1) {
+         dbg.Verbose(0, "gdcmHeader::GetRescaleIntercept: Rescale Slope is empty");
+         return 0.;  // bug in the element 0x0028,0x1052
+      } else {
+         return resInter;
+      }    
+   }  
+}
+//----------------------------------------------------------------------------
+float gdcmHeaderHelper::GetRescaleSlope()
+{
+  float resSlope;
+  std::string StrRescSlope = GetPubElValByNumber(0x0028,0x1053); //0028 1053 DS IMG Rescale Slope
+  if (StrRescSlope != GDCM_UNFOUND) {
+      if( sscanf( StrRescSlope.c_str(), "%f", &resSlope) != 1) {
+         dbg.Verbose(0, "gdcmHeader::GetRescaleSlope: Rescale Slope is empty");
+         return 1.;  // bug in the element 0x0028,0x1053
+      } else {
+         return resSlope;
+      }    
+   }  
+}
 
 
 
index c09bbbb79c0f59a6dfc91c2a39ada17ecda5dfb5..bef35ad618a892acaedf9a7d47e5a5efdb8e4c09 100644 (file)
@@ -1,4 +1,4 @@
-// $Header: /cvs/public/gdcm/src/Attic/gdcmHeaderHelper.h,v 1.5 2003/11/03 10:49:31 jpr Exp $
+// $Header: /cvs/public/gdcm/src/Attic/gdcmHeaderHelper.h,v 1.6 2003/11/07 14:57:58 malaterre Exp $
 
 #ifndef GDCMHEADERHELPER_H
 #define GDCMHEADERHELPER_H
@@ -76,6 +76,10 @@ public:
    float GetXSpacing();
    float GetYSpacing();
    float GetZSpacing();
+   
+   //Usefull for rescaling graylevel:
+   float GetRescaleIntercept();
+   float GetRescaleSlope();
 
    int GetNumberOfScalarComponents();
    int GetNumberOfScalarComponentsRaw();