--- ray/src/px/pfilt.c 1989/04/11 21:50:05 1.4 +++ ray/src/px/pfilt.c 1990/01/05 17:52:52 1.8 @@ -88,16 +88,18 @@ char **argv; switch (argv[i][1]) { case 'x': i++; - if (argv[i][0] == '/') + if (argv[i][0] == '/') { x_c = 1.0/atof(argv[i]+1); - else + ncols = 0; + } else ncols = atoi(argv[i]); break; case 'y': i++; - if (argv[i][0] == '/') + if (argv[i][0] == '/') { y_r = 1.0/atof(argv[i]+1); - else + nrows = 0; + } else nrows = atoi(argv[i]); break; case 'e': @@ -126,6 +128,9 @@ char **argv; case '1': singlepass = 1; break; + case '2': + singlepass = 0; + break; case 'p': npts = atoi(argv[++i]) / 2; break; @@ -185,7 +190,7 @@ char **argv; /* add new header info. */ printargs(i, argv, stdout); /* get picture size */ - if (fscanf(fin, "-Y %d +X %d\n", &yres, &xres) != 2) { + if (fgetresolu(&xres, &yres, fin) != (YMAJOR|YDECR)) { fprintf(stderr, "%s: bad picture size\n", progname); quit(1); } @@ -338,9 +343,9 @@ scan2init() /* prepare scanline arrays */ } e = bright(exposure); if (e < 1-1e-7 || e > 1+1e-7) /* record exposure */ - printf("EXPOSURE=%e\n", e); + fputexpos(e, stdout); printf("\n"); - printf("-Y %d +X %d\n", nrows, ncols); /* write picture size */ + fputresolu(YMAJOR|YDECR, ncols, nrows, stdout); /* resolution */ }