]> Creatis software - clitk.git/blobdiff - tools/clitkRelativePositionGenericFilter.txx
Set the inverse orientation flag after the addorientation
[clitk.git] / tools / clitkRelativePositionGenericFilter.txx
index 6e4814fe33e3ba2c1b197d6707ff2f4ef9b8b7b6..4114e55cfc1b8d1f238dfb42659ee7e47f2a8901 100644 (file)
@@ -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; i<mArgsInfo.orientation_given; i++) {
     f->AddOrientationTypeString(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();