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

Comparing ray/src/rt/otspecial.h (file contents):
Revision 2.8 by greg, Tue Jan 9 05:01:15 2018 UTC vs.
Revision 2.11 by greg, Mon Dec 9 00:44:29 2024 UTC

# Line 5 | Line 5
5   */
6   #ifndef _RAD_OTSPECIAL_H_
7   #define _RAD_OTSPECIAL_H_
8 +
9   #ifdef __cplusplus
10   extern "C" {
11   #endif
12 <
12 <                /* flag for nominally transparent materials */
12 >                /* test for nominally transparent materials */
13   #define  T_TRANSP       T_SP1
14 + #define  istransp(m)    (ofun[(m)->otype].flags & T_TRANSP || \
15 +                          (((m)->otype==MAT_WGMDF) & ((m)->oargs.nsargs > 5) \
16 +                                && strcmp((m)->oargs.sarg[5], "0")))
17  
18 <                /* flag for completely opaque materials */
18 >                /* test for completely opaque materials */
19   #define  T_OPAQUE       T_SP2
20 + #define  isopaque(m)    (ofun[(m)->otype].flags & T_OPAQUE || \
21 +                          (((m)->otype==MAT_WGMDF) & ((m)->oargs.nsargs > 5) \
22 +                                && !strcmp((m)->oargs.sarg[5], "0")))
23  
18 #define  istransp(t)    (ofun[t].flags & T_TRANSP)
19
20 #define  isopaque(t)    (ofun[t].flags & T_OPAQUE)
21
24                  /* test if we have a BSDF proxy surface */
25 < #define isBSDFproxy(m)  ((m)->otype == MAT_BSDF && (m)->oargs.nsargs && \
26 <                                strcmp((m)->oargs.sarg[0], "0"))
25 > #define isBSDFproxy(m)  (((m)->otype==MAT_BSDF) & ((m)->oargs.nsargs > 0) \
26 >                                && strcmp((m)->oargs.sarg[0], "0"))
27  
28 +                /* defined in initotypes.c */
29 + extern OBJREC   *findmaterial(OBJREC *o);
30 +
31   #ifdef __cplusplus
32   }
33   #endif
29 #endif /* _RAD_OTSPECIAL_H_ */
34  
35 + #endif /* _RAD_OTSPECIAL_H_ */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines