]> Creatis software - clitk.git/blobdiff - common/vvFromITK.h
used vtkSmartPointer
[clitk.git] / common / vvFromITK.h
index 9e1f7c1c61e8aee0d3eab373c1bdf012359efa9f..fb1e8827c2c6b25d5719c96cc2ca5bde385ebc16 100644 (file)
@@ -1,35 +1,31 @@
 /*=========================================================================
+  Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
 
- Program:   vv
- Language:  C++
- Author :   Joel Schaerer (joel.schaerer@insa-lyon.fr)
+  Authors belong to: 
+  - University of LYON              http://www.universite-lyon.fr/
+  - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
+  - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
-Copyright (C) 2008
-Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
-CREATIS-LRMN http://www.creatis.insa-lyon.fr
+  This software is distributed WITHOUT ANY WARRANTY; without even
+  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+  PURPOSE.  See the copyright notices for more information.
 
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, version 3 of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-=========================================================================*/
+  It is distributed under dual licence
 
+  - BSD        See included LICENSE.txt file
+  - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+======================================================================-====*/
 #ifndef VVIMAGEFROMITK_H
 #define VVIMAGEFROMITK_H
 
+// vv
 #include "vvImage.h"
-//#include <itkImage.h>
+
+// itk
 #include <itkExtractImageFilter.h>
 #include <itkImageToVTKImageFilter.h>
 
+//------------------------------------------------------------------------------
 /**Converts the itk image to vv, handling the 4D problem
  * The time_sequence boolean specifies that the image is to be interpreted as a time sequence,
  * even if its dim is < 4. */
@@ -84,9 +80,11 @@ template<unsigned int Dim, class PixelType> vvImage::Pointer vvImageFromITK(type
                 return vv_image;
             }
             vtkImageData *image = vtkImageData::New();
-            image->DeepCopy(connector->GetOutput());
+            image->ShallowCopy(connector->GetOutput());
             vv_image->AddImage(image);
         }
+        vv_image->SetTimeSpacing(input->GetSpacing()[Dim-1]);
+        vv_image->SetTimeOrigin(input->GetOrigin()[Dim-1]);        
     }
     else //Dim == 1,2,3 and not time_sequence
     {
@@ -104,10 +102,11 @@ template<unsigned int Dim, class PixelType> vvImage::Pointer vvImageFromITK(type
             return vv_image;
         }
         vtkImageData *image = vtkImageData::New();
-        image->DeepCopy(connector->GetOutput());
+        image->ShallowCopy(connector->GetOutput());
         vv_image->AddImage(image);
     }
     return vv_image;
 }
+//------------------------------------------------------------------------------
 
 #endif //vvImageFromITK