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

Comparing ray/src/common/rglfile.c (file contents):
Revision 3.5 by greg, Tue Feb 25 02:47:22 2003 UTC vs.
Revision 3.11 by schorsch, Sun Mar 28 20:33:12 2004 UTC

# Line 7 | Line 7 | static const char      RCSid[] = "$Id$";
7  
8   #include "copyright.h"
9  
10 + #include <ctype.h>
11 +
12 + #include "rtprocess.h"
13   #include "radogl.h"
14  
15   #ifndef NLIST2ALLOC
# Line 18 | Line 21 | FUN  ofun[NUMOTYPE] = INIT_OTYPE;
21   static int      nextlist, nlistleft = 0;
22  
23  
24 < static void
25 < initotypes()                    /* initialize ofun array */
24 > void
25 > initotypes(void)                        /* initialize ofun array */
26   {
27          if (ofun[OBJ_SPHERE].funp == o_sphere)
28                  return;                 /* already done */
# Line 34 | Line 37 | initotypes()                   /* initialize ofun array */
37          ofun[OBJ_RING].funp = o_ring;
38          ofun[OBJ_SOURCE].funp = o_source;
39          ofun[OBJ_INSTANCE].funp = o_instance;
40 +        ofun[OBJ_MESH].funp = o_unsupported;
41                                                  /* assign material types */
42          ofun[MAT_TRANS].funp =
43          ofun[MAT_PLASTIC].funp =
# Line 117 | Line 121 | int
121   rgl_octlist(fname, cent, radp, nl)      /* load scen into display list */
122   char    *fname;
123   FVECT   cent;                   /* returned octree center (optional) */
124 < FLOAT   *radp;                  /* returned octree size (optional) */
124 > RREAL   *radp;                  /* returned octree size (optional) */
125   int     *nl;                    /* returned number of lists (optional) */
126   {
127          double  r;
# Line 147 | Line 151 | void
151   rgl_load(inpspec)               /* convert scene description into OGL calls */
152   char    *inpspec;
153   {
150        FILE    *popen();
154          char    *fgetline();
155          FILE    *infp;
156          char    buf[1024];
# Line 198 | Line 201 | FILE  *fp;
201          strcpy(sbuf, "EOF");
202          fgetword(sbuf, MAXSTR, fp);
203          ob.omod = 0;                    /* use ob.os for pointer to material */
204 <        if (!strcmp(sbuf, VOIDID))
204 >        if (!strcmp(sbuf, VOIDID) || !strcmp(sbuf, ALIASMOD))
205                  ob.os = NULL;
206          else
207                  ob.os = (char *)getmatp(sbuf);
208                                          /* get type */
209          strcpy(sbuf, "EOF");
210          fgetword(sbuf, MAXSTR, fp);
211 <        if (!strcmp(sbuf, ALIASID))
209 <                ob.otype = -1;
210 <        else if ((ob.otype = otype(sbuf)) < 0) {
211 >        if ((ob.otype = otype(sbuf)) < 0) {
212                  sprintf(errmsg, "(%s): unknown type \"%s\"", name, sbuf);
213                  error(USER, errmsg);
214          }
# Line 216 | Line 217 | FILE  *fp;
217          fgetword(sbuf, MAXSTR, fp);
218          ob.oname = sbuf;
219                                          /* get arguments */
220 <        if (ob.otype == -1) {
220 >        if (ob.otype == MOD_ALIAS) {
221                  char  sbuf2[MAXSTR];            /* get alias */
222                  strcpy(sbuf2, "EOF");
223                  fgetword(sbuf2, MAXSTR, fp);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines