]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOGimmickView.cpp
For a given file, display all dicom tags.
[creaImageIO.git] / src2 / creaImageIOGimmickView.cpp
index d990cb56b942e509197655e39841dd74c612c30a..6df7fc0132413e211c5a4c9d9b326a009654dba2 100644 (file)
@@ -5,7 +5,6 @@
 #include <gdcmSerieHelper.h>
 #include <vtkGdcmReader.h>
 namespace fs = boost::filesystem;
-
 namespace creaImageIO
 {
 
@@ -285,7 +284,7 @@ namespace creaImageIO
   ///Reads Images (Non Threaded)
 void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vector<std::string> im, int dimension)
 {
-
+       mReader.Stop();
 /* remember!
 
 #define GIMMICK_NO_IMAGE_SELECTION 0
@@ -301,7 +300,9 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
        // Create the output data
        if (im.size()==1) 
        {
-               // O0.
+               vtkImageData * out=vtkImageData::New();
+               out->ShallowCopy(mReader.GetImage(im.front()));
+               s.push_back(out);
        }
     else if (im.size()>1) // Test inutile ? JPR
        {
@@ -321,7 +322,7 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
                {
                        // n*2D to 3D
                        vtkImageData* out = vtkImageData::New();
-                       out->CopyStructure(first);      
+//                     out->CopyStructure(first);      
                        out->SetScalarType(first->GetScalarType());
                        out->SetNumberOfScalarComponents(first->GetNumberOfScalarComponents());
                        int ext[6];
@@ -360,7 +361,7 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
                        // Order the file name vector
 
                        double spc[3];
-                       out->GetSpacing(spc);
+                       first->GetSpacing(spc);
                        spc[2]=OrderTheFileNameVector(im);      
                        out->SetSpacing(spc);
                        int slice = 0;