/* wvf_msng.c wm1.bat = cl /AL wvf_msng.c getfile removes points with missing values */ #include #include #include "nomouse.h" #define MAX_PTS 100000 #define MAX_HIT 32000 int huge Asn[MAX_PTS]; main(int argc,char *argv[]) { long i,j,k; long i1,i2,i3,nummsng=0; char string[100],name1[100],name2[100]; char str1[50],str2[50],str3[50],str4[50],str5[50],cr=0xd; int num=0,hit=0; double msng,fmsng,vx,s,z0,x,y,z,Z; long lz; FILE *fpin,*fpout; num=get_file_name("*.wvf",name1,num); if(num<0) exit(0); fpin=fopen(name1,"rt"); if(!fpin) { printf("Could not open source WVF file '%s'\n\n",name1); exit(0); } printf("Give output file name.\n"); scanf("%s",string); for(k=0;k=MAX_PTS) { printf("Too many good points.\n\n"); exit(0); } } i+=1; printf("%c %6ld %6ld %6ld",cr,nummsng,j,i); } } rewind(fpin); i=j=0; printf("\nScanning tringles\n"); while(fgets(string,100,fpin)) { if(string[0]=='f') { sscanf(string+1,"%ld%ld%ld",&i1,&i2,&i3); if(Asn[i1]>0&&Asn[i2]>0&&Asn[i3]>0) { fprintf(fpout,"f %d %d %d\n",Asn[i1],Asn[i2],Asn[i3]); j+=1; } i+=1; printf("%c %6ld %6ld",cr,j,i); } } fclose(fpin); fclose(fpout); }