]> Creatis software - gdcm.git/blobdiff - src/gdcmOrientation.cxx
ENH: sagital -> sagittal
[gdcm.git] / src / gdcmOrientation.cxx
index 47fed19256c29d7dd09c21a4fd3f8f8583335ebe..be0aa685aecd79771d2ed351de32d0a691abea9e 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmOrientation.cxx,v $
   Language:  C++
-  Date:      $Date: 2005/11/25 13:56:32 $
-  Version:   $Revision: 1.20 $
+  Date:      $Date: 2008/08/18 12:27:10 $
+  Version:   $Revision: 1.27 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -21,7 +21,7 @@
 #include "gdcmDebug.h"
 #include <math.h> // for sqrt
 
-namespace gdcm 
+namespace GDCM_NAME_SPACE 
 {
 //--------------------------------------------------------------------
 //  THERALYS Algorithm to determine the most similar basic orientation
@@ -33,7 +33,7 @@ namespace gdcm
 
 /**
  * \brief  THERALYS' Algorithm to determine the most similar basic orientation
- *           (Axial, Coronal, Sagital) of the image
+ *           (Axial, Coronal, Sagittal) of the image
  * \note Should be run on the first gdcm::File of a 'coherent' Serie
  * @return orientation code
  *   #   0 : Not Applicable (neither 0020,0037 Image Orientation Patient 
@@ -42,35 +42,35 @@ namespace gdcm
  *   #  -1 : Axial invert
  *   #   2 : Coronal
  *   #  -2 : Coronal invert
- *   #   3 : Sagital
- *   #  -3 : Sagital invert
+ *   #   3 : Sagittal
+ *   #  -3 : Sagittal invert
  *   #   4 : Heart Axial
  *   #  -4 : Heart Axial invert
  *   #   5 : Heart Coronal
  *   #  -5 : Heart Coronal invert
- *   #   6 : Heart Sagital
- *   #  -6 : Heart Sagital invert
+ *   #   6 : Heart Sagittal
+ *   #  -6 : Heart Sagittal invert
  */
 
 static const char  *OrientationTypeStrings[] = { 
   "Not Applicable",
   "Axial",
   "Coronal",
-  "Sagital",
+  "Sagittal",
   "Heart Axial",
   "Heart Coronal",
-  "Heart Sagital",
+  "Heart Sagittal",
   "Axial invert",
   "Coronal invert",
-  "Sagital invert",
+  "Sagittal invert",
   "Heart Axial invert",
   "Heart Coronal invert",
-  "Heart Sagital invert",
+  "Heart Sagittal invert",
   NULL
 };
 
 /// \brief returns human readable interpretation of the most 
-///        similar basic orientation (Axial, Coronal, Sagital, ...) of the image
+///        similar basic orientation (Axial, Coronal, Sagittal, ...) of the image
 const char* Orientation::GetOrientationTypeString(OrientationType const o)
 {
   int k = (int)o;
@@ -81,14 +81,14 @@ const char* Orientation::GetOrientationTypeString(OrientationType const o)
 }
 
 /// \brief returns of the most similar basic orientation
-///        (Axial, Coronal, Sagital, ...) of the image
+///        (Axial, Coronal, Sagittal, ...) of the image
 OrientationType Orientation::GetOrientationType( File *f )
 {
-   double iop[6];
+   float iop[6];
    bool succ = f->GetImageOrientationPatient( iop );
    if ( !succ )
    {
-      gdcmErrorMacro( "No Image Orientation (0020,0037)/(0020,0032) found in the file, cannot proceed." )
+      gdcmWarningMacro( "No Image Orientation (0020,0037)/(0020,0032) found in the file, cannot proceed." )
       return NotApplicable;
    }
    vector3D ori1;
@@ -276,6 +276,7 @@ have multiple letters in as described under "refinements" in C.7.6.1.1.1):
 /**
  * \brief Computes the Patient Orientation relative to the image plane
  *          from the 'Image Orientation (Patient)'
+ *          - or from 0020 0035Image Orientation (RET) -
  *          - The first entry is the direction of the rows, given by the 
  *          direction of the last pixel in the first row from the first 
  *          pixel in that row. 
@@ -288,11 +289,11 @@ have multiple letters in as described under "refinements" in C.7.6.1.1.1):
  *          - Refinements in the orientation descriptions are designated 
  *          by one or two additional letters in each value.
  *          Use it when "Patient Orientation" (0020,0020) is not found 
- * @return orientation string as "rawOrientation\columnsOrientation"
+ * @return orientation string as "rowsOrientation\columnsOrientation"
  */
 std::string Orientation::GetOrientation ( File *f )
 {
-   double iop[6];
+   float iop[6];
    if ( !f->GetImageOrientationPatient( iop ) )
    return GDCM_UNFOUND;
 
@@ -304,7 +305,7 @@ std::string Orientation::GetOrientation ( File *f )
 }
 
 
-std::string Orientation::GetSingleOrientation ( double *iop)
+std::string Orientation::GetSingleOrientation ( float *iop)
 {
    std::string orientation;
 
@@ -396,7 +397,7 @@ GetPatSliceOrient(gdcm::File &h)
   enum { transaxial, sagittal, coronal } slice_orientation;
 
   std::string patient_position = h.GetEntryByNumber(0x0018,0x5100);
-  if(patient_position == "gdcm::Unfound")
+  if(patient_position == GDCM_UNFOUND)
     {
     patient_position = "HF";
     }