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

Comparing ray/src/rt/p_func.c (file contents):
Revision 2.2 by greg, Mon Nov 25 09:50:57 1991 UTC vs.
Revision 2.8 by greg, Tue Jul 8 18:25:00 2014 UTC

# Line 1 | Line 1
1 /* Copyright (c) 1991 Regents of the University of California */
2
1   #ifndef lint
2 < static char SCCSid[] = "$SunId$ LBL";
2 > static const char       RCSid[] = "$Id$";
3   #endif
6
4   /*
5   *  p_func.c - routine for procedural patterns.
9 *
10 *     4/8/86
6   */
7  
8 < #include  "ray.h"
8 > #include "copyright.h"
9  
10 + #include  "ray.h"
11   #include  "func.h"
12 + #include  "rtotypes.h"
13  
14   /*
15   *      A procedural pattern can either be a brightness or a
# Line 37 | Line 34 | static char SCCSid[] = "$SunId$ LBL";
34   */
35  
36  
37 < p_bfunc(m, r)                   /* compute brightness pattern */
38 < OBJREC  *m;
39 < RAY  *r;
37 > int
38 > p_bfunc(                        /* compute brightness pattern */
39 >        OBJREC  *m,
40 >        RAY  *r
41 > )
42   {
43          double  bval;
44 <        register MFUNC  *mf;
44 >        MFUNC  *mf;
45  
46          if (m->oargs.nsargs < 2)
47                  objerror(m, USER, "bad # arguments");
# Line 50 | Line 49 | RAY  *r;
49          setfunc(m, r);
50          errno = 0;
51          bval = evalue(mf->ep[0]);
52 <        if (errno) {
52 >        if (errno == EDOM || errno == ERANGE) {
53                  objerror(m, WARNING, "compute error");
54 <                return;
54 >                return(0);
55          }
56          scalecolor(r->pcol, bval);
57 +        return(0);
58   }
59  
60  
61 < p_cfunc(m, r)                   /* compute color pattern */
62 < OBJREC  *m;
63 < RAY  *r;
61 > int
62 > p_cfunc(                        /* compute color pattern */
63 >        OBJREC  *m,
64 >        RAY  *r
65 > )
66   {
67          COLOR  cval;
68 <        register MFUNC  *mf;
68 >        MFUNC  *mf;
69  
70          if (m->oargs.nsargs < 4)
71                  objerror(m, USER, "bad # arguments");
# Line 73 | Line 75 | RAY  *r;
75          setcolor(cval, evalue(mf->ep[0]),
76                          evalue(mf->ep[1]),
77                          evalue(mf->ep[2]));
78 <        if (errno) {
78 >        if (errno == EDOM || errno == ERANGE) {
79                  objerror(m, WARNING, "compute error");
80 <                return;
80 >                return(0);
81          }
82          multcolor(r->pcol, cval);
83 +        return(0);
84   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines