+/*
+# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+# pour la Santé)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+# This software is governed by the CeCILL-B license under French law and
+# abiding by the rules of distribution of free software. You can use,
+# modify and/ or redistribute the software under the terms of the CeCILL-B
+# license as circulated by CEA, CNRS and INRIA at the following URL
+# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+# or in the file LICENSE.txt.
+#
+# As a counterpart to the access to the source code and rights to copy,
+# modify and redistribute granted by the license, users are provided only
+# with a limited warranty and the software's author, the holder of the
+# economic rights, and the successive licensors have only limited
+# liability.
+#
+# The fact that you are presently reading this means that you have had
+# knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------ */
+
#include "Substraction.h"
Substraction::Substraction(vtkImageData* imageData1,vtkImageData* imageData2, int uZLevel,int lZLevel, std::vector<double> uColor, std::vector<double> lColor, std::vector<double> mColor)
sizeImage=0;
uZeroLevel=uZLevel;
lZeroLevel=lZLevel;
- if(uColor.size() != NULL)
+ if(uColor.size() != 0)
{
upperColor[0] = uColor[0];
upperColor[1] = uColor[1];
upperColor[1] = 255;
upperColor[2] = 255;
}
- if(mColor.size() != NULL)
+ if(mColor.size() != 0)
{
mediumColor[0] = mColor[0];
mediumColor[1] = mColor[1];
mediumColor[1] = 125;
mediumColor[2] = 125;
}
- if(lColor.size() != NULL)
+ if(lColor.size() != 0)
{
lowerColor[0] = lColor[0];
lowerColor[1] = lColor[1];
}
//Original image type this case is an unsigned char (3)
- int t=imageData1->GetScalarType();
+ //int t=imageData1->GetScalarType(); // JPR : unused
//substracting the image
substractImage(imageData1, imageData2);
}
// Methods
//----------------------------------------------------------------------------
-
/*
Calculate the new image and save it in the attribute imageResult
it is used if the user had given the imageData
void Substraction::substractImage(vtkImageData* imageData1, vtkImageData* imageData2)
{
//dimensions of the image (extent)
- int ext[6];
+ int ext[6];
//setting the dimensionality (1d or 2d or 3d )
int newDim[3];
//image spacing
double spc[3];
//getting the information from the original image
- imageData1->GetSpacing(spc);
- imageData1->GetExtent(ext);
+ imageData1->GetSpacing(spc);
+ imageData1->GetExtent(ext);
//this a 2d image
- newDim[0]=ext[1]-ext[0]+1;
+ newDim[0]=ext[1]-ext[0]+1;
newDim[1]=ext[3]-ext[2]+1;
newDim[2]=1;// in general it is ext[5]-ext[4]+1
- imageType = imageData1->GetScalarType();
+ imageType = imageData1->GetScalarType();
//initializing the image that represents the substracted image
- initialize(newDim,spc);
+ initialize(newDim,spc);
//Time to substract
- substract(imageData1, imageData2);
+ substract(imageData1, imageData2);
}
/*
int Substraction::getImageSize()
{
return sizeImage;
-}
\ No newline at end of file
+}