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

Comparing ray/src/util/rtcontrib.c (file contents):
Revision 1.10 by greg, Thu Jun 2 04:47:27 2005 UTC vs.
Revision 1.13 by greg, Sun Jun 5 19:52:01 2005 UTC

# Line 68 | Line 68 | struct rtproc {
68  
69                                          /* rtrace command and defaults */
70   char            *rtargv[256] = { "rtrace", "-dj", ".5", "-dr", "3",
71 <                                "-ab", "1", "-ad", "128", "-lr", "-10", };
72 < int  rtargc = 11;
71 >                                "-ab", "1", "-ad", "128", };
72 > int  rtargc = 9;
73                                          /* overriding rtrace options */
74   char            *myrtopts[] = { "-o~~TmWdp", "-h-", "-x", "1", "-y", "0",
75                                  "-dt", "0", "-as", "0", "-aa", "0", NULL };
# Line 164 | Line 164 | main(int argc, char *argv[])
164          int     i, j;
165                                  /* global program name */
166          gargv = argv;
167 <                                /* set up calcomp mode */
167 >                                /* initialize calcomp routines */
168          esupport |= E_VARIABLE|E_FUNCTION|E_INCHAN|E_RCONST|E_REDEFW;
169          esupport &= ~(E_OUTCHAN);
170 +        varset("PI", ':', PI);
171                                  /* get our options */
172          for (i = 1; i < argc-1; i++) {
173                                                  /* expand arguments */
# Line 705 | Line 706 | done_contrib(void)
706          MODCONT *mp;
707                                                  /* output modifiers in order */
708          for (i = 0; i < nmods; i++) {
709 +                FILE    *fp;
710                  mp = (MODCONT *)lu_find(&modconttab,modname[i])->data;
711 <                for (j = 0; j < mp->nbins; j++)
712 <                        putcontrib(mp->cbin[j],
711 >                fp = getofile(mp->outspec, mp->modname, 0);
712 >                putcontrib(mp->cbin[0], fp);
713 >                if (mp->nbins > 3 &&            /* minor optimization */
714 >                                fp == getofile(mp->outspec, mp->modname, 1))
715 >                        for (j = 1; j < mp->nbins; j++)
716 >                                putcontrib(mp->cbin[j], fp);
717 >                else
718 >                        for (j = 1; j < mp->nbins; j++)
719 >                                putcontrib(mp->cbin[j],
720                                          getofile(mp->outspec, mp->modname, j));
721                                                  /* clear for next ray tree */
722                  memset(mp->cbin, 0, sizeof(DCOLOR)*mp->nbins);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines