]> Creatis software - bbtk.git/blobdiff - packages/vtk/src/bbvtkRescaleSlopeIntercept.cxx
#3212 BBTK Feature New Normal - vtk8itk4wx3-mingw64
[bbtk.git] / packages / vtk / src / bbvtkRescaleSlopeIntercept.cxx
index 639fd2a036b2a7d4ac36d79a9702596a5ed301f9..a1d5805b56c26eb450e3d1beb8333119a54590d2 100644 (file)
@@ -31,6 +31,7 @@
 #include "bbvtkRescaleSlopeIntercept.h"
 #include "bbvtkPackage.h"
 
+#include "bbtkStaticLecture.h"
 
 namespace bbvtk
 {
@@ -42,7 +43,6 @@ BBTK_BLACK_BOX_IMPLEMENTATION(RescaleSlopeIntercept,bbtk::AtomicBlackBox);
 //===== 
 void RescaleSlopeIntercept::Process()
 {
-
 // THE MAIN PROCESSING METHOD BODY
 //   Here we simply set the input 'In' value to the output 'Out'
 //   And print out the output value
@@ -65,28 +65,13 @@ void RescaleSlopeIntercept::Process()
        
        if (bbGetInputIn()!=0)
        {
-               if (bbGetInputOutputFormat()=="SAME")                                   outputformat = bbGetInputIn()->GetScalarType();
-               else if (bbGetInputOutputFormat()=="VTK_BIT")                   outputformat = VTK_BIT;
-               else if (bbGetInputOutputFormat()=="VTK_CHAR")                  outputformat = VTK_CHAR;
-               else if (bbGetInputOutputFormat()=="VTK_SIGNED_CHAR")   outputformat = VTK_SIGNED_CHAR;
-               else if (bbGetInputOutputFormat()=="VTK_UNSIGNED_CHAR") outputformat = VTK_UNSIGNED_CHAR;
-               else if (bbGetInputOutputFormat()=="VTK_UNSIGNED_SHORT") outputformat = VTK_UNSIGNED_SHORT;
-               else if (bbGetInputOutputFormat()=="VTK_INT")                   outputformat = VTK_INT;
-               else if (bbGetInputOutputFormat()=="VTK_UNSIGNED_INT")  outputformat = VTK_UNSIGNED_INT;
-               else if (bbGetInputOutputFormat()=="VTK_LONG")                  outputformat = VTK_LONG;
-               else if (bbGetInputOutputFormat()=="VTK_UNSIGNED_LONG") outputformat = VTK_UNSIGNED_LONG;
-               else if (bbGetInputOutputFormat()=="VTK_FLOAT")                 outputformat = VTK_FLOAT;
-               else if (bbGetInputOutputFormat()=="VTK_DOUBLE")                outputformat = VTK_DOUBLE;
-               
-               
+               int outputformat = bbtkStaticLecture::GetTypeFormat( bbGetInputOutputFormat() , bbGetInputIn() );
                bbGetInputIn()->GetScalarRange(range);
                bbGetInputIn()->GetSpacing(spc);
                bbGetInputIn()->GetExtent( ext );                               
-               
                double range0plusrange1 = range[0]+range[1];
                double difrange                 = range[1]-range[0];
                double newdifrange              = B-A;
-               
                double shift;
                double scale;
                
@@ -118,28 +103,47 @@ void RescaleSlopeIntercept::Process()
                        shift= A + (range[1]*newdifrange/difrange);
                } // if type 3
                
+
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
                filter1->SetInput( bbGetInputIn() );
+#else
+               filter1->SetInputData( bbGetInputIn() );
+#endif
+
                filter1->SetOutputScalarType( VTK_DOUBLE );
                filter1->SetShift( 0 );
                filter1->SetScale( scale );
                
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
                filter2->SetInput( filter1->GetOutput() );
+#else
+               filter2->SetInputData( filter1->GetOutput() );
+#endif
+
                filter2->SetOutputScalarType( outputformat );
                filter2->SetShift( shift );
                filter2->SetScale( 1 );
                
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
                mchange->SetInput( filter2->GetOutput() );
+#else
+               mchange->SetInputData( filter2->GetOutput() );
+#endif
+
                mchange->SetExtentTranslation( -ext[0], -ext[2], -ext[4] );
                mchange->SetOutputSpacing (spc);
+               filter1->Update();    //important
+               filter2->Update();    //important
                mchange->Update();    //important
                bbSetOutputOut( mchange->GetOutput() );
-               
        } else  {
                bbSetOutputOut( NULL );
        }               // if bbGetInputIn      
 }
        
-       
 //===== 
 // Don't edit this file. This file is generated from xml description.. 
 //===== 
@@ -153,7 +157,6 @@ void RescaleSlopeIntercept::bbUserSetDefaultValues()
        bbSetInputA(1);
        bbSetInputB(0);
        bbSetInputOutputFormat("SAME");
-
        filter1 = NULL;
        filter2 = NULL;
        mchange = NULL;
@@ -163,17 +166,13 @@ void RescaleSlopeIntercept::bbUserSetDefaultValues()
 //===== 
 void RescaleSlopeIntercept::bbUserInitializeProcessing()
 {
-
 //  THE INITIALIZATION METHOD BODY :
 //    Here does nothing 
 //    but this is where you should allocate the internal/output pointers 
 //    if any 
-
        filter1 = vtkImageShiftScale::New();
        filter2 = vtkImageShiftScale::New();
        mchange = vtkImageChangeInformation::New();
-
-  
 }
 //===== 
 // Don't edit this file. This file is generated from xml description..