X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fphm2sdf.c;h=ac3481cd18e478794ec46ec1ec9a4565684cc590;hp=814951af0543789f1b30a4566d6a647447d01d96;hb=cda35cc393bfef9a53de1a5c611e09992fb77022;hpb=8d410eec81eeeec67333892bee2e3f6f003738c1 diff --git a/src/phm2sdf.c b/src/phm2sdf.c index 814951a..ac3481c 100644 --- a/src/phm2sdf.c +++ b/src/phm2sdf.c @@ -2,8 +2,11 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: phm2sdf.c,v 1.5 2000/04/30 19:17:54 kevin Exp $ +** $Id: phm2sdf.c,v 1.6 2000/05/03 08:49:50 kevin Exp $ ** $Log: phm2sdf.c,v $ +** Revision 1.6 2000/05/03 08:49:50 kevin +** Code cleanup +** ** Revision 1.5 2000/04/30 19:17:54 kevin ** *** empty log message *** ** @@ -52,7 +55,7 @@ #define O_TRACE 5 #define O_VERBOSE 6 #define O_HELP 7 -#define O_PICFILE 8 +#define O_PHMFILE 8 #define O_FILTER_DOMAIN 9 #define O_FILTER_BW 10 #define O_FILTER_PARAM 11 @@ -62,7 +65,7 @@ static struct option my_options[] = { {"phantom", 1, 0, O_PHANTOM}, - {"picfile", 1, 0, O_PICFILE}, + {"phmfile", 1, 0, O_PHMFILE}, {"desc", 1, 0, O_DESC}, {"nsample", 1, 0, O_NSAMPLE}, {"filter", 1, 0, O_FILTER}, @@ -80,8 +83,8 @@ static struct option my_options[] = void usage (const char *program) { - fprintf(stdout,"usage: %s outfile nx ny [--phantom phantom-name] [--picfile filename] [--filter filter-name] [OPTIONS]\n",kbasename(program)); - fprintf(stdout,"Generate phantom image from a predefined --phantom or a --picfile\n"); + fprintf(stdout,"usage: %s outfile nx ny [--phantom phantom-name] [--phmfile filename] [--filter filter-name] [OPTIONS]\n",kbasename(program)); + fprintf(stdout,"Generate phantom image from a predefined --phantom or a --phmfile\n"); fprintf(stdout,"\n"); fprintf(stdout," outfile Name of output file for image\n"); fprintf(stdout," nx Number of pixels X-axis\n"); @@ -91,7 +94,7 @@ usage (const char *program) fprintf(stdout," rowland Rowland head phantom\n"); fprintf(stdout," browland Bordered Rowland head phantom\n"); fprintf(stdout," unitpulse Unit pulse phantom\n"); - fprintf(stdout," --picfile Generate Phantom from picture file\n"); + fprintf(stdout," --phmfile Generate Phantom from phantom file\n"); fprintf(stdout," --filter Generate Phantom from a filter function\n"); fprintf(stdout," abs_bandlimit Abs * Bandlimiting\n"); fprintf(stdout," abs_sinc Abs * Sinc\n"); @@ -113,7 +116,7 @@ usage (const char *program) fprintf(stdout," --trace Trace level to use\n"); fprintf(stdout," none No tracing (default)\n"); fprintf(stdout," text Trace text level\n"); - fprintf(stdout," pic Trace picture\n"); + fprintf(stdout," phm Trace phantom\n"); fprintf(stdout," rays Trace rays\n"); fprintf(stdout," plot Trace plot\n"); fprintf(stdout," clipping Trace clipping\n"); @@ -132,16 +135,16 @@ int main (const int argc, char *const argv[]) { IMAGE *im_global = NULL; - PICTURE *pic = NULL; + PHANTOM *phm = NULL; int opt_nx = 0, opt_ny = 0; int opt_nsample = 1; - int opt_picnum = -1; + int opt_phmnum = -1; int opt_filter = -1; int opt_filter_domain = D_SPATIAL; char *opt_outfile = NULL; int opt_debug = 0; char str[256]; - char opt_desc[256], opt_picfilename[256]; + char opt_desc[256], opt_phmfilename[256]; char *endstr, *endptr; double opt_filter_param = 1; double opt_filter_bw = 1.; @@ -177,7 +180,7 @@ main (const int argc, char *const argv[]) #endif strcpy(opt_desc, ""); - strcpy(opt_picfilename, ""); + strcpy(opt_phmfilename, ""); while (1) { int c = getopt_long(argc, argv, "", my_options, NULL); char *endptr = NULL; @@ -188,14 +191,14 @@ main (const int argc, char *const argv[]) switch (c) { case O_PHANTOM: - opt_picnum = opt_set_picture(optarg, argv[0]); + opt_phmnum = opt_set_phantom(optarg, argv[0]); break; - case O_PICFILE: - strncpy(opt_picfilename, optarg, sizeof(opt_picfilename)); - pic = create_pic_from_file(opt_picfilename); + case O_PHMFILE: + strncpy(opt_phmfilename, optarg, sizeof(opt_phmfilename)); + phm = phm_create_from_file(opt_phmfilename); #ifdef MPI_CT if (mpi_ct.my_rank == 0) - fprintf(stderr, "Can't use picture from file in MPI mode\n"); + fprintf(stderr, "Can't use phantom from file in MPI mode\n"); exit(1); #endif break; @@ -260,14 +263,16 @@ main (const int argc, char *const argv[]) } } - if (pic == NULL && opt_picnum == -1 && opt_filter == -1) { + if (phm == NULL && opt_phmnum == -1 && opt_filter == -1) { fprintf(stderr, "No phantom defined\n"); usage(argv[0]); exit(1); } - if (opt_trace >= TRACE_PIC) - show_pic(pic); +#if HAVE_INTERACTIVE_GRAPHICS + if (opt_trace >= TRACE_PHM) + show_phm(phm); +#endif if (optind + 3 != argc) { usage(argv[0]); @@ -290,13 +295,13 @@ main (const int argc, char *const argv[]) } snprintf(str, sizeof(str), "nx=%d, ny=%d, nsample=%d, ", opt_nx, opt_ny, opt_nsample); - if (opt_picfilename[0]) { + if (opt_phmfilename[0]) { strncat(str, "phantom=", sizeof(str)); - strncat(str, opt_picfilename, sizeof(str)); + strncat(str, opt_phmfilename, sizeof(str)); } - else if (opt_picnum != -1) { + else if (opt_phmnum != -1) { strncat(str, "phantom=", sizeof(str)); - strncat(str, name_of_picture(opt_picnum), sizeof(str)); + strncat(str, name_of_phantom(opt_phmnum), sizeof(str)); } else if (opt_filter != -1) { strncat(str, "filter=", sizeof(str)); @@ -324,7 +329,7 @@ main (const int argc, char *const argv[]) MPI_Bcast(&opt_nx, 1, MPI_INT, 0, mpi_ct.comm); MPI_Bcast(&opt_ny, 1, MPI_INT, 0, mpi_ct.comm); MPI_Bcast(&opt_nsample, 1, MPI_INT, 0, mpi_ct.comm); - MPI_Bcast(&opt_picnum, 1, MPI_INT, 0, mpi_ct.comm); + MPI_Bcast(&opt_phmnum, 1, MPI_INT, 0, mpi_ct.comm); MPI_Bcast(&opt_filter, 1, MPI_INT, 0, mpi_ct.comm); MPI_Bcast(&opt_filter_domain, 1, MPI_INT, 0, mpi_ct.comm); MPI_Bcast(&opt_filter_param, 1, MPI_DOUBLE, 0, mpi_ct.comm); @@ -348,50 +353,50 @@ main (const int argc, char *const argv[]) im_global = image_create (opt_outfile, opt_nx, opt_ny); #endif - if (opt_picnum > 0) - pic = create_pic(opt_picnum); + if (opt_phmnum > 0) + phm = phm_create (opt_phmnum); #ifdef MPI_CT else { if (mpi_ct.my_rank == 0) - fprintf(stderr, "picnum < 0\n"); + fprintf(stderr, "phmnum < 0\n"); exit(1); } #endif #ifdef MPI_CT - if (pic->type == P_UNIT_PULSE) { + if (phm->type == P_UNIT_PULSE) { if (mpi_ct.my_rank == 0) { im_global->v[opt_nx/2][opt_ny/2] = 1.; im_global->calctime = 0; } } else if (opt_filter != -1) { if (mpi_ct.my_rank == 0) { - image_filter_init (im_global, opt_filter_domain, opt_filter_bw, opt_filter, opt_filter_param, opt_trace); + image_filter_response (im_global, opt_filter_domain, opt_filter_bw, opt_filter, opt_filter_param, opt_trace); im_global->calctime = 0; } } else { if (opt_verbose) mpi_t1 = MPI_Wtime(); - pic_to_image (pic, im_local, mpi_ct.start_work_unit[mpi_ct.my_rank], + phm_to_image (phm, im_local, mpi_ct.start_work_unit[mpi_ct.my_rank], mpi_ct.local_work_units[mpi_ct.my_rank], opt_nsample, opt_trace); if (opt_verbose) { mpi_t2 = MPI_Wtime(); mpi_t = mpi_t2 - mpi_t1; MPI_Reduce(&mpi_t, &mpi_t_g, 1, MPI_DOUBLE, MPI_MAX, 0, mpi_ct.comm); if (mpi_ct.my_rank == 0) - printf("Time to compile pic = %f secs, Max time = %f\n", mpi_t, mpi_t_g); + printf("Time to compile phm = %f secs, Max time = %f\n", mpi_t, mpi_t_g); } mpi_gather_image(im_global, im_local, opt_debug); } #else - if (pic->type == P_UNIT_PULSE) { + if (phm->type == P_UNIT_PULSE) { im_global->v[opt_nx/2][opt_ny/2] = 1.; im_global->calctime = 0; } else if (opt_filter != -1) { - image_filter_init (im_global, opt_filter_domain, opt_filter_bw, opt_filter, opt_filter_param, opt_trace); + image_filter_response (im_global, opt_filter_domain, opt_filter_bw, opt_filter, opt_filter_param, opt_trace); im_global->calctime = 0; } else { - pic_to_image (pic, im_global, 0, opt_nx, opt_nsample, opt_trace); + phm_to_image (phm, im_global, 0, opt_nx, opt_nsample, opt_trace); } #endif @@ -413,7 +418,7 @@ main (const int argc, char *const argv[]) strncpy (im_global->remark, opt_desc, sizeof(im_global->remark)); image_save (im_global); - if (opt_trace >= TRACE_PIC) + if (opt_trace >= TRACE_PHM) { crt_set_cpos (1, 1); } @@ -422,7 +427,7 @@ main (const int argc, char *const argv[]) fprintf (stdout, "Time to compile image = %.2f sec\n\n", im_global->calctime); #endif - if (opt_trace >= TRACE_PIC) + if (opt_trace >= TRACE_PHM) { double dmin, dmax; int nx, ny;