534 |
|
char *s |
535 |
|
) |
536 |
|
{ |
537 |
+ |
int prev_newp = newparam; |
538 |
|
char buf[128]; |
539 |
|
|
540 |
|
if (s[0] == '\0') { |
541 |
|
(*dev->comout)( |
542 |
< |
"aa ab ad ar as av aw b bv dc dv dj ds dt i lr lw me ma mg ms ps pt sj st u: "); |
542 |
> |
"aa ab ad ar as av aw b bv dc dv dj ds dt i lr lw me ma mg ms ps pt ss st u: "); |
543 |
|
(*dev->comin)(buf, NULL); |
544 |
|
s = buf; |
545 |
|
} |
600 |
|
case 'n': case 'N': case 'f': case 'F': case '0': case '-': |
601 |
|
getparam(s+1, "black and white", 'b', |
602 |
|
(void *)&greyscale); |
603 |
+ |
newparam = prev_newp; |
604 |
|
break; |
605 |
|
default: |
606 |
|
goto badparam; |
683 |
|
default: |
684 |
|
goto badparam; |
685 |
|
} |
686 |
+ |
newparam = prev_newp; |
687 |
|
break; |
688 |
|
case 's': /* specular */ |
689 |
|
switch (s[1]) { |
690 |
< |
case 'j': /* jitter */ |
691 |
< |
getparam(s+2, "specular jitter", 'r', |
690 |
> |
case 's': /* sampling */ |
691 |
> |
getparam(s+2, "specular sampling", 'r', |
692 |
|
(void *)&specjitter); |
693 |
|
break; |
694 |
|
case 't': /* threshold */ |
716 |
|
char *s |
717 |
|
) |
718 |
|
{ |
719 |
< |
char buf[128]; |
720 |
< |
int x, y; |
718 |
< |
OBJREC *ino; |
719 |
< |
RAY thisray; |
719 |
> |
RAY thisray; |
720 |
> |
char buf[512]; |
721 |
|
|
722 |
|
thisray.rmax = 0.0; |
723 |
|
|
724 |
|
if (!sscanvec(s, thisray.rorg) || |
725 |
|
!sscanvec(sskip2(s,3), thisray.rdir)) { |
726 |
+ |
int x, y; |
727 |
|
|
728 |
|
if (dev->getcur == NULL) |
729 |
|
return; |
750 |
|
OBJREC *mat = NULL; |
751 |
|
OBJREC *mod = NULL; |
752 |
|
char matspec[256]; |
753 |
+ |
OBJREC *ino; |
754 |
+ |
|
755 |
|
matspec[0] = '\0'; |
756 |
|
if (thisray.ro->omod != OVOID) { |
757 |
|
mod = objptr(thisray.ro->omod); |