| 10 |
|
#include "copyright.h" |
| 11 |
|
|
| 12 |
|
#include "ray.h" |
| 13 |
+ |
#include "func.h" |
| 14 |
|
#include "paths.h" |
| 15 |
|
#include "pmapopt.h" |
| 16 |
|
|
| 76 |
|
while (*reqs && (*cp = *reqs++) != ',') |
| 77 |
|
cp++; |
| 78 |
|
*cp = '\0'; |
| 79 |
< |
n = cp - subfeat; |
| 80 |
< |
if (!(cp = strstr(mysublist, subfeat)) || |
| 81 |
< |
(cp[-1] != ',') & (cp[-1] != '=') || |
| 82 |
< |
(cp[n] != ',') & (cp[n] != '\n')) |
| 79 |
> |
if (!(n = cp - subfeat)) |
| 80 |
> |
continue; /* empty subfeature */ |
| 81 |
> |
for (cp = mysublist; (cp = strstr(cp, subfeat)) != NULL; cp++) |
| 82 |
> |
if ((cp[-1] == ',') | (cp[-1] == '=') && |
| 83 |
> |
(cp[n] == ',') | (cp[n] == '\n')) |
| 84 |
> |
break; /* match */ |
| 85 |
> |
if (!cp) |
| 86 |
|
return(0); /* missing this one! */ |
| 87 |
|
} |
| 88 |
|
return(1); /* matched them all */ |
| 314 |
|
return(1); |
| 315 |
|
} |
| 316 |
|
break; |
| 317 |
+ |
case 'f': /* .cal file */ |
| 318 |
+ |
check(2,"s"); |
| 319 |
+ |
loadfunc(av[1]); |
| 320 |
+ |
return(1); |
| 321 |
+ |
case 'e': /* .cal expression */ |
| 322 |
+ |
check(2,"s"); |
| 323 |
+ |
if (!strchr(av[1], '=') && !strchr(av[1], ':')) |
| 324 |
+ |
break; |
| 325 |
+ |
scompile(av[1], NULL, 0); |
| 326 |
+ |
return(1); |
| 327 |
|
#if MAXCSAMP>3 |
| 328 |
|
case 'c': /* spectral sampling */ |
| 329 |
|
switch (av[0][2]) { |
| 335 |
|
check(3,"ff"); |
| 336 |
|
WLPART[0] = atof(av[1]); |
| 337 |
|
WLPART[3] = atof(av[2]); |
| 338 |
< |
return(1); |
| 338 |
> |
return(2); |
| 339 |
|
} |
| 340 |
|
break; |
| 341 |
|
#endif |