X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=tools%2FclitkRelativePositionGenericFilter.txx;h=8af353a495d5b71c2f7143aba82928389063f32d;hb=7f7c290c75d4917446f8751856ae7d450f58a6f0;hp=08dc2b5df4a451db7658fe48b1d523e27e054089;hpb=d1dfb9965d4dc32fc4e5f31f39928048ea61f706;p=clitk.git diff --git a/tools/clitkRelativePositionGenericFilter.txx b/tools/clitkRelativePositionGenericFilter.txx index 08dc2b5..8af353a 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" @@ -69,6 +69,9 @@ SetOptionsFromArgsInfoToFilter(FilterType * f) f->SetVerboseStepFlag(mArgsInfo.verboseStep_flag); f->SetWriteStepFlag(mArgsInfo.writeStep_flag); + // Must be set before AddOrientationTypeString + f->SetInverseOrientationFlag(mArgsInfo.inverse_flag); + for(uint i=0; iAddOrientationTypeString(mArgsInfo.orientation_arg[i]); } @@ -77,12 +80,14 @@ SetOptionsFromArgsInfoToFilter(FilterType * f) f->IntermediateSpacingFlagOn(); f->SetIntermediateSpacing(mArgsInfo.spacing_arg); } + else { + f->IntermediateSpacingFlagOff(); + } f->SetFuzzyThreshold(mArgsInfo.threshold_arg); f->SetRemoveObjectFlag(!mArgsInfo.doNotRemoveObject_flag); f->SetAutoCropFlag(!mArgsInfo.noAutoCrop_flag); f->SetCombineWithOrFlag(mArgsInfo.combineWithOr_flag); - f->SetInverseOrientationFlag(mArgsInfo.inverse_flag); } //-------------------------------------------------------------------- @@ -112,7 +117,13 @@ UpdateWithInputImageType() // Set options only for SliceBySliceRelativePositionFilter filter->SetDirection(mArgsInfo.direction_arg); - filter->SetUniqueConnectedComponentBySlice(mArgsInfo.uniqueCCL_flag); + filter->SetUniqueConnectedComponentBySliceFlag(mArgsInfo.uniqueCCL_flag); + if (mArgsInfo.uniqueObjectCCL_flag) { + filter->UseTheLargestObjectCCLFlagOn(); + } + else { + filter->UseTheLargestObjectCCLFlagOff(); + } // Go ! filter->Update(); @@ -133,7 +144,7 @@ UpdateWithInputImageType() filter->SetInput(input); filter->SetInputObject(object); if (mArgsInfo.angle1_given && mArgsInfo.angle2_given) - filter->AddAngles(mArgsInfo.angle1_arg, mArgsInfo.angle2_arg); + filter->AddAnglesInDeg(mArgsInfo.angle1_arg, mArgsInfo.angle2_arg); SetOptionsFromArgsInfoToFilter(filter); // Go !