--- ray/src/util/rsensor.c 2011/06/20 23:08:43 2.11 +++ ray/src/util/rsensor.c 2013/10/16 04:35:50 2.13 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: rsensor.c,v 2.11 2011/06/20 23:08:43 greg Exp $"; +static const char RCSid[] = "$Id: rsensor.c,v 2.13 2013/10/16 04:35:50 greg Exp $"; #endif /* @@ -398,9 +398,10 @@ init_ptable( tvals[i] = 1. - ( (1.-frac)*cos(thdiv[t]) + frac*cos(thdiv[t+1]) ); /* offset b/c sensor values are centered */ - if (!t || (t < sntp[0]-1) & (frac >= 0.5)) - frac -= 0.5; - else { + if ((t < sntp[0]-1) & (frac >= 0.5)) { + if ((frac -= 0.5) < 0) + frac = 0; + } else { frac += 0.5; --t; } @@ -544,7 +545,7 @@ comp_sensor( continue; } rr.rmax = .0; - rayorigin(&rr, PRIMARY, NULL, NULL); + rayorigin(&rr, PRIMARY|SPECULAR, NULL, NULL); scalecolor(rr.rcoef, sf); if (ray_pqueue(&rr) == 1) addcolor(vsum, rr.rcol); @@ -560,7 +561,7 @@ comp_sensor( continue; } rr.rmax = .0; - rayorigin(&rr, PRIMARY, NULL, NULL); + rayorigin(&rr, PRIMARY|SPECULAR, NULL, NULL); scalecolor(rr.rcoef, sf); if (ray_pqueue(&rr) == 1) addcolor(vsum, rr.rcol);