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

Comparing ray/src/rt/rtrace.c (file contents):
Revision 2.65 by greg, Wed Apr 6 00:14:26 2011 UTC vs.
Revision 2.68 by greg, Fri Apr 11 20:27:23 2014 UTC

# Line 114 | Line 114 | rtrace(                                /* trace rays from file */
114   )
115   {
116          unsigned long  vcount = (hresolu > 1) ? (unsigned long)hresolu*vresolu
117 <                                              : vresolu;
117 >                                              : (unsigned long)vresolu;
118          long  nextflush = (vresolu > 0) & (hresolu > 1) ? 0 : hresolu;
119          FILE  *fp;
120          double  d;
# Line 642 | Line 642 | oputW(                         /* print coefficient */
642   )
643   {
644          RREAL   contr[3];
645 +                                /* shadow ray not on source? */
646 +        if (r->rsrc >= 0 && source[r->rsrc].so != r->ro)
647 +                setcolor(contr, 0.0, 0.0, 0.0);
648 +        else
649 +                raycontrib(contr, r, PRIMARY);
650  
646        raycontrib(contr, r, PRIMARY);
651          (*putreal)(contr, 3);
652   }
653  
# Line 708 | Line 712 | puta(                          /* print ascii value(s) */
712   static void
713   putd(RREAL *v, int n)           /* print binary double(s) */
714   {
715 <        if (sizeof(RREAL) != sizeof(double))
715 > #ifdef  SMLFLT
716 >        double  da[3];
717 >        int     i;
718 >
719 >        if (n > 3)
720                  error(INTERNAL, "code error in putd()");
721 +        for (i = n; i--; )
722 +                da[i] = v[i];
723 +        fwrite(da, sizeof(double), n, stdout);
724 + #else
725          fwrite(v, sizeof(RREAL), n, stdout);
726 + #endif
727   }
728  
729  
730   static void
731   putf(RREAL *v, int n)           /* print binary float(s) */
732   {
733 + #ifndef SMLFLT
734          float   fa[3];
735          int     i;
736  
# Line 725 | Line 739 | putf(RREAL *v, int n)          /* print binary float(s) */
739          for (i = n; i--; )
740                  fa[i] = v[i];
741          fwrite(fa, sizeof(float), n, stdout);
742 + #else
743 +        fwrite(v, sizeof(RREAL), n, stdout);
744 + #endif
745   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines