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

Comparing ray/src/ot/wfconv.c (file contents):
Revision 2.1 by greg, Tue Mar 11 17:08:55 2003 UTC vs.
Revision 2.2 by greg, Wed Mar 12 04:59:04 2003 UTC

# Line 54 | Line 54 | char   *objfn;
54                          switch (argv[0][1]) {
55                          case '\0':                      /* point */
56                                  if (badarg(argc-1,argv+1,"fff"))
57 <                                        syntax("Bad vertex");
57 >                                        syntax("bad vertex");
58                                  newv(atof(argv[1]), atof(argv[2]),
59                                                  atof(argv[3]));
60                                  break;
# Line 62 | Line 62 | char   *objfn;
62                                  if (argv[0][2])
63                                          goto unknown;
64                                  if (badarg(argc-1,argv+1,"fff"))
65 <                                        syntax("Bad normal");
65 >                                        syntax("bad normal");
66                                  if (!newvn(atof(argv[1]), atof(argv[2]),
67                                                  atof(argv[3])))
68 <                                        syntax("Zero normal");
68 >                                        syntax("zero normal");
69                                  break;
70 <                        case 't':                       /* texture map */
70 >                        case 't':                       /* coordinate */
71                                  if (argv[0][2])
72                                          goto unknown;
73                                  if (badarg(argc-1,argv+1,"ff"))
# Line 84 | Line 84 | char   *objfn;
84                          faceno++;
85                          switch (argc-1) {
86                          case 0: case 1: case 2:
87 <                                syntax("Too few vertices");
87 >                                syntax("too few vertices");
88                                  break;
89                          case 3:
90                                  if (!puttri(argv[1], argv[2], argv[3]))
91 <                                        syntax("Bad triangle");
91 >                                        syntax("bad triangle");
92                                  break;
93                          default:
94                                  if (!putface(argc-1, argv+1))
95 <                                        syntax("Bad face");
95 >                                        syntax("bad face");
96                                  break;
97                          }
98                          break;
# Line 213 | Line 213 | putface(ac, av)                                /* put out an N-sided polygon */
213   int     ac;
214   register char   **av;
215   {
216        VNDX            vi;
216          char            *cp;
217          register int    i;
218  
219          while (ac > 3) {                /* break into triangles */
220                  if (!puttri(av[0], av[1], av[2]))
222                        {
223                        fprintf(stderr, "f %s %s %s\n", av[0], av[1], av[2]);
221                          return(0);
225                        }
222                  ac--;                   /* remove vertex & rotate */
223                  cp = av[0];
224                  for (i = 0; i < ac-1; i++)
# Line 239 | Line 235 | char   *v1, *v2, *v3;
235          VNDX    v1i, v2i, v3i;
236          FLOAT   *v1c, *v2c, *v3c;
237          FLOAT   *v1n, *v2n, *v3n;
238 <
238 >        
239          if (!cvtndx(v1i, v1) || !cvtndx(v2i, v2) || !cvtndx(v3i, v3))
240                  return(0);
241  
# Line 289 | Line 285 | double x, y, z;
285                  else
286                          vlist = (FVECT *)realloc((char *)vlist,
287                                          (nvs+CHUNKSIZ)*sizeof(FVECT));
288 <                if (vlist == NULL) {
289 <                        fprintf(stderr,
294 <                        "Out of memory while allocating vertex %d\n", nvs);
295 <                        exit(1);
296 <                }
288 >                if (vlist == NULL)
289 >                        error(SYSTEM, "out of memory in newv");
290          }
291                                          /* assign new vertex */
292          vlist[nvs][0] = x;
# Line 313 | Line 306 | double x, y, z;
306                  else
307                          vnlist = (FVECT *)realloc((char *)vnlist,
308                                          (nvns+CHUNKSIZ)*sizeof(FVECT));
309 <                if (vnlist == NULL) {
310 <                        fprintf(stderr,
318 <                        "Out of memory while allocating normal %d\n", nvns);
319 <                        exit(1);
320 <                }
309 >                if (vnlist == NULL)
310 >                        error(SYSTEM, "out of memory in newvn");
311          }
312                                          /* assign new normal */
313          vnlist[nvns][0] = x;
# Line 339 | Line 329 | double x, y;
329                  else
330                          vtlist = (FLOAT (*)[2])realloc((char *)vtlist,
331                                          (nvts+CHUNKSIZ)*2*sizeof(FLOAT));
332 <                if (vtlist == NULL) {
333 <                        fprintf(stderr,
344 <                        "Out of memory while allocating texture vertex %d\n",
345 <                                        nvts);
346 <                        exit(1);
347 <                }
332 >                if (vtlist == NULL)
333 >                        error(SYSTEM, "out of memory in newvt");
334          }
335                                          /* assign new vertex */
336          vtlist[nvts][0] = x;
# Line 356 | Line 342 | double x, y;
342   syntax(er)                      /* report syntax error and exit */
343   char    *er;
344   {
345 <        fprintf(stderr, "%s: Wavefront syntax error near line %d: %s\n",
345 >        sprintf(errmsg, "%s: Wavefront syntax error near line %d: %s\n",
346                          inpfile, lineno, er);
347 <        exit(1);
347 >        error(USER, errmsg);
348   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines