63 |
|
scompile("Ix=$16;Iy=$17;Iz=$18;", NULL, 0); |
64 |
|
scompile("Jx=$19;Jy=$20;Jz=$21;", NULL, 0); |
65 |
|
scompile("Kx=$22;Ky=$23;Kz=$24;", NULL, 0); |
66 |
+ |
scompile("Lu=$25;Lv=$26;", NULL, 0); |
67 |
|
funset("arg", 1, '=', l_arg); |
68 |
|
funset("erf", 1, ':', l_erf); |
69 |
|
funset("erfc", 1, ':', l_erfc); |
301 |
|
if (n < 24) /* k unit vector */ |
302 |
|
return(funcxf.xfm[2][n-21] / funcxf.sca); |
303 |
|
|
304 |
< |
if (n == 24) /* single ray (shadow) distance */ |
304 |
> |
if (n < 25) /* single ray (shadow) distance */ |
305 |
|
return((fray->rot+raydist(fray->parent,SHADOW)) * funcxf.sca); |
306 |
+ |
|
307 |
+ |
if (n < 27) /* local (u,v) coordinates */ |
308 |
+ |
return(fray->uv[n-26]); |
309 |
|
badchan: |
310 |
|
error(USER, "illegal channel number"); |
311 |
+ |
return(0.0); |
312 |
|
} |