--- trunk/SHAPES/visualizer.cpp 2004/06/25 18:33:17 1307 +++ trunk/SHAPES/visualizer.cpp 2004/07/20 20:22:43 1361 @@ -21,6 +21,7 @@ int main(int argc, char* argv[]){ double sigma, s, eps; double rTerm, r6, r12; double energy; + double range; char* shapeFileName; char* outputFileName; @@ -31,10 +32,10 @@ int main(int argc, char* argv[]){ if (cmdline_parser (argc, argv, &args_info) != 0) exit(1) ; - if (args_info.shape_given){ - shapeFileName = args_info.shape_arg; - } - else{ + + if (args_info.inputs_num > 0) { + shapeFileName = args_info.inputs[0]; + } else { std::cerr << "Does not have shape file name" << endl; exit(1); } @@ -42,14 +43,14 @@ int main(int argc, char* argv[]){ shape = new SHAPE(); shape->readSHAPEfile(shapeFileName); - - if (args_info.output_given){ - outputFileName = args_info.output_arg; + if (args_info.inputs_num > 1) { + outputFileName = args_info.inputs[1]; + } else { + std::cerr << "No output file name specified." << endl; + outputFileName = strdup(shapeFileName); + strcat(outputFileName, ".viz"); + std::cerr << "Using: " << outputFileName << endl; } - else{ - std::cerr << "Does not have output file name" << endl; - exit(1); - } outputFile = fopen(outputFileName, "w"); @@ -60,15 +61,16 @@ int main(int argc, char* argv[]){ // grid has a default value (default=51), so it is always given npts = args_info.grid_arg; + range = args_info.range_arg; - xmin = -10.0; - xmax = 10.0; + xmin = -range; + xmax = range; - ymin = -10.0; - ymax = 10.0; + ymin = -range; + ymax = range; - zmin = -10.0; - zmax = 10.0; + zmin = -range; + zmax = range; //sigmaProbe = 2.28; //sProbe = 2.28; @@ -78,13 +80,13 @@ int main(int argc, char* argv[]){ epsProbe = 1.0; for (i = 0; i < npts; i++) { - x = xmin + (xmax-xmin) * (double)i/(double)npts; + x = xmin + (xmax-xmin) * (double)i/(double)(npts-1); for (j = 0; j < npts; j++) { - y = ymin + (ymax-ymin) * (double)j/(double)npts; + y = ymin + (ymax-ymin) * (double)j/(double)(npts-1); for (k = 0; k < npts; k++) { - z = zmin + (zmax-zmin) * (double)k/(double)npts; + z = zmin + (zmax-zmin) * (double)k/(double)(npts-1); r = sqrt(x*x + y*y + z*z); costheta = z/r;