1 |
< |
/* Copyright (c) 1991 Regents of the University of California */ |
1 |
> |
/* Copyright (c) 1992 Regents of the University of California */ |
2 |
|
|
3 |
|
#ifndef lint |
4 |
|
static char SCCSid[] = "$SunId$ LBL"; |
39 |
|
RAY *r; |
40 |
|
{ |
41 |
|
int nv; |
42 |
< |
FVECT dval, disp; |
43 |
< |
double pt[MAXDIM]; |
42 |
> |
FVECT disp; |
43 |
> |
double dval[3], pt[MAXDIM]; |
44 |
|
double d; |
45 |
|
DATARRAY *dp; |
46 |
|
register MFUNC *mf; |
53 |
|
mf = getfunc(m, 6, i<<7, 1); |
54 |
|
setfunc(m, r); |
55 |
|
errno = 0; |
56 |
< |
for (i = 0; i < nv; i++) { |
56 |
> |
for (i = 0; i < nv; i++) |
57 |
|
pt[i] = evalue(mf->ep[i]); |
58 |
< |
if (errno) |
59 |
< |
goto computerr; |
60 |
< |
} |
58 |
> |
if (errno) |
59 |
> |
goto computerr; |
60 |
|
dval[0] = datavalue(dp, pt); |
61 |
|
for (i = 1; i < 3; i++) { |
62 |
|
dp = getdata(m->oargs.sarg[i+3]); |
65 |
|
dval[i] = datavalue(dp, pt); |
66 |
|
} |
67 |
|
errno = 0; |
68 |
< |
for (i = 0; i < 3; i++) { |
68 |
> |
for (i = 0; i < 3; i++) |
69 |
|
disp[i] = funvalue(m->oargs.sarg[i], 3, dval); |
70 |
< |
if (errno) |
71 |
< |
goto computerr; |
73 |
< |
} |
70 |
> |
if (errno) |
71 |
> |
goto computerr; |
72 |
|
if (mf->f != &unitxf) |
73 |
|
multv3(disp, disp, mf->f->xfm); |
74 |
|
if (r->rox != NULL) { |