]> Creatis software - bbtk.git/blobdiff - packages/vtk/src/bbvtkPolyDataWriterPlus.cxx
#3107 BBTK Bug New Normal - branch vtk7itk4 compilation with vtk7
[bbtk.git] / packages / vtk / src / bbvtkPolyDataWriterPlus.cxx
index ad81efb0e035ae4bed22866317dbaec1116f7b79..e960ef44dee4bef035987ca8425aece4efc86764 100755 (executable)
@@ -1,3 +1,30 @@
+/*
+ # ---------------------------------------------------------------------
+ #
+ # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+ #                        pour la SantÈ)
+ # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+ # Previous Authors : Laurent Guigues, Jean-Pierre Roux
+ # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+ #
+ #  This software is governed by the CeCILL-B license under French law and
+ #  abiding by the rules of distribution of free software. You can  use,
+ #  modify and/ or redistribute the software under the terms of the CeCILL-B
+ #  license as circulated by CEA, CNRS and INRIA at the following URL
+ #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+ #  or in the file LICENSE.txt.
+ #
+ #  As a counterpart to the access to the source code and  rights to copy,
+ #  modify and redistribute granted by the license, users are provided only
+ #  with a limited warranty  and the software's author,  the holder of the
+ #  economic rights,  and the successive licensors  have only  limited
+ #  liability.
+ #
+ #  The fact that you are presently reading this means that you have had
+ #  knowledge of the CeCILL-B license and that you accept its terms.
+ # ------------------------------------------------------------------------ */
+
+
 #include "bbvtkPolyDataWriterPlus.h"
 #include "bbvtkPackage.h"
 namespace bbvtk
@@ -5,9 +32,10 @@ namespace bbvtk
 
 BBTK_ADD_BLACK_BOX_TO_PACKAGE(vtk,PolyDataWriterPlus)
 BBTK_BLACK_BOX_IMPLEMENTATION(PolyDataWriterPlus,bbtk::AtomicBlackBox);
+
 void PolyDataWriterPlus::Process()
 {
-       std::cout << "[" << this << "]" << "PolyDataWriterPlus::Process()..." << std::endl;
+//     std::cout << "[" << this << "]" << "PolyDataWriterPlus::Process()..." << std::endl;
        //Review the observers...
 
        if (!HasObserver(OBS_PRE_WRITER_1) && bbGetInputInPrePersistObs1() != NULL)
@@ -32,35 +60,35 @@ void PolyDataWriterPlus::Process()
                {
                        std::cout << "Set In." << std::endl;
                        return;
+               } else {
+                       vtkProp3D* actor                        = bbGetInputIn2();
+                       vtkPolyDataMapper* mapper       = ((vtkPolyDataMapper*)((vtkActor*)actor)->GetMapper());
+                       cosa                                            = mapper->GetInput();
                }
-               else
-               {
-                       vtkProp3D* actor = bbGetInputIn2();
-                       vtkPolyDataMapper* mapper = ((vtkPolyDataMapper*)((vtkActor*)actor)->GetMapper());
-                       cosa = mapper->GetInput();
-               }
-       }
-       else
-       {
+       } else {
                cosa = bbGetInputIn();
        }
 
        std::string nuevo_nombre = guessName(bbGetInputInPath());
 
-
        vtkPolyData* entrada = cosa;
-       std::cout << "Before writing" << std::endl;
-       entrada->Print(std::cout);
+//     std::cout << "Before writing" << std::endl;
+//     entrada->Print(std::cout);
 
        std::vector< std::string > partes = StringSplit(nuevo_nombre, ".");
        std::string extension = partes.at(partes.size()-1);
 
-       std::cout << "Extension (vtk, vtp o stl?) => " << extension << std::endl;
-
-
+//     std::cout << "Extension (vtk, vtp o stl?) => " << extension << std::endl;
 
        vtkDataSetSurfaceFilter* surfaceFilter = vtkDataSetSurfaceFilter::New();
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
        surfaceFilter->SetInput(entrada);
+#else
+       surfaceFilter->SetInputData(entrada);
+#endif
+
        surfaceFilter->Update();
        //vtkPolyData* polydata = surfaceFilter->GetOutput();
        entrada = surfaceFilter->GetOutput();
@@ -68,7 +96,14 @@ void PolyDataWriterPlus::Process()
        if (extension.compare("vtk") == 0)
        {
                vtkPolyDataWriter* writer = vtkPolyDataWriter::New();
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
                writer->SetInput(entrada);
+#else
+               writer->SetInputData(entrada);
+#endif
+
                writer->SetFileName(nuevo_nombre.data());
                writer->Write();
                writer->Delete();
@@ -78,7 +113,14 @@ void PolyDataWriterPlus::Process()
        {
                vtkXMLPolyDataWriter* writer = vtkXMLPolyDataWriter::New();
                writer->SetFileName ( nuevo_nombre.data() );
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
                writer->SetInput ( entrada );
+#else
+               writer->SetInputData ( entrada );
+#endif
+
                writer->Write();
                writer->Delete();
        }
@@ -87,17 +129,24 @@ void PolyDataWriterPlus::Process()
        {
                vtkSTLWriter* writer = vtkSTLWriter::New();
                writer->SetFileName ( nuevo_nombre.data() );
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
                writer->SetInput ( entrada );
+#else
+               writer->SetInputData ( entrada );
+#endif
+
                writer->Write();
                writer->Print(std::cout);
                writer->Delete();
        }
 
-
        std::cout << "Saving Ok!" << std::endl;
 
        InvokeEvent(OBS_POST_WRITER_1);
 }
+
 void PolyDataWriterPlus::bbUserSetDefaultValues()
 {