X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk_creaVtk_PKG%2Fsrc%2FbbcreaVtkImageContinuousErode3D.cxx;h=a123ae6f13e646397f6d28839d8568ba565bf06e;hb=a58b0ef3e9adb0fd28caeb807b7fd2c904c4363a;hp=debccc0b0f0cbe37c6732d0567e4430eee67ecd4;hpb=dccc47ebcfa2ad7a2a6a8770f6975336897d7d06;p=creaVtk.git diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkImageContinuousErode3D.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkImageContinuousErode3D.cxx index debccc0..a123ae6 100644 --- a/bbtk_creaVtk_PKG/src/bbcreaVtkImageContinuousErode3D.cxx +++ b/bbtk_creaVtk_PKG/src/bbcreaVtkImageContinuousErode3D.cxx @@ -13,8 +13,13 @@ BBTK_BLACK_BOX_IMPLEMENTATION(ImageContinuousErode3D,bbtk::AtomicBlackBox); void ImageContinuousErode3D::Process() { + if (bbGetInputImage()!=NULL) + { vtkImageData* result = erodeFilterRecursive(bbGetInputImage(), bbGetInputRepetitions(), bbGetInputX(),bbGetInputY(),bbGetInputZ()); bbSetOutputOut(result); + } else { + bbSetOutputOut(NULL); + } // if Image } vtkImageData* ImageContinuousErode3D::erodeFilterRecursive(vtkImageData* image, int repetitions, double x, double y, double z) @@ -27,15 +32,13 @@ vtkImageData* ImageContinuousErode3D::erodeFilterRecursive(vtkImageData* image, erodeFilter->SetInputData(image); #endif erodeFilter->SetKernelSize(x, y, z); - erodeFilter->Modified(); + erodeFilter->Modified(); erodeFilter->Update(); - vtkImageData* resultRec; if(repetitions == 0) { - resultRec = erodeFilter->GetOutput(); - return resultRec; + return erodeFilter->GetOutput(); }else{ - erodeFilterRecursive(erodeFilter->GetOutput(), (repetitions-1), x, y, z); + return erodeFilterRecursive(erodeFilter->GetOutput(), repetitions-1, x, y, z); } // if repetitions }