]> Creatis software - clitk.git/blobdiff - itk/itkFlexibleBinaryFunctorImageFilter.txx
First Modification for Qt5 & VTK6
[clitk.git] / itk / itkFlexibleBinaryFunctorImageFilter.txx
index 09147878ce69130bfeb093a81d06e5f2103a5d34..d8258ccf7859bc352ab8517cf5b2efe29a1f521d 100644 (file)
@@ -98,7 +98,11 @@ template <class TInputImage1, class TInputImage2, class TOutputImage, class TFun
 void
 FlexibleBinaryFunctorImageFilter<TInputImage1, TInputImage2, TOutputImage, TFunction>
 ::ThreadedGenerateData( const OutputImageRegionType &outputRegionForThread,
+#if ITK_VERSION_MAJOR >= 4  
+                        itk::ThreadIdType threadId )
+#else
                         int threadId)
+#endif
 {
   const unsigned int dim = Input1ImageType::ImageDimension;
   
@@ -119,7 +123,7 @@ FlexibleBinaryFunctorImageFilter<TInputImage1, TInputImage2, TOutputImage, TFunc
   typename Input2ImageType::PointType point2;
 
   ImageRegionConstIterator<TInputImage1> inputIt1(inputPtr1, outputRegionForThread);
-  ImageRegionConstIterator<TInputImage2> inputIt2(inputPtr2, outputRegionForThread);
+  ImageRegionConstIterator<TInputImage2> inputIt2(inputPtr2, region2);
 
   ImageRegionIterator<TOutputImage> outputIt(outputPtr, outputRegionForThread);
 
@@ -135,11 +139,12 @@ FlexibleBinaryFunctorImageFilter<TInputImage1, TInputImage2, TOutputImage, TFunc
   outputIt.GoToBegin();
 
   while( !inputIt1.IsAtEnd() ) {
-    
-    if (region2.IsInside(index2))
+    if (region2.IsInside(index2)) {
       outputIt.Set( m_Functor( inputIt1.Get(), inputIt2.Get() ) );
-    else
+    }
+    else {
       outputIt.Set(inputIt1.Get());
+    }
     
     ++inputIt1;
     index1 = inputIt1.GetIndex();