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.52 by greg, Wed May 26 17:50:26 2021 UTC vs.
Revision 3.55 by greg, Thu Nov 21 17:15:54 2024 UTC

# Line 75 | Line 75 | double gamval
75                          tmnew->inpsf = WHTEFFICACY;
76          tmnew->cmat[0][1] = tmnew->cmat[0][2] = tmnew->cmat[1][0] =
77          tmnew->cmat[1][2] = tmnew->cmat[2][0] = tmnew->cmat[2][1] = 0.;
78        tmnew->inpdat = NULL;
78          tmnew->hbrmin = 10; tmnew->hbrmax = -10;
79          tmnew->histo = NULL;
80          tmnew->mbrmin = 10; tmnew->mbrmax = -10;
# Line 94 | Line 93 | int
93   tmSetSpace(                     /* set input color space for conversions */
94   TMstruct        *tms,
95   RGBPRIMP        pri,
96 < double  sf,
98 < MEM_PTR dat
96 > double  sf
97   )
98   {
99          static const char funcName[] = "tmSetSpace";
# Line 106 | Line 104 | MEM_PTR        dat
104          if (sf <= 1e-12)
105                  returnErr(TM_E_ILLEGAL);
106                                                  /* check if no change */
107 <        if (pri == tms->inppri && FEQ(sf, tms->inpsf) && dat == tms->inpdat)
107 >        if (pri == tms->inppri && FEQ(sf, tms->inpsf))
108                  returnOK;
109          tms->inppri = pri;                      /* let's set it */
110          tms->inpsf = sf;
113        tms->inpdat = dat;
111  
112          if (tms->flags & TM_F_BW) {             /* color doesn't matter */
113                  tms->monpri = tms->inppri;              /* eliminate xform */
# Line 321 | Line 318 | int    len
318                                  cmon[BLU] += d;
319                          }
320                  } else if (tms->flags & TM_F_BW) {
321 <                        cmon[RED] = cmon[GRN] = cmon[BLU] = lum;
321 >                        int     j = 3;
322 >                        while (j--) cs[3*i+j] = tms->cdiv[j]/(TM_BRES>>8);
323 >                        continue;
324                  }
325                  d = tms->clf[RED]*cmon[RED]/lum;
326                  cs[3*i  ] = d>=.999f ? 255 : gamtab[(int)(1024.f*d)];

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines