--- gnuconvf.c.orig Fri Apr 30 23:11:38 1999 +++ gnuconvf.c Fri Jul 23 12:23:36 1999 @@ -28,14 +28,20 @@ int size; int zfix = FALSE; /* Flag to use zfix */ int zmode = FALSE; /* Flag to use zzero */ + +int dump=0; + zzero=0.0; /* Introduce zzero */ +if (!dump) { sipp_init(); mode=PHONG; size=256; +} ratio=1.0; /* Multiply z-values by ratio by n.matuda */ -while ((c=getopt(argc,argv,"pgfls:i:r:z:m:M:")) !=EOF) +input_file[0]='0'; +while ((c=getopt(argc,argv,"pgfls:i:r:z:m:M:d")) !=EOF) { switch (c) { case 'p': @@ -83,10 +89,16 @@ zfix = TRUE; break; + case 'd': + dump=1; + break; } } +if (input_file[0]!='0') input_fd=fopen(input_file,"r"); /* Use input_file by n.matuda */ +else +input_fd=stdin; for(;0==feof(input_fd);) { @@ -164,12 +176,13 @@ // by n.matuda. feldgroesse=(int)(sqrt((double)ii)); -printf("Koordinatenanzahl=%i,Feld ist %i*%i\n",ii,feldgroesse,feldgroesse); +if (!dump) printf("Koordinatenanzahl=%i,Feld ist %i*%i\n",ii,feldgroesse,feldgroesse); for (zeile=1;zeile<=feldgroesse-1;zeile++) { for (spalte=1;spalte<=feldgroesse-1;spalte++) { ru=zeile*feldgroesse+spalte; + if (!dump) { vertex_push(feld[ru][0],feld[ru][1],feld[ru][2]); vertex_push(feld[ru-1][0],feld[ru-1][1],feld[ru-1][2]); vertex_push(feld[ru-1-feldgroesse][0],feld[ru-1-feldgroesse][1],feld[ru-1-feldgroesse][2]); @@ -180,8 +193,20 @@ vertex_push(feld[ru-1-feldgroesse][0],feld[ru-1-feldgroesse][1],feld[ru-1-feldgroesse][2]); vertex_push(feld[ru][0],feld[ru][1],feld[ru][2]); polygon_push(); + } else { + printf("%6.3f %6.3f %6.3f\n", feld[ru][0],feld[ru][1],feld[ru][2]); + printf("%6.3f %6.3f %6.3f\n", feld[ru-1][0],feld[ru-1][1],feld[ru-1][2]); + printf("%6.3f %6.3f %6.3f\n", feld[ru-1-feldgroesse][0],feld[ru-1-feldgroesse][1],feld[ru-1-feldgroesse][2]); + printf("\n"); + printf("%6.3f %6.3f %6.3f\n", feld[ru][0],feld[ru][1],feld[ru][2]); + printf("%6.3f %6.3f %6.3f\n", feld[ru-1-feldgroesse][0],feld[ru-1-feldgroesse][1],feld[ru-1-feldgroesse][2]); + printf("%6.3f %6.3f %6.3f\n", feld[ru-feldgroesse][0],feld[ru-feldgroesse][1],feld[ru-feldgroesse][2]); + printf("\n"); + } } } +if (dump) exit(0); + mysurface= surface_basic_create(0.4, 0.5,0.5,0.8, 0.6, 0.1 ,1.0,1.0,1.0); myobjekt=object_create(); object_add_surface(myobjekt,mysurface);