| 5 | 
  | 
# | 
| 6 | 
  | 
# Takes octree and rcalc options as arguments. | 
| 7 | 
  | 
# One of the rcalc options should be -f calfile. | 
| 8 | 
< | 
# Note that the material arguments A1, A2, etc must also be given. | 
| 8 | 
> | 
# Note that the real arguments A1, A2, etc must also be given. | 
| 9 | 
  | 
# Input is a ray origin and direction, such as that produced by ximage. | 
| 10 | 
  | 
# | 
| 11 | 
  | 
if ( $#argv < 2 ) then | 
| 23 | 
  | 
        endif | 
| 24 | 
  | 
end | 
| 25 | 
  | 
 | 
| 26 | 
< | 
rtrace -h- -x 1 -odnpl $1 | rcalc -e 'Dx=$1;Dy=$2;Dz=$3' \ | 
| 26 | 
> | 
rtrace -h- -x 1 -odNplL $1 | rcalc -u -e 'Dx=$1;Dy=$2;Dz=$3' \ | 
| 27 | 
  | 
                -e 'Nx=$4;Ny=$5;Nz=$6;Px=$7;Py=$8;Pz=$9' \ | 
| 28 | 
< | 
                -e 'T=$10;Ts=T' -e 'S:1;Tx:0;Ty:0;Tz:0' \ | 
| 28 | 
> | 
                -e 'T=$10;Ts=$11' -e 'S:1;Tx:0;Ty:0;Tz:0' \ | 
| 29 | 
  | 
                -e 'Ix:1;Iy:0;Iz:0;Jx:0;Jy:1;Jz:0;Kx:0;Ky:0;Kz:1' \ | 
| 30 | 
< | 
                -e 'Rdot=-Dx*Nx-Dy*Ny-Dz*Nz' $initfile $argv[2-]:q | 
| 30 | 
> | 
                -e 'Rdot=-Dx*Nx-Dy*Ny-Dz*Nz' -e 'RdotP=Rdot' \ | 
| 31 | 
> | 
                -e 'NxP=Nx;NyP=Ny;NzP=Nz' -e 'CrP=A1;CgP=A2;CbP=A3' \ | 
| 32 | 
> | 
                -e 'DxA:0;DyA:0;DzA:0' \ | 
| 33 | 
> | 
                $initfile $argv[2-]:q |