int extMask[6];
vtkImageData *resultImage=NULL;
bbGetInputImage()->GetExtent( extImage );
- bbGetInputImage()->GetExtent( extMask );
+ bbGetInputMask()->GetExtent( extMask );
int dimXImage = extImage[1]-extImage[0]+1;
int dimYImage = extImage[3]-extImage[2]+1;
int dimZImage = extImage[5]-extImage[4]+1;
int dimXMask = extMask[1]-extMask[0]+1;
int dimYMask = extMask[3]-extMask[2]+1;
int dimZMask = extMask[5]-extMask[4]+1;
-
double background = bbGetInputBackground();
double bgToAnalice = bbGetInputBackgroundToAnalice();
DEF_POINTER_IMAGE_VTK_CREA(vI,ssI,pI,stI, bbGetInputImage() );
DEF_POINTER_IMAGE_VTK_CREA(vM,ssM,pM,stM, bbGetInputMask() );
DEF_POINTER_IMAGE_VTK_CREA(vO,ssO,pO,stO, resultImage );
-
long int k1omp=(double)(size-1)*0.0;
long int k2omp=(double)(size-1)*0.2;
long int k3omp=(double)(size-1)*0.4;
long int k5omp=(double)(size-1)*0.8;
long int k6omp=(double)(size-1)*1.0;
printf("EED ApplyMask::Process (with openmp)\n");
- #pragma omp parallel for
- for (i=0; i<size;i++)
+ #pragma omp parallel for
+ for (i=0; i<size; i++)
{
-if ( (k1omp==i) || (k2omp==i) || (k3omp==i) ||
+if ( (k1omp==i) || (k2omp==i) || (k3omp==i) ||
(k4omp==i) || (k5omp==i) || (k6omp==i) ) { printf(" %d%\n", (int)(((double)i/(double)(size-1))*100 )); }
double vItmpOMP;
double vMtmpOMP;
double vOtmpOMP;
GETVALUE2_VTK_CREA(vMtmpOMP,pM,stM,i);
-
if (bbGetInputType()==0) //Applay mask to new Image
{
GETVALUE2_VTK_CREA(vItmpOMP,pI,stI,i);
} // if vM
SETVALUE2_VTK_CREA(vOtmpOMP,pO,stO,i);
} // if Type==0
-
if (bbGetInputType()==1) //Modifiy the Input image with the Label value in Mask place
{
if (vMtmpOMP!=bgToAnalice)
SETVALUE2_VTK_CREA(vOtmpOMP,pO,stO,i);
}
} // if Type==1
-
if (bbGetInputType()==2) //Modifiy the Input image with the Mask value
{
if (vMtmpOMP!=bgToAnalice)
SETVALUE2_VTK_CREA(vOtmpOMP,pO,stO,i);
}
} // if Type==2
-
} // for
} //if dim
resultImage->Modified();
bbSetOutputOut( resultImage );
- } // if Image && Mask
+ } else {
+ if (bbGetInputType()==2)
+ {
+ bbSetOutputOut( bbGetInputImage() );
+ }
+ }// if Image && Mask
}
//=====
// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)