--- ray/src/gen/mkillum.c 2007/09/18 19:51:07 2.30 +++ ray/src/gen/mkillum.c 2007/12/08 01:43:09 2.32 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: mkillum.c,v 2.30 2007/09/18 19:51:07 greg Exp $"; +static const char RCSid[] = "$Id: mkillum.c,v 2.32 2007/12/08 01:43:09 greg Exp $"; #endif /* * Make illum sources for optimizing rendering process @@ -8,9 +8,7 @@ static const char RCSid[] = "$Id: mkillum.c,v 2.30 200 #include #include -#include "platform.h" #include "mkillum.h" -#include "random.h" /* default parameters */ #define SAMPDENS 48 /* points per projected steradian */ @@ -26,6 +24,7 @@ static const char RCSid[] = "$Id: mkillum.c,v 2.30 200 struct illum_args thisillum = { /* our illum and default values */ 0, UDzpos, + 0., DFLMAT, DFLDAT, 0, @@ -393,6 +392,16 @@ xoptions( /* process options in string s */ if (thisillum.udir == UDunknown || !isspace(*cp)) break; continue; + case 't': /* object thickness */ + if (*++cp != '=') + break; + if (!isfltd(++cp, " \t\n\r")) + break; + thisillum.thick = atof(cp); + if (thisillum.thick < .0) + thisillum.thick = .0; + cp = sskip(cp); + continue; case '!': /* processed file! */ sprintf(errmsg, "(%s): already processed!", nm); error(WARNING, errmsg); @@ -460,6 +469,7 @@ printopts(void) /* print out option default values * case UDunknown: break; } + printf("t=%f\t\t\t# object thickness\n", thisillum.thick); }