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)
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
}