21 |
|
static int nvs; /* number of vertices in our list */ |
22 |
|
static FVECT *vnlist; /* vertex normal list */ |
23 |
|
static int nvns; |
24 |
< |
static FLOAT (*vtlist)[2]; /* map vertex list */ |
24 |
> |
static RREAL (*vtlist)[2]; /* map vertex list */ |
25 |
|
static int nvts; |
26 |
|
|
27 |
|
static char *inpfile; /* input file name */ |
66 |
|
group[0] = '\0'; |
67 |
|
lineno = 0; faceno = 0; |
68 |
|
/* scan until EOF */ |
69 |
< |
while (argc = getstmt(argv, fp)) { |
69 |
> |
while ( (argc = getstmt(argv, fp)) ) { |
70 |
|
switch (argv[0][0]) { |
71 |
|
case 'v': /* vertex */ |
72 |
|
switch (argv[0][1]) { |
289 |
|
char *v1, *v2, *v3; |
290 |
|
{ |
291 |
|
VNDX v1i, v2i, v3i; |
292 |
< |
FLOAT *v1c, *v2c, *v3c; |
293 |
< |
FLOAT *v1n, *v2n, *v3n; |
292 |
> |
RREAL *v1c, *v2c, *v3c; |
293 |
> |
RREAL *v1n, *v2n, *v3n; |
294 |
|
|
295 |
< |
if (!cvtndx(v1i, v1) || !cvtndx(v2i, v2) || !cvtndx(v3i, v3)) |
295 |
> |
if (!cvtndx(v1i, v1) || !cvtndx(v2i, v2) || !cvtndx(v3i, v3)) { |
296 |
> |
error(WARNING, "bad vertex reference"); |
297 |
|
return(0); |
298 |
< |
|
298 |
> |
} |
299 |
|
if (v1i[1]>=0 && v2i[1]>=0 && v3i[1]>=0) { |
300 |
|
v1c = vtlist[v1i[1]]; |
301 |
|
v2c = vtlist[v2i[1]]; |
383 |
|
{ |
384 |
|
if (!(nvts%CHUNKSIZ)) { /* allocate next block */ |
385 |
|
if (nvts == 0) |
386 |
< |
vtlist = (FLOAT (*)[2])malloc(CHUNKSIZ*2*sizeof(FLOAT)); |
386 |
> |
vtlist = (RREAL (*)[2])malloc(CHUNKSIZ*2*sizeof(RREAL)); |
387 |
|
else |
388 |
< |
vtlist = (FLOAT (*)[2])realloc((void *)vtlist, |
389 |
< |
(nvts+CHUNKSIZ)*2*sizeof(FLOAT)); |
388 |
> |
vtlist = (RREAL (*)[2])realloc((void *)vtlist, |
389 |
> |
(nvts+CHUNKSIZ)*2*sizeof(RREAL)); |
390 |
|
if (vtlist == NULL) |
391 |
|
error(SYSTEM, "out of memory in newvt"); |
392 |
|
} |