/* */ #include "read_srtm.h" int main(int argc, char** argv) { int i, wsize, hsize, oclv; float lat, lng, rate; sWord* hgt = NULL; sWord* map_height; oclv = SRTM_OCLEVEL; lat = lng = 0.0; rate = 1.0; wsize = 256; for (i=1; i=SRTM_SIZE) wsize = SRTM_SIZE - 1; if (hsize>=SRTM_SIZE) hsize = SRTM_SIZE - 1; map_height = (sWord*)malloc(wsize*hsize*sizeof(sWord)); if (map_height==NULL) { print_message("No more memory!! (%d)\n", wsize*hsize*sizeof(sWord)); exit(1); } for (i=0; imedian[l]) { int swp = median[k]; median[k] = median[l]; median[l] = swp; } } } hgt[mapj+i] = median[nn/2]; } else { hgt[mapj+i] = SRTM_NODATA; if (chk!=NULL) *chk = ON; } } else { hgt[mapj+i] = map_height[mapj+i]; } } } free(map_height); return hgt; } sWord* average(sWord* map_height, int wsize, int hsize, int* chk) { int i, j, mapj, hh, nn; if (chk!=NULL) *chk = OFF; sWord* hgt = (sWord*)malloc(wsize*hsize*sizeof(sWord)); if (hgt==NULL) return map_height; for (j=0; j=SRTM_SIZE) { hgt = read_hgt_file(ndg, edg+1); if (hgt!=NULL) { for (j=sy; j=SRTM_SIZE) { hgt = read_hgt_file(ndg-1, edg); if (hgt!=NULL) { for (j=0; j=SRTM_SIZE && ey>=SRTM_SIZE) { hgt = read_hgt_file(ndg-1, edg+1); if (hgt!=NULL) { for (j=0; j