]> Creatis software - bbtk.git/blobdiff - packages/vtk/src/bbvtkCreateImage.cxx
#3212 BBTK Feature New Normal - vtk8itk4wx3-mingw64
[bbtk.git] / packages / vtk / src / bbvtkCreateImage.cxx
index c5f71b5fa96406085fd4901905d020c7d9025e90..007c34718cc779e17897a44f3ddd81ec35f4dddc 100644 (file)
@@ -56,6 +56,7 @@ void CreateImage::Process()
        double  spc[3];
        int             dim[3]; 
        int             outputformat = VTK_UNSIGNED_SHORT;
+       
        if (bbGetInputOutputFormat()=="VTK_BIT")                                        outputformat = VTK_BIT;                 // 1
        else if (bbGetInputOutputFormat()=="VTK_CHAR")                          outputformat = VTK_CHAR;                                // 2
        else if (bbGetInputOutputFormat()=="MET_CHAR")                          outputformat = VTK_CHAR;                                // 2
@@ -78,6 +79,7 @@ void CreateImage::Process()
        else if (bbGetInputOutputFormat()=="MET_FLOAT")                         outputformat = VTK_FLOAT;               // 10
        else if (bbGetInputOutputFormat()=="VTK_DOUBLE")                        outputformat = VTK_DOUBLE;              // 11           
        else if (bbGetInputOutputFormat()=="MET_DOUBLE")                        outputformat = VTK_DOUBLE;              // 11  
+
        spc[0] = bbGetInputSpacing()[0];
        spc[1] = bbGetInputSpacing()[1];
        spc[2] = bbGetInputSpacing()[2];
@@ -103,27 +105,47 @@ void CreateImage::Process()
        }       
        imageoutput = vtkImageData::New();
        imageoutput->Initialize();
-       imageoutput->SetScalarType( outputformat );     
        imageoutput->SetSpacing( spc );
        imageoutput->SetDimensions(  dim[0], dim[1], dim[2] );
+
+//EED 2017-01-01 Migration VTK7
+#if (VTK_MAJOR_VERSION <= 5) 
+       imageoutput->SetScalarType( outputformat );     
        imageoutput->AllocateScalars();
+#endif
+#if (VTK_MAJOR_VERSION >= 6) 
+       imageoutput->AllocateScalars( outputformat,1 );
+#endif
+       
        int i,j,k;
        long sizeBlock; 
+
        for (i=0; i<dim[0]; i++)
        {
                imageoutput->SetScalarComponentFromDouble(i,0,0, 0, bbGetInputInitialValue() );
-       }       
+       } // for i
+       
        sizeBlock= dim[0] * imageoutput->GetScalarSize();
-            for (j=1; j<dim[1]; j++)
+    for (j=1; j<dim[1]; j++)
        {
                memcpy(  imageoutput->GetScalarPointer(0,j,0), imageoutput->GetScalarPointer()  , sizeBlock );
-       }               
+       } // for j              
+
        sizeBlock= dim[0] * dim[1] * imageoutput->GetScalarSize();
        for (k=0; k<dim[2]; k++)
        {
                memcpy(  imageoutput->GetScalarPointer(0,0,k) ,imageoutput->GetScalarPointer()  , sizeBlock );
        } // for k
+       
+
+//EED 2017-01-01 Migration VTK7
+#if (VTK_MAJOR_VERSION <= 5) 
        imageoutput->Update();
+#endif
+#if (VTK_MAJOR_VERSION >= 6) 
+       // ..
+#endif
+
        imageoutput->Modified();
        bbSetOutputOut(imageoutput);
 }