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

Comparing ray/src/common/depthcodec.h (file contents):
Revision 2.2 by greg, Fri Jul 26 17:04:12 2019 UTC vs.
Revision 2.3 by greg, Fri Jul 26 18:52:32 2019 UTC

# Line 44 | Line 44 | typedef struct {
44   } DEPTHCODEC;
45  
46   /* Encode depth as 16-bit signed integer */
47 + #if 1
48   #define depth2code(d, dref) \
49                  ( (d) > (dref) ? (int)(32768.001 - 32768.*(dref)/(d))-1 : \
50                    (d) > .0 ? (int)(32767.*(d)/(dref) - 32768.) : -32768 )
51 + #else
52 + extern int      depth2code(double d, double dref);
53 + #endif
54  
55   /* Decode depth from 16-bit signed integer */
56 + #if 1
57 + #define code2depth(c, dref) \
58 +                ( (c) <= -32768 ? .0 : (c) >= 32767 ? FHUGE : \
59 +                  (c) < 0 ? (dref)*(32767.5 + (c))*(1./32767.) : \
60 +                                (dref)*32768./(32766.5 - (c)) )
61 + #else
62   extern double   code2depth(int c, double dref);
63 + #endif
64  
65   /* Set codec defaults */
66   extern void     set_dc_defaults(DEPTHCODEC *dcp);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines