X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=tools%2FclitkRelativePositionGenericFilter.txx;h=6e4814fe33e3ba2c1b197d6707ff2f4ef9b8b7b6;hb=dacff874d9d3cc4cf26429dc677832d221b963c3;hp=2e62b42957846569b3b66fbfb86a58b169ab0f4d;hpb=18383744683942aab80bfaf99600279c1854d151;p=clitk.git diff --git a/tools/clitkRelativePositionGenericFilter.txx b/tools/clitkRelativePositionGenericFilter.txx index 2e62b42..6e4814f 100644 --- a/tools/clitkRelativePositionGenericFilter.txx +++ b/tools/clitkRelativePositionGenericFilter.txx @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,7 +14,7 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html - ======================================================================-====*/ + ===========================================================================**/ #include "clitkImageCommon.h" @@ -65,22 +65,24 @@ template void clitk::RelativePositionGenericFilter:: SetOptionsFromArgsInfoToFilter(FilterType * f) { - f->SetVerboseOption(mArgsInfo.verbose_flag); - f->SetVerboseStep(mArgsInfo.verboseStep_flag); - f->SetWriteStep(mArgsInfo.writeStep_flag); + f->SetVerboseOptionFlag(mArgsInfo.verboseOptions_flag); + f->SetVerboseStepFlag(mArgsInfo.verboseStep_flag); + f->SetWriteStepFlag(mArgsInfo.writeStep_flag); - if (mArgsInfo.orientation_given) { - f->SetOrientationTypeString(mArgsInfo.orientation_arg); + for(uint i=0; iAddOrientationTypeString(mArgsInfo.orientation_arg[i]); } if (mArgsInfo.spacing_given) { - f->ResampleBeforeRelativePositionFilterOn(); + f->IntermediateSpacingFlagOn(); f->SetIntermediateSpacing(mArgsInfo.spacing_arg); } f->SetFuzzyThreshold(mArgsInfo.threshold_arg); - f->SetNotFlag(mArgsInfo.not_flag); + f->SetRemoveObjectFlag(!mArgsInfo.doNotRemoveObject_flag); f->SetAutoCropFlag(!mArgsInfo.noAutoCrop_flag); + f->SetCombineWithOrFlag(mArgsInfo.combineWithOr_flag); + f->SetInverseOrientationFlag(mArgsInfo.inverse_flag); } //-------------------------------------------------------------------- @@ -107,7 +109,10 @@ UpdateWithInputImageType() filter->SetInput(input); filter->SetInputObject(object); SetOptionsFromArgsInfoToFilter(filter); - filter->SetDirection(mArgsInfo.direction_arg); // only for SliceBySliceRelativePositionFilter + + // Set options only for SliceBySliceRelativePositionFilter + filter->SetDirection(mArgsInfo.direction_arg); + filter->SetUniqueConnectedComponentBySlice(mArgsInfo.uniqueCCL_flag); // Go ! filter->Update(); @@ -127,8 +132,8 @@ UpdateWithInputImageType() // Set global Options filter->SetInput(input); filter->SetInputObject(object); - filter->SetAngle1(mArgsInfo.angle1_arg);// only for this filter - filter->SetAngle2(mArgsInfo.angle2_arg); + if (mArgsInfo.angle1_given && mArgsInfo.angle2_given) + filter->AddAngles(mArgsInfo.angle1_arg, mArgsInfo.angle2_arg); SetOptionsFromArgsInfoToFilter(filter); // Go !