*** cube.old/cube.c Sun Sep 8 00:25:11 2002 --- cube/cube.c Mon Sep 9 21:36:37 2002 *************** *** 73,83 **** bool cube_lt(NDBOX * a, NDBOX * b); bool cube_gt(NDBOX * a, NDBOX * b); double *cube_distance(NDBOX * a, NDBOX * b); ! int cube_dim(NDBOX * a); ! double *cube_ll_coord(NDBOX * a, int n); ! double *cube_ur_coord(NDBOX * a, int n); bool cube_is_point(NDBOX * a); ! NDBOX *cube_enlarge(NDBOX * a, double *r, int n); /* --- 73,83 ---- bool cube_lt(NDBOX * a, NDBOX * b); bool cube_gt(NDBOX * a, NDBOX * b); double *cube_distance(NDBOX * a, NDBOX * b); ! int4 cube_dim(NDBOX * a); ! double *cube_ll_coord(NDBOX * a, int4 n); ! double *cube_ur_coord(NDBOX * a, int4 n); bool cube_is_point(NDBOX * a); ! NDBOX *cube_enlarge(NDBOX * a, double *r, int4 n); /* *************** *** 1139,1145 **** } /* Return dimensions in use in the data structure */ ! int cube_dim(NDBOX * a) { /* Other things will break before unsigned int doesn't fit. */ --- 1139,1145 ---- } /* Return dimensions in use in the data structure */ ! int4 cube_dim(NDBOX * a) { /* Other things will break before unsigned int doesn't fit. */ *************** *** 1148,1154 **** /* Return a specific normalized LL coordinate */ double * ! cube_ll_coord(NDBOX * a, int n) { double *result; --- 1148,1154 ---- /* Return a specific normalized LL coordinate */ double * ! cube_ll_coord(NDBOX * a, int4 n) { double *result; *************** *** 1161,1167 **** /* Return a specific normalized UR coordinate */ double * ! cube_ur_coord(NDBOX * a, int n) { double *result; --- 1161,1167 ---- /* Return a specific normalized UR coordinate */ double * ! cube_ur_coord(NDBOX * a, int4 n) { double *result; *************** *** 1174,1186 **** /* Increase or decrease box size by a radius in at least n dimensions. */ NDBOX * ! cube_enlarge(NDBOX * a, double *r, int n) { NDBOX *result; int dim = 0; int size; int i, ! j; if (*r > 0 && n > 0) dim = n; --- 1174,1187 ---- /* Increase or decrease box size by a radius in at least n dimensions. */ NDBOX * ! cube_enlarge(NDBOX * a, double *r, int4 n) { NDBOX *result; int dim = 0; int size; int i, ! j, ! k; if (*r > 0 && n > 0) dim = n; *************** *** 1191,1207 **** memset(result, 0, size); result->size = size; result->dim = dim; ! for (i = 0, j = dim; i < a->dim; i++, j++) { if (a->x[i] >= a->x[j]) { ! result->x[i] = a->x[j] - *r; result->x[j] = a->x[i] + *r; } else { result->x[i] = a->x[i] - *r; ! result->x[j] = a->x[j] + *r; } if (result->x[i] > result->x[j]) { --- 1192,1208 ---- memset(result, 0, size); result->size = size; result->dim = dim; ! for (i = 0, j = dim, k = a->dim; i < a->dim; i++, j++, k++) { if (a->x[i] >= a->x[j]) { ! result->x[i] = a->x[k] - *r; result->x[j] = a->x[i] + *r; } else { result->x[i] = a->x[i] - *r; ! result->x[j] = a->x[k] + *r; } if (result->x[i] > result->x[j]) {