Beispiel #1
0
bool  Quadtree::compare(QuadtreeNode* nw, QuadtreeNode* ne, QuadtreeNode* sw, QuadtreeNode* se, int i)
{
int dnw, dne, dsw, dse ;
RGBApixel total;
total=average(nw, ne, sw, se);

 dnw=getdif(nw->element, total);
 dne=getdif(ne->element, total);
 dsw=getdif(sw->element, total);
 dse=getdif(se->element, total);

 if(dnw<=i && dne<=i && dsw<=i && dse<=i)
return true;
 else return false;

}
Beispiel #2
0
void regtwosamp(char **file1, char **file2, int *yindex, int *xindex ,double *sum, 
  double *square, double *interx, double *interxy, 
 int *samp, int *weight, int *stop, int *n){
 FILE *stream1 = fopen(*file1, "r");
 FILE *stream2 = fopen(*file2,  "r");
 char line1[1024], line2[1024];
 int i=0,j=0;
while( fgets(line1, 1024, stream1) && fgets(line2, 1024, stream2))
 { 
    if(i>0 && i == samp[j] ){
     char *tmp1 = strdup(line1), *tmp2 = strdup(line2);
     double x1,x2,y;
     y = getdif(tmp2, yindex[0],yindex[1]);
     x1 = getfield(tmp1, xindex[0]);
     x2 = getfield(tmp2, xindex[1]);
     sum[0] = sum[0] + x1*weight[j];
     sum[1] = sum[1] + x2*weight[j];
     sum[2] = sum[2] + y*weight[j];
     square[0] = square[0] + x1*x1*weight[j];
     square[1] = square[1] + x2*x2*weight[j];
     interx[0] = interx[0] + x1*x2*weight[j];
     interxy[0] = interxy[0] + x1*y*weight[j];
     interxy[1] = interxy[1] + x2*y*weight[j];
     free(tmp1);free(tmp2);
     j++;
    };

    i++;
 }
 *stop = j;
 *n = i;
}