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

Comparing ray/src/rt/p_data.c (file contents):
Revision 2.12 by greg, Thu Dec 14 00:51:12 2023 UTC vs.
Revision 2.14 by greg, Thu Feb 22 20:11:54 2024 UTC

# Line 141 | Line 141 | p_cdata(                       /* interpolate color data */
141          }
142          col[0] = datavalue(dp, pt);
143          for (i = 1; i < 3; i++) {
144 +                if (!strcmp(m->oargs.sarg[3+i], m->oargs.sarg[3])) {
145 +                        col[i] = col[0];        /* same data */
146 +                        continue;
147 +                }
148                  dp = getdata(m->oargs.sarg[3+i]);
149                  if (dp->nd != nv)
150                          objerror(m, USER, "dimension error");
# Line 226 | Line 230 | p_spectrum(                    /* simple constant spectrum */
230                          sinp[i] = (COLORV)m->oargs.farg[i+2];
231                  hstep = 0.5 * (m->oargs.farg[1] - m->oargs.farg[0]) /
232                                  (m->oargs.nfargs-3.0);
233 <                convertscolor(scval, NCSAMP, WLPART[0], WLPART[3],
230 <                                sinp, m->oargs.nfargs-2,
233 >                convertscolorcol(scval, sinp, m->oargs.nfargs-2,
234                                  m->oargs.farg[0]-hstep, m->oargs.farg[1]+hstep);
235                  free(sinp);
236                  m->os = (void *)scval;
# Line 265 | Line 268 | p_specfile(                    /* constant spectrum from 1-D data file
268                          double  wl = dp->dim[0].org + i*step;
269                          sinp[i] = (COLORV)datavalue(dp, &wl);
270                  }
271 <                convertscolor(scval, NCSAMP, WLPART[0], WLPART[3],
272 <                                sinp, dp->dim[0].ne, dp->dim[0].org-.5*step,
271 >                convertscolorcol(scval, sinp, dp->dim[0].ne,
272 >                                dp->dim[0].org-.5*step,
273                                  dp->dim[0].org+dp->dim[0].siz+.5*step);
274                  free(sinp);
275                  m->os = (void *)scval;
# Line 318 | Line 321 | p_specdata(                    /* varied spectrum from (N+1)-D file */
321                  if ((errno == EDOM) | (errno == ERANGE))
322                          goto computerr;
323          }
324 <        convertscolor(scval, NCSAMP, WLPART[0], WLPART[3],
322 <                        scdat, dp->dim[dp->nd-1].ne,
324 >        convertscolorcol(scval, scdat, dp->dim[dp->nd-1].ne,
325                          dp->dim[dp->nd-1].org-.5*step,
326                          dp->dim[dp->nd-1].org+dp->dim[dp->nd-1].siz+.5*step);
327          free(scdat);
# Line 365 | Line 367 | p_specpict(                    /* interpolate hyperspectral image data
367                  if ((errno == EDOM) | (errno == ERANGE))
368                          goto computerr;
369          }
370 <        convertscolor(scval, NCSAMP, WLPART[0], WLPART[3],
369 <                        scdat, dp->dim[2].ne,
370 >        convertscolorcol(scval, scdat, dp->dim[2].ne,
371                          dp->dim[2].org-.5*step,
372                          dp->dim[2].org+dp->dim[2].siz+.5*step);
373          smultscolor(r->pcol, scval);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines