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

Comparing ray/src/common/objutil.c (file contents):
Revision 2.6 by greg, Sun Jun 14 03:04:25 2020 UTC vs.
Revision 2.8 by greg, Tue Jun 23 19:29:40 2020 UTC

# Line 547 | Line 547 | addComment(Scene *sc, const char *comment)
547          sc->descr[sc->ndescr++] = savqstr((char *)comment);
548   }
549  
550 + /* Find index for comment containing the given string (starting from n) */
551 + int
552 + findComment(Scene *sc, const char *match, int n)
553 + {
554 +        if (n >= sc->ndescr)
555 +                return(-1);
556 +        n *= (n > 0);
557 +        while (n < sc->ndescr)
558 +                if (strcasestr(sc->descr[n], match) != NULL)
559 +                        return(n);
560 +        return(-1);
561 + }
562 +
563   /* Clear comments */
564   void
565   clearComments(Scene *sc)
# Line 760 | Line 773 | dupScene(const Scene *osc)
773          return(sc);
774   }
775  
776 + #define MAXAC   100
777 +
778   /* Transform entire scene */
779   int
780   xfScene(Scene *sc, int xac, char *xav[])
781   {
782 +        char    comm[24+MAXAC*8];
783 +        char    *cp;
784          XF      myxf;
785          FVECT   vec;
786          int     i;
# Line 786 | Line 803 | xfScene(Scene *sc, int xac, char *xav[])
803                  vec[0] /= myxf.sca; vec[1] /= myxf.sca; vec[2] /= myxf.sca;
804                  VCOPY(sc->norm[i], vec);
805          }
806 +                                        /* add comment */
807 +        cp = strcpy(comm, "Transformed by:");
808 +        for (i = 0; i < xac; i++) {
809 +                while (*cp) cp++;
810 +                *cp++ = ' ';
811 +                strcpy(cp, xav[i]);
812 +        }
813 +        addComment(sc, comm);
814          return(xac);                    /* all done */
815   }
816  
817   /* Ditto, using transform string rather than pre-parsed words */
793 #define MAXAC   100
818   int
819   xfmScene(Scene *sc, const char *xfm)
820   {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines