401 |
|
fputs(": undefined normal for hemisphere sampling\n", stderr); |
402 |
|
exit(1); |
403 |
|
} |
404 |
< |
if (normalize(curparams.vup) == 0) |
404 |
> |
if (normalize(curparams.vup) == 0) { |
405 |
|
if (fabs(curparams.nrm[2]) < .7) |
406 |
|
curparams.vup[2] = 1; |
407 |
|
else |
408 |
|
curparams.vup[1] = 1; |
409 |
+ |
} |
410 |
|
/* determine sample type/bin */ |
411 |
|
if (tolower(curparams.hemis[0]) == 'u' | curparams.hemis[0] == '1') { |
412 |
|
binv = "0"; /* uniform sampling -- one bin */ |
873 |
|
fputs(": undefined normal for sender sampling\n", stderr); |
874 |
|
return(-1); |
875 |
|
} |
876 |
< |
if (normalize(curparams.vup) == 0) |
876 |
> |
if (normalize(curparams.vup) == 0) { |
877 |
|
if (fabs(curparams.nrm[2]) < .7) |
878 |
|
curparams.vup[2] = 1; |
879 |
|
else |
880 |
|
curparams.vup[1] = 1; |
881 |
+ |
} |
882 |
|
VCROSS(curparams.udir, curparams.vup, curparams.nrm); |
883 |
|
if (normalize(curparams.udir) == 0) { |
884 |
|
fputs(progname, stderr); |
1068 |
|
/* else skip arguments */ |
1069 |
|
if (!fscanf(fp, "%d", &n)) return(0); |
1070 |
|
while (n-- > 0) fscanf(fp, "%*s"); |
1071 |
< |
if (!fscanf(fp, "%d", &n)) return; |
1071 |
> |
if (!fscanf(fp, "%d", &n)) return(0); |
1072 |
|
while (n-- > 0) fscanf(fp, "%*d"); |
1073 |
< |
if (!fscanf(fp, "%d", &n)) return; |
1073 |
> |
if (!fscanf(fp, "%d", &n)) return(0); |
1074 |
|
while (n-- > 0) fscanf(fp, "%*f"); |
1075 |
|
return(0); |
1076 |
|
} |
1104 |
|
/* else skip arguments */ |
1105 |
|
if (!fscanf(fp, "%d", &n)) return(0); |
1106 |
|
while (n-- > 0) fscanf(fp, "%*s"); |
1107 |
< |
if (!fscanf(fp, "%d", &n)) return; |
1107 |
> |
if (!fscanf(fp, "%d", &n)) return(0); |
1108 |
|
while (n-- > 0) fscanf(fp, "%*d"); |
1109 |
< |
if (!fscanf(fp, "%d", &n)) return; |
1109 |
> |
if (!fscanf(fp, "%d", &n)) return(0); |
1110 |
|
while (n-- > 0) fscanf(fp, "%*f"); |
1111 |
|
return(0); |
1112 |
|
} |
1149 |
|
strcat(newparams, inpbuf); |
1150 |
|
continue; |
1151 |
|
} |
1152 |
< |
while ((c = getc(fp)) != EOF && c != '\n'); |
1152 |
> |
while ((c = getc(fp)) != EOF && c != '\n') |
1153 |
|
; /* else skipping comment */ |
1154 |
|
continue; |
1155 |
|
} |