]> Creatis software - creaMaracasVisu.git/blobdiff - bbtk/src/bbcreaMaracasVisuSliceImage.cxx
#3468 Refres for 3D+t Visu
[creaMaracasVisu.git] / bbtk / src / bbcreaMaracasVisuSliceImage.cxx
index 653b0c85ddf15d75110fa2c9878cf5599f893222..2ffd69822a4fa39f7fabed10ab3e6e10e8c66b2d 100644 (file)
@@ -32,6 +32,7 @@ namespace bbcreaMaracasVisu
        
 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,SliceImage)
 BBTK_BLACK_BOX_IMPLEMENTATION(SliceImage,bbtk::AtomicBlackBox);
+
 void SliceImage::Process()
 {
        vtkImageData *imagedata=NULL;
@@ -42,21 +43,21 @@ void SliceImage::Process()
 
 //EED 2017-01-01 Migration VTK7
 #if VTK_MAJOR_VERSION <= 5
-         imageReslice->SetInput( bbGetInputIn() );
+               imageReslice->SetInput( bbGetInputIn() );
 #else
-         imageReslice->SetInputData( bbGetInputIn() );
+               imageReslice->SetInputData( bbGetInputIn() );
 #endif
 
-         imageReslice->SetInformationInput(bbGetInputIn() );
+               imageReslice->SetInformationInput(bbGetInputIn() );
 
-         double slice=bbGetInputSlice();
-         if (slice<0) 
-          
-               slice=0;
-          
-       
-         if (bbGetInputTypeOrientation()==3)
-         {
+               double slice=bbGetInputSlice();
+               if (slice<0) 
+       { 
+                       slice=0;
+       } 
+
+               if (bbGetInputTypeOrientation()==3)
+               {
                // Orientation 3 = FREE
                // v1 = [ v1x , v1y , v1z ]
                // v2 = [ v2x , v2y , v2z ]
@@ -107,8 +108,7 @@ void SliceImage::Process()
                // SetResliceAxesDirectionCosines(v1x,v2x,v3x,v1y,v2y,v3y,v1z,v2z,v3z);
               imageReslice->SetResliceAxesDirectionCosines( 1,0,0,   0,0,1,   0,-1,0 ); 
               imageReslice->SetResliceAxesOrigin(0, slice*bbGetInputIn()->GetSpacing()[1],0 );
-         } else    
-         {
+         } else    {
                // Orientation 0 = XY
                // v1 = [ 1 , 0 , 0 ]
                // v2 = [ 0 , 1 , 0 ]
@@ -118,16 +118,11 @@ void SliceImage::Process()
               imageReslice->SetResliceAxesOrigin(0,0, slice*bbGetInputIn()->GetSpacing()[2] );
          } 
          imageReslice->SetOutputDimensionality(2);
-         imageReslice->SetInterpolationModeToLinear();
-
-
-
-
-
-
-
-
 
+               if ( bbGetInputInterpolationMode()==0) { printf("EED neighbor\n"); imageReslice->SetInterpolationModeToNearestNeighbor();       }
+               if ( bbGetInputInterpolationMode()==1) { printf("EED linear\n"); imageReslice->SetInterpolationModeToLinear();                  }
+               if ( bbGetInputInterpolationMode()==2) { printf("EED Cubic\n"); imageReslice->SetInterpolationModeToCubic();                    }
+                       
 //EED 2017-01-01 Migration VTK7
 #if VTK_MAJOR_VERSION <= 5
          imagedata = imageReslice->GetOutput();
@@ -149,6 +144,7 @@ void SliceImage::Process()
                bbSetInputIn(NULL);
                bbSetInputZ(0);
                bbSetInputSlice(0);
+               bbSetInputInterpolationMode(2);  // Linear
                bbSetInputTypeOrientation(0);
                imageReslice=NULL;
                std::vector<double> lstCos;