]> Creatis software - gdcm.git/commitdiff
* vtk/vtkGdcmWriter.cxx, Example/WriteDicomSimple.cxx : add comments for
authorregrain <regrain>
Fri, 10 Dec 2004 08:34:06 +0000 (08:34 +0000)
committerregrain <regrain>
Fri, 10 Dec 2004 08:34:06 +0000 (08:34 +0000)
     each added entry in the header. Replace the 'Planes' field by the 'Number
     of Frames' field
   -- BeNours

ChangeLog
Example/WriteDicomSimple.cxx
vtk/vtkGdcmWriter.cxx

index ea4843ed8fcedb03698941067774bbf3a5f0fe47..1e2662ac7b7c3ccbab3a8aaf7f76ca96a78cf7c3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-12-10 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
+   * vtk/vtkGdcmWriter.cxx, Example/WriteDicomSimple.cxx : add comments for
+     each added entry in the header. Replace the 'Planes' field by the 'Number
+     of Frames' field
+
 2004-12-09 Benoit Regrain <Benoit.Regrain@creatis.insa-lyon.fr>
    * vtk/vtkGdcmWriter.[h|cxx] : now can write stack of images.
    * vtk/vtkWriteDicom.cxx : can write 2D stack or 3D image
index 8503e531d7ffd51319179e029805c260be482701..8ffbade3a33e364f1d71609f6875d5a6ab153771 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: WriteDicomSimple.cxx,v $
   Language:  C++
-  Date:      $Date: 2004/12/09 11:31:52 $
-  Version:   $Revision: 1.1 $
+  Date:      $Date: 2004/12/10 08:34:07 $
+  Version:   $Revision: 1.2 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -62,39 +62,39 @@ int main(int argc, char* argv[])
    // Set the image size
    str.str("");
    str << SIZE_X;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0011);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0011); // Columns
 
    str.str("");
    str << SIZE_Y;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0010);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0010); // Rows
 
    // Set the pixel type
    str.str("");
    str << COMPONENT_SIZE * 8;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0100);
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0101);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0100); // Bits Allocated
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0101); // Bits Stored
 
    str.str("");
    str << COMPONENT_SIZE * 8 - 1;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0102);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0102); // High Bit
 
    // Set the pixel representation
    str.str("");
    str << "0"; // Unsigned
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0103);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0103); // Pixel Representation
 
    // Set the samples per pixel
    str.str("");
    str << COMPONENT;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0002);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x0002); // Samples per Pixel
 
    // Set the Window / Level
    str.str("");
    str << COLOR_WINDOW;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x1051);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x1051); // Window Width
    str.str("");
    str << COLOR_LEVEL;
-   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x1050);
+   header->ReplaceOrCreateByNumber(str.str(),0x0028,0x1050); // Window Center
 
    if( !header->IsReadable() )
    {
index c9843e32136c2b746bf9962a956b76dfc36fbfc9..7d6a697c13e01f790b352569262a970581a3f72b 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: vtkGdcmWriter.cxx,v $
   Language:  C++
-  Date:      $Date: 2004/12/09 17:08:36 $
-  Version:   $Revision: 1.6 $
+  Date:      $Date: 2004/12/10 08:34:08 $
+  Version:   $Revision: 1.7 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -26,7 +26,7 @@
 #include <vtkPointData.h>
 #include <vtkLookupTable.h>
 
-vtkCxxRevisionMacro(vtkGdcmWriter, "$Revision: 1.6 $");
+vtkCxxRevisionMacro(vtkGdcmWriter, "$Revision: 1.7 $");
 vtkStandardNewMacro(vtkGdcmWriter);
 
 //-----------------------------------------------------------------------------
@@ -106,28 +106,29 @@ void SetImageInformation(gdcm::File *file,vtkImageData *image)
 
    str.str("");
    str << dim[0];
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0011);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0011); // Columns
 
    str.str("");
    str << dim[1];
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0010);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0010); // Rows
 
    if(dim[2]>1)
    {
       str.str("");
       str << dim[2];
-      file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0012);
+      //file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0012); // Planes
+      file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0008); // Number of Frames
    }
 
    // Pixel type
    str.str("");
    str << image->GetScalarSize()*8;
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0100);
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0101);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0100); // Bits Allocated
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0101); // Bits Stored
 
    str.str("");
    str << image->GetScalarSize()*8-1;
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0102);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0102); // High Bit
 
    // Pixel Repr
    // FIXME : what do we do when the ScalarType is 
@@ -144,39 +145,39 @@ void SetImageInformation(gdcm::File *file,vtkImageData *image)
    {
       str << "1"; // Signed
    }
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0103);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0103); // Pixel Representation
 
    // Samples per pixel
    str.str("");
    str << image->GetNumberOfScalarComponents();
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0002);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0002); // Samples per Pixel
 
    // Spacing
    double *sp = image->GetSpacing();
 
    str.str("");
    str << sp[0] << "\\" << sp[1];
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0030);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x0030); // Pixel Spacing
    str.str("");
    str << sp[2];
-   file->ReplaceOrCreateByNumber(str.str(),0x0018,0x0088);
+   file->ReplaceOrCreateByNumber(str.str(),0x0018,0x0088); // Spacing Between Slices
 
    // Origin
    double *org = image->GetOrigin();
 
    str.str("");
    str << org[0] << "\\" << org[1] << "\\" << org[2];
-   file->ReplaceOrCreateByNumber(str.str(),0x0020,0x0032);
+   file->ReplaceOrCreateByNumber(str.str(),0x0020,0x0032); // Image Position Patient
 
    // Window / Level
    double *rng=image->GetScalarRange();
 
    str.str("");
    str << rng[1]-rng[0];
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x1051);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x1051); // Window Width
    str.str("");
    str << (rng[1]+rng[0])/2.0;
-   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x1050);
+   file->ReplaceOrCreateByNumber(str.str(),0x0028,0x1050); // Window Center
 
    // Pixels
    unsigned char *data;