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

Comparing ray/src/px/ximage.c (file contents):
Revision 1.2 by greg, Fri Apr 7 16:36:10 1989 UTC vs.
Revision 1.10 by greg, Wed Sep 13 15:41:52 1989 UTC

# Line 137 | Line 137 | char  *argv[];
137                          sprintf(errmsg, "can't open file \"%s\"", fname);
138                          quiterr(errmsg);
139                  }
140 <        } else
141 <                goto userr;
142 <
140 >        }
141                                  /* get header */
142          getheader(fin, headline);
143                                  /* get picture dimensions */
144 <        if (fscanf(fin, "-Y %d +X %d\n", &ymax, &xmax) != 2)
144 >        if (fgetresolu(&xmax, &ymax, fin) != (YMAJOR|YDECR))
145                  quiterr("bad picture size");
146                                  /* set view parameters */
147 <        if (gotview) {
150 <                ourview.hresolu = xmax;
151 <                ourview.vresolu = ymax;
147 >        if (gotview)
148                  if (setview(&ourview) != NULL)
149                          gotview = 0;
150 <        }
150 >
151          if ((scanline = (COLR *)malloc(xmax*sizeof(COLR))) == NULL)
152                  quiterr("out of memory");
153  
# Line 170 | Line 166 | userr:
166   headline(s)             /* get relevant info from header */
167   char  *s;
168   {
169 <        static char  *altname[] = {"rview","rpict","VIEW=",NULL};
169 >        static char  *altname[] = {"rview","rpict",VIEWSTR,NULL};
170          register char  **an;
171  
172          if (!strncmp(s, "EXPOSURE=", 9))
# Line 347 | Line 343 | redraw(x, y, w, h)                     /* redraw section of window */
343   int  x, y;
344   int  w, h;
345   {
346 <        if (map_rcolors(ourras) == NULL) {
346 >        if (ourras->ncolors && map_rcolors(ourras) == NULL) {
347                  fprintf(stderr, "%s: cannot allocate colors\n", progname);
348                  return(-1);
349          }
# Line 419 | Line 415 | XKeyEvent  *ekey;
415                  if (avgbox(cval) == -1)
416                          return(-1);
417                  n = log(.5/bright(cval))/.69315 - scale;        /* truncate */
418 <                if (n == 0) {
423 <                        XFeep(0);
418 >                if (n == 0)
419                          return(0);
425                }
420                  scale_rcolors(ourras, pow(2.0, (double)n));
421                  scale += n;
422                  sprintf(buf, "%+d", scale);
# Line 431 | Line 425 | XKeyEvent  *ekey;
425                  XFlush();
426                  free_raster(ourras);
427                  getras();
428 <                return(redraw(0, 0, width, height));
428 >        /* fall through */
429          case CTRL(R):                           /* redraw */
430 +        case CTRL(L):
431                  XClear(wind);
432                  return(redraw(0, 0, width, height));
433          case ' ':                               /* clear */
# Line 692 | Line 687 | pixel  *l;
687   }
688  
689  
690 < picreadcm(map)                  /* do gamcor correction */
690 > picreadcm(map)                  /* do gamma correction */
691   colormap  map;
692   {
693          extern double  pow();

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines