--- ray/src/rt/source.h 1991/10/21 12:58:14 1.14 +++ ray/src/rt/source.h 1995/07/25 16:42:31 2.3 @@ -36,17 +36,17 @@ typedef struct { SPOT *s; /* spot */ } sl; /* localized source information */ union { - int success; /* successes - AIMREQT*failures */ + long success; /* successes - AIMREQT*failures */ struct { short pn; /* projection number */ - short sn; /* next source to aim for */ + int sn; /* next source to aim for */ } sv; /* virtual source */ } sa; /* source aiming information */ long ntests, nhits; /* shadow tests and hits */ OBJREC *so; /* source destination object */ } SRCREC; /* light source */ -#define MAXSPART 32 /* maximum partitions per source */ +#define MAXSPART 64 /* maximum partitions per source */ #define SU 0 /* U vector or partition */ #define SV 1 /* V vector or partition */ @@ -113,6 +113,8 @@ extern double scylform(); /* cosine to axis of cylin #define sflatform(sn,dir) -DOT(source[sn].snorm, dir) +extern OBJREC *vsmaterial(); /* virtual source material */ + extern double intercircle(); /* intersect two circles */ extern double spotdisk(); /* intersecting disk for spot */ extern double beamdisk(); /* intersecting disk for beam */ @@ -125,7 +127,7 @@ extern double shadcert; /* shadow testing certainty extern double srcsizerat; /* max. ratio of source size/dist. */ extern int directrelay; /* maximum number of source relays */ extern int vspretest; /* virtual source pretest density */ -extern int directinvis; /* sources invisible? */ +extern int directvis; /* sources visible? */ #define getplaneq(c,o) (*sfun[(o)->otype].of->getpleq)(c,o) #define getmaxdisk(c,o) (*sfun[(o)->otype].of->getdisk)(c,o)