X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk_creaVtk_PKG%2Fsrc%2FbbcreaVtkPolyDataToImageData.cxx;h=b5a495f11662c44b6352a6e2548db97ef8bfffbf;hb=8c7873427767fa386e12a2c27587d7b73412d417;hp=2e80837c8b0050c437d8e8262755ee3be7a1a5d1;hpb=9425856446ebe42a86c40bec5b93367b7bcd1fd2;p=creaVtk.git diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkPolyDataToImageData.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkPolyDataToImageData.cxx index 2e80837..b5a495f 100644 --- a/bbtk_creaVtk_PKG/src/bbcreaVtkPolyDataToImageData.cxx +++ b/bbtk_creaVtk_PKG/src/bbcreaVtkPolyDataToImageData.cxx @@ -4,16 +4,6 @@ #include "bbcreaVtkPolyDataToImageData.h" #include "bbcreaVtkPackage.h" -#include "vtkPolyDataToImageStencil.h" -#include "vtkImageStencil.h" - -#include "vtkCleanPolyData.h" -#include "vtkTriangleFilter.h" - -#include "vtkExtractVOI.h" -#include "vtkExtractVOI.h" - - namespace bbcreaVtk { @@ -41,7 +31,7 @@ void PolyDataToImageData::Process() // bbSetOutputOut( bbGetInputIn() ); // std::cout << "Output value = " <GetExtent( ext ); - vtkCleanPolyData *clean1 = vtkCleanPolyData::New(); +// vtkCleanPolyData *clean1 = vtkCleanPolyData::New(); + if (clean1!=NULL) clean1->Delete(); + clean1 = vtkCleanPolyData::New(); clean1->SetInputData( bbGetInputInPolyData() ); clean1->Update(); vtkTriangleFilter *triangle1 = vtkTriangleFilter::New(); triangle1->SetInputData( clean1->GetOutput() ); triangle1->Update(); - vtkPolyDataToImageStencil *dataToStencil = vtkPolyDataToImageStencil::New(); +// vtkPolyDataToImageStencil *dataToStencil = vtkPolyDataToImageStencil::New(); + if (dataToStencil!=NULL) dataToStencil->Delete(); + dataToStencil = vtkPolyDataToImageStencil::New(); dataToStencil->SetInputData( triangle1->GetOutput() ); dataToStencil->SetOutputWholeExtent( ext ); dataToStencil->Update(); - vtkExtractVOI *extract = vtkExtractVOI::New(); +// vtkExtractVOI *extract = vtkExtractVOI::New(); + if (extract!=NULL) extract->Delete(); + extract = vtkExtractVOI::New(); extract->SetVOI( ext ); extract->SetSampleRate(1, 1, 1); extract->SetInputData( bbGetInputInImage() ); extract->ReleaseDataFlagOff(); extract->Update(); - vtkImageStencil *stencil = vtkImageStencil::New(); +// vtkImageStencil *stencil = vtkImageStencil::New(); + if (stencil!=NULL) stencil->Delete(); + stencil = vtkImageStencil::New(); stencil->SetInputData( extract->GetOutput() ); stencil->Update(); stencil->SetStencilData( dataToStencil->GetOutput() ); @@ -120,8 +118,11 @@ void PolyDataToImageData::bbUserInitializeProcessing() // Here does nothing // but this is where you should allocate the internal/output pointers // if any + clean1 = NULL; + dataToStencil = NULL; + extract = NULL; + stencil = NULL; - } //===== // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)