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

Comparing ray/src/rt/srcobstr.c (file contents):
Revision 2.9 by greg, Fri Sep 10 16:05:07 2004 UTC vs.
Revision 2.10 by greg, Fri Sep 10 17:08:36 2004 UTC

# Line 308 | Line 308 | srcblocked(RAY *r)
308  
309          if (obs == OVOID)
310                  return(0);
311 <        op = objptr(obs);               /* check for intersection */
311 >        op = objptr(obs);               /* check blocker intersection */
312          if (!(*ofun[op->otype].funp)(op, r))
313                  return(0);
314 <        op = source[r->rsrc].so;        /* check source really obstructed */
315 <        if ((*ofun[op->otype].funp)(op, r)) {
316 <                rayclear(r);            /* actually, source in front! */
317 <                return(0);
318 <        }
319 <        return(1);                      /* source truly blocked */
314 >        if (source[r->rsrc].sflags & SDISTANT)
315 >                return(1);
316 >        op = source[r->rsrc].so;        /* check source intersection */
317 >        if (!(*ofun[op->otype].funp)(op, r))
318 >                return(1);
319 >        rayclear(r);
320 >        return(0);                      /* source in front */
321   }
322  
323  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines