#include "headfile.h" #include "datatype.h" void disp_help() { cout<<"grid2xyz 0.1 - convert various grid data into xyz file"< [-n] [-o]"< "< "< "< "< "< "<> temp_str >> table1.ncols >> temp_str >> table1.nrows >> temp_str >> table1.xllcorner >> temp_str >> table1.yllcorner >> temp_str >> table1.cellsize >> temp_str >> table1.NODATA_value; table1.init_data_table(); table1.set_data_table(); for (int i = 0; i < table1.ncols*table1.nrows; i++) { filein >> table1.data_table[i]; } filein.close(); ofstream fileout(outname); for (int i = 0; i < table1.nrows; i++) { for (int j = 0; j < table1.ncols; j++) { if (table1.data_table[i*table1.ncols+j] == table1.NODATA_value) { if (Nullvalue == MAX) { fileout << table1.yllcorner + table1.nrows*table1.cellsize - i*table1.cellsize << " " << table1.xllcorner + j*table1.cellsize << " " << "NaN" << endl; } else { fileout << table1.yllcorner + table1.nrows*table1.cellsize - i*table1.cellsize << " " << table1.xllcorner + j*table1.cellsize << " " << Nullvalue << endl; } } else { fileout << table1.yllcorner + table1.nrows*table1.cellsize - i*table1.cellsize << " " << table1.xllcorner + j*table1.cellsize << " " << table1.data_table[i*table1.ncols+j] << endl; } } } fileout.close(); table1.clear_data_table(); return 0; } } int convert_surfer_txt(char* filename,char* outname) { double dx,dy,xtemp,ytemp; ifstream filein(filename); if (!filein) { cout< "<> table1.headstr; if (table1.headstr != "DSAA") { cout< "<> table1.ncols >> table1.nrows >> table1.xmin >> table1.xmax >> table1.ymin >> table1.ymax >> table1.zmin >> table1.zmax; table1.init_data_table(); table1.set_data_table(); for (int i = 0; i < table1.ncols*table1.nrows; i++) { filein >> table1.data_table[i]; } filein.close(); dx = (table1.xmax-table1.xmin)/table1.nrows+1; dy = (table1.ymax-table1.ymin)/table1.ncols+1; ofstream fileout(outname); for (int i = 0; i < table1.ncols*table1.nrows; i++) { xtemp = (i%table1.ncols)*dx+table1.xmin; ytemp = (i/table1.ncols)*dy+table1.ymin; fileout<