ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/o_instance.c
(Generate patch)

Comparing ray/src/rt/o_instance.c (file contents):
Revision 1.1 by greg, Thu Feb 2 10:41:32 1989 UTC vs.
Revision 1.4 by greg, Thu Apr 20 08:25:22 1989 UTC

# Line 41 | Line 41 | register RAY  *r;
41                  return(0);              /* missed */
42          if (rcont.rot * in->f.sca >= r->rot)
43                  return(0);              /* not close enough */
44 <                                        /* if we have modifier, use it */
45 <        if (o->omod != OVOID)
44 >
45 >        if (o->omod != OVOID) {         /* if we have modifier, use it */
46                  r->ro = o;
47 <        else {                          /* else use theirs */
47 >                r->rofs = 1.0; setident4(r->rofx);
48 >                r->robs = 1.0; setident4(r->robx);
49 >        } else {                        /* else use theirs */
50                  r->ro = rcont.ro;
51 <                multmat4(r->rox, in->b.xfm, rcont.rox);
52 <                r->ros = in->b.sca * rcont.ros;
51 >                multmat4(r->rofx, rcont.rofx, in->f.xfm);
52 >                r->rofs = rcont.rofs * in->f.sca;
53 >                multmat4(r->robx, in->b.xfm, rcont.robx);
54 >                r->robs = in->b.sca * rcont.robs;
55          }
56                                          /* transform it back */
57          r->rot = rcont.rot * in->f.sca;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines