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

Comparing ray/src/common/tonemap.c (file contents):
Revision 3.25 by greg, Thu May 11 00:58:48 2006 UTC vs.
Revision 3.28 by greg, Wed Aug 9 16:26:54 2006 UTC

# Line 53 | Line 53 | double gamval
53                  tmnew->clf[GRN] = rgb2xyzmat[1][1];
54                  tmnew->clf[BLU] = rgb2xyzmat[1][2];
55          } else {
56 <                comprgb2xyzWBmat(cmat, tmnew->monpri=monpri);
56 >                comprgb2xyzmat(cmat, tmnew->monpri=monpri);
57                  tmnew->clf[RED] = cmat[1][0];
58                  tmnew->clf[GRN] = cmat[1][1];
59                  tmnew->clf[BLU] = cmat[1][2];
# Line 116 | Line 116 | MEM_PTR        dat
116                          tms->clf[CIEX] = tms->clf[CIEZ] = 0.;
117                          tms->clf[CIEY] = 1.;
118                  } else {
119 <                        comprgb2xyzWBmat(tms->cmat, tms->monpri);
119 >                        comprgb2xyzmat(tms->cmat, tms->monpri);
120                          tms->clf[RED] = tms->cmat[1][0];
121                          tms->clf[GRN] = tms->cmat[1][1];
122                          tms->clf[BLU] = tms->cmat[1][2];
# Line 232 | Line 232 | int            len
232   )
233   {
234          static const char funcName[] = "tmCvGrays";
235        double  d;
235          int     i;
236  
237          if (tms == NULL)
# Line 459 | Line 458 | double gamval
458          if (gamval < MINGAM)
459                  gamval = tms->mongam;
460          d = log(expmult/tms->inpsf);
461 <        for (i = tms->mbrmax-tms->mbrmin+1; i--; )
462 <                tms->lumap[i] = 256. * exp(
461 >        for (i = tms->mbrmax-tms->mbrmin+1; i--; ) {
462 >                double  val = 256. * exp(
463                          ( d + (tms->mbrmin+i)*(1./TM_BRTSCALE) )
464 <                        / gamval );
464 >                        / gamval);
465 >                tms->lumap[i] = val >= (double)0xffff ? 0xffff : (int)val;
466 >        }
467          returnOK;
468   }
469  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines