--- /dev/null
+#include "vtkImageData.h"
+#include "vtkImageResample.h"
+#include <iostream>
+#include <fstream>
+#include <string>
+#include <vector>
+
+class CheckBoard
+{
+ public:
+ CheckBoard();
+ ~CheckBoard();
+
+ //Initialize newImage points
+ void initialize(int dimensions[], double spacing[]);
+
+ //Calculate the new image and save it in the attribute image
+ void calculateImage();
+
+ //Gets the result
+ vtkImageData* getFilteredImage();
+
+ //Gets the image Size
+ int getImageSize();
+
+ //Constructs new image from image 2
+ void createImage(vtkImageData *img1, vtkImageData *img2, int sizeX, int sizeY);
+
+ void setInputImage1(vtkImageData *_image);
+
+ void setInputImage2(vtkImageData *_image);
+
+ void setCols(int cols);
+
+ void setRows(int rows);
+
+ // --- Atributes --- //
+ private:
+
+ bool processed;
+
+ int type;
+
+ vtkImageData *image1;
+
+ vtkImageData *image2;
+
+ //Resulting image
+ vtkImageData *newImage;
+
+ //Total number of divisions for the X axis (colums)
+ int squaresX;
+
+ //Total number of divisions for the Y axis (rows)
+ int squaresY;
+
+ // Image 1 extent (iniX, finX, iniY, finY, iniZ, finZ)
+ int extImg1[6];
+ // Dimensionality image 1
+ int dimImg1[3];
+ // Image 1 spacing
+ double spcImg1[3];
+
+ // Image 2 extent (iniX, finX, iniY, finY, iniZ, finZ)
+ int extImg2[6];
+ // Dimensionality image 2
+ int dimImg2[3];
+ // Image 2 spacing
+ double spcImg2[3];
+
+};
+
+//#endif
+
+