41 |
|
static char *wrapBSDF[MAXCARG] = {"wrapBSDF", "-W", "-UU"}; |
42 |
|
static int wbsdfac = 3; |
43 |
|
|
44 |
< |
/* Add argument to wrapBSDF, allocating space if isstatic */ |
44 |
> |
/* Add argument to wrapBSDF, allocating space if !isstatic */ |
45 |
|
static void |
46 |
|
add_wbsdf(const char *arg, int isstatic) |
47 |
|
{ |
470 |
|
|
471 |
|
eval_rbfcol(&sdv, rbf, vout); |
472 |
|
sum += sdv.cieY; |
473 |
< |
if (XZarr != NULL) { |
473 |
> |
if (rbf_colorimetry == RBCtristimulus) { |
474 |
|
c_ccvt(&sdv.spec, C_CSXY); |
475 |
|
xsum += sdv.cieY * sdv.spec.cx; |
476 |
|
ysum += sdv.cieY * sdv.spec.cy; |
478 |
|
} |
479 |
|
n = j*abp->nangles + i; |
480 |
|
bsdfarr[n] = sum / npsamps; |
481 |
< |
if (XZarr != NULL) { |
481 |
> |
if (rbf_colorimetry == RBCtristimulus) { |
482 |
|
XZarr[n][0] = xsum*sum/(npsamps*ysum); |
483 |
|
XZarr[n][1] = (sum - xsum - ysum)*sum/(npsamps*ysum); |
484 |
|
} |