#include "CheckBoard.h"
-
/*
* Constructor
*/
//------------------------------------------------------------
CheckBoard::CheckBoard()
+: // use 'Initialization List'! //JPR
+ image1(NULL);
+ image2(NULL);
+ squaresX(0);
+ squaresY(0);
+ newImage(NULL);
+ processed(false);
+ newImage(NULL);
+ resample(NULL);
+ result(NULL);
{
+/*
image1=NULL;
image2=NULL;
squaresX=0;
newImage = NULL;
resample = NULL;
result = NULL;
+*/
}
/*
//if (image1 != NULL ) { image1->Delete(); }
//if (image2 != NULL ) { image2->Delete(); }
if (newImage != NULL ) { newImage->Delete(); }
- if (result != NULL ) { result->Delete(); }
+ if (result != NULL ) { result->Delete(); }
}
//------------------------------------------------------------
if(image1!=NULL && image2!=NULL)
{
-
// IMAGE 1
// Information from image1
image1->GetExtent(extImg1);
type = image1->GetScalarType();
-
+
// The Z dimension is 1 for a 2D image
dimImg1[0] = extImg1[1] - extImg1[0]+1;
dimImg1[1] = extImg1[3] - extImg1[2]+1;
long numPixelsImg1 = dimImg1[0]*dimImg1[1];
long numPixelsImg2 = dimImg2[0]*dimImg2[1];
-
+
double factorX = 1;
double factorY = 1;
resample = vtkImageResample::New();
result = resample->GetOutput();
result->Update();
createImage(result,image2,dimImg2[0],dimImg2[1]);
-
} //if
else if (numPixelsImg1>numPixelsImg2)
{
initialize(dimImg1, spcImg1);
result = resample->GetOutput();
-
+
result->Update();
createImage(image1,result,dimImg1[0],dimImg1[1]);
result = resample->GetOutput();
result->Update();
-
+
createImage(image1,result,dimImg1[0],dimImg1[1]);
} //else
-
+
resample->Delete();
processed=true;
}
newImage->SetDimensions(dimensions);
newImage->AllocateScalars();
newImage->Update();
-
-
}
//------------------------------------------------------------
createImageByType(dataImagePointer1,dataImagePointer2,dataImageResultPointer,img1,img2,sizeX,sizeY);
}
-
//std::cout << "The image has been checkboardized!" << std::endl;
newImage->Update();
// newImage->Modified();
dataImagePointer1 = (T*) img1->GetScalarPointer(0,0,0);
dataImagePointer2 = (T*) img2->GetScalarPointer(0,0,0);
dataImageResultPointer = (T*) newImage->GetScalarPointer(0,0,0);
-
+
if(squaresX == 0)
{
squaresX = 1;
if(squaresY == 0)
{
squaresY = 1;
- }
+ }
int divX = sizeX/squaresX;
int divY = sizeY/squaresY;
- int i, j, counterX, counterY;
+ int i, j;
+ int counterX=0, counterY; // JPR : uninitialized
for(i = 0; i < sizeX; i++)
{
counterY = 0;
{
squaresY=rows;
}
-