]> Creatis software - creaVtk.git/blobdiff - bbtk_creaVtk_PKG/src/bbcreaVtkMagnitudVector.cxx
Clean code
[creaVtk.git] / bbtk_creaVtk_PKG / src / bbcreaVtkMagnitudVector.cxx
index c409205ddc0f70a7ccc648a8ecbb4da6e88ed794..d0b96a15548692e1ca28da674cc19467f5c5798b 100644 (file)
@@ -68,17 +68,30 @@ void MagnitudVector::Process()
                DEF_POINTER_IMAGE_VTK_CREA(vvZ,ssvZ,pvZ,stvZ,bbGetInputvZ() )   
                DEF_POINTER_IMAGE_VTK_CREA(vOut,ssOut,pOut,stOut,imageoutput )  
                long int i, size=dim[0]*dim[1]*dim[2];
-#pragma omp parallel for
+
+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 k4omp=(double)(size-1)*0.6;
+long int k5omp=(double)(size-1)*0.8;
+long int k6omp=(double)(size-1)*1.0;
+printf("EED MagnitudVector::Process (with openmp)\n");
+               #pragma omp parallel for
                for (i=0; i<size; i++)
                {
-                       GETVALUE2_VTK_CREA(vvX,pvX,stvX,i) 
-                       GETVALUE2_VTK_CREA(vvY,pvY,stvY,i) 
-                       GETVALUE2_VTK_CREA(vvZ,pvZ,stvZ,i) 
-                       if ( (vvX==0) && (vvY==0) &&(vvZ==0) ) 
+if ( (k1omp==i) || (k2omp==i) || (k3omp==i) || 
+     (k4omp==i) || (k5omp==i) || (k6omp==i) ) { printf("  %d%\n", (int)(((double)i/(double)(size-1))*100 )); }
+                       double vvXtmpOMP;
+                       double vvYtmpOMP;
+                       double vvZtmpOMP;
+                       GETVALUE2_VTK_CREA(vvXtmpOMP,pvX,stvX,i) 
+                       GETVALUE2_VTK_CREA(vvYtmpOMP,pvY,stvY,i) 
+                       GETVALUE2_VTK_CREA(vvZtmpOMP,pvZ,stvZ,i) 
+                       if ( (vvXtmpOMP==0) && (vvYtmpOMP==0) &&(vvZtmpOMP==0) ) 
                        {
                                SETVALUE2_VTK_CREA( 0 ,pOut,stOut,i)
                        } else {
-                               SETVALUE2_VTK_CREA( sqrt(vvX*vvX + vvY*vvY + vvZ*vvZ),pOut,stOut,i)
+                               SETVALUE2_VTK_CREA( sqrt(vvXtmpOMP*vvXtmpOMP + vvYtmpOMP*vvYtmpOMP + vvZtmpOMP*vvZtmpOMP) ,pOut,stOut,i)
                        } // if vvX  vvY  vvZ  != 0
 
                } // for i