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

Comparing ray/src/rt/ray.h (file contents):
Revision 1.4 by greg, Sat Dec 15 16:41:44 1990 UTC vs.
Revision 2.2 by greg, Sat Jan 4 19:53:55 1992 UTC

# Line 1 | Line 1
1 < /* Copyright (c) 1990 Regents of the University of California */
1 > /* Copyright (c) 1992 Regents of the University of California */
2  
3   /* SCCSid "$SunId$ LBL" */
4  
# Line 21 | Line 21
21   #define  REFRACTED      010             /* refracted (bent) ray */
22   #define  TRANS          020             /* transmitted/transferred ray */
23   #define  AMBIENT        040             /* ray scattered for interreflection */
24 + #define  SPECULAR       0100            /* ray scattered for specular */
25  
26                                  /* reflected ray types */
27 < #define  RAYREFL        (SHADOW|REFLECTED|AMBIENT)
27 > #define  RAYREFL        (SHADOW|REFLECTED|AMBIENT|SPECULAR)
28  
29   typedef struct ray {
30          long  rno;              /* unique ray number */
# Line 37 | Line 38 | typedef struct ray {
38          int  rsrc;              /* source we're aiming for */
39          OBJECT  *clipset;       /* set of objects currently clipped */
40          OBJECT  *newcset;       /* next clipset, used for transmission */
41 +        int  (*revf)();         /* evaluation function for this ray */
42          OBJREC  *ro;            /* intersected object */
43          double  rot;            /* distance to object */
44          FVECT  rop;             /* intersection point */
# Line 49 | Line 51 | typedef struct ray {
51          double  rt;             /* returned effective ray length */
52   }  RAY;
53  
54 + extern int  raytrace();
55 +
56   extern double  raynormal();
57 +
58 + extern int  dimlist[];          /* dimension list for distribution */
59 + extern int  ndims;              /* number of dimensions so far */
60 + extern int  samplendx;          /* index for this sample */
61 +
62 + #define  MAXDIM         32      /* maximum number of dimensions */
63 +
64 + #define  rayvalue(r)    (*(r)->revf)(r)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines