ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/util/rcode_depth.c
(Generate patch)

Comparing ray/src/util/rcode_depth.c (file contents):
Revision 2.4 by greg, Sat Jul 20 02:07:23 2019 UTC vs.
Revision 2.8 by greg, Wed Nov 13 18:20:47 2019 UTC

# Line 27 | Line 27 | usage_exit(int code)
27          fputs("Usage: ", stderr);
28          fputs(progname, stderr);
29          fputs(
30 <        " [-d ref_depth/unit][-h[io]][-H[io]][-f[afd]] [input [output.dpt]]\n",
30 >        " [-d ref_depth/unit][-h[io]][-H[io]][-f[afd]][-x xr -y yr] [input [output.dpt]]\n",
31                          stderr);
32          fputs("   Or: ", stderr);
33          fputs(progname, stderr);
# Line 45 | Line 45 | encode_depths(DEPTHCODEC *dcp)
45          long    nexpected = (long)dcp->res.xr * dcp->res.yr;
46  
47          if (dcp->inpfmt[0]) {
48 <                if (strcasestr(dcp->inpfmt, "ascii") != NULL)
48 >                if (strstr(dcp->inpfmt, "ascii") != NULL)
49                          dcp->format = 'a';
50 <                else if (strcasestr(dcp->inpfmt, "float") != NULL)
50 >                else if (strstr(dcp->inpfmt, "float") != NULL)
51                          dcp->format = 'f';
52 <                else if (strcasestr(dcp->inpfmt, "double") != NULL)
52 >                else if (strstr(dcp->inpfmt, "double") != NULL)
53                          dcp->format = 'd';
54                  else {
55                          fputs(dcp->inpname, stderr);
# Line 71 | Line 71 | encode_depths(DEPTHCODEC *dcp)
71                          break;
72                  case 'f':
73                          ok = (getbinary(&f, sizeof(f), 1, dcp->finp) == 1);
74 +                        if (dcp->swapped)
75 +                                swap32((char *)&f, 1);
76                          d = f;
77                          break;
78                  case 'd':
79                          ok = (getbinary(&d, sizeof(d), 1, dcp->finp) == 1);
80 +                        if (dcp->swapped)
81 +                                swap64((char *)&d, 1);
82                          break;
83                  }
84                  if (!ok)
# Line 277 | Line 281 | pixel_points(DEPTHCODEC *dcp, int unbuf)
281   int
282   main(int argc, char *argv[])
283   {
284 +        int             xres=0, yres=0;
285          int             conversion = CV_FWD;
286          int             bypixel = 0;
287          int             unbuffered = 0;
# Line 350 | Line 355 | main(int argc, char *argv[])
355                                  usage_exit(1);
356                          }
357                          break;
358 +                case 'x':
359 +                        xres = atoi(argv[++a]);
360 +                        break;
361 +                case 'y':
362 +                        yres = atoi(argv[++a]);
363 +                        break;
364                  case 'i':
365                          bypixel++;
366                          break;
# Line 361 | Line 372 | main(int argc, char *argv[])
372                  }
373          dc.hdrflags |= (conversion == CV_FWD) * HF_ENCODE;
374  
375 <        if ((dc.hdrflags & (HF_RESIN|HF_RESOUT)) == HF_RESOUT) {
375 >        if ((xres > 0) & (yres > 0)) {
376 >                dc.hdrflags &= ~HF_RESIN;
377 >                dc.res.rt = PIXSTANDARD;
378 >                dc.res.xr = xres;
379 >                dc.res.yr = yres;
380 >        } else if ((dc.hdrflags & (HF_RESIN|HF_RESOUT)) == HF_RESOUT) {
381                  fputs(progname, stderr);
382                  fputs(": unknown resolution for output\n", stderr);
383                  return 1;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines