c++读取obj文件的数据 其中f中只取面片定点数据
2015-05-13 12:26
411 查看
数据格式为
f 40022/40306/40024 26860/27001/26862 40023/40307/40025
f中只取面片定点数据
代码如下
f 40022/40306/40024 26860/27001/26862 40023/40307/40025
f中只取面片定点数据
代码如下
#include<stdio.h> #include<iostream> #include<string> #include<fstream> #include<sstream> using namespace std; int main() { FILE *fp; char ext[1000]; string tempStr, lineStr; bool end_of_file = false; double a, b, c; int vnum=0; int fnum=0; char m[30],n[30],q[30]; if ((fp = _wfopen(L"C:\\Users\\DELL\\Desktop\\M1-91(YINHU)-jm17w-zhk.obj", L"r")) == NULL) return false; //if ((fp = _wfopen(L"C:\\Users\\DELL\\Desktop\\1.txt", L"r")) == NULL) // return false; //------------统计总数 定点和面片—————————————— //for(int jj=0;jj<20000000;jj++) while(!feof(fp)) { fscanf(fp, "%s", ext);//读取文件第一行的“OFF” //cout<<ext<<"\n"; if(ext[0]=='v'&&ext[1]=='\0') { vnum++; } int i=0,j=0,k=0; if(ext[0]=='f'&&ext[1]=='\0') { fnum++; } //if (strcmp(ext, "OFF") != 0 && strcmp(ext, "off") != 0)//判断文件格式是否是“OFF” // return false; //读取文件第二行的顶点数和面数 //fscanf(fp, "%d%d%d\n", &a, &b, &c); //创建顶点和面数组 //} } cout<<"vnum="<<vnum<<" "<<"fnum="<<fnum<<"\n"; fseek(fp,0,SEEK_SET); //———————————————读取顶底和面片信息———————————— //for(int jj=0;jj<20000000;jj++) while(!feof(fp)) { fscanf(fp, "%s", ext);//读取文件第一行的“OFF” //cout<<ext<<"\n"; if(ext[0]=='v'&&ext[1]=='\0') { fscanf(fp, "%lf%lf%lf\n", &a, &b, &c); cout << a <<" "<< b<<" " << c<<" " << "\n"; } int i=0,j=0,k=0; if(ext[0]=='f'&&ext[1]=='\0') { fscanf(fp, "%s%s%s", &m, &n, &q); for (int kk = 0; m[kk] != '/'; kk++) { i = i * 10 + (m[kk] - 48); } for (int kk = 0; n[kk] != '/'; kk++) { j = j * 10 + (n[kk] - 48); } for (int kk = 0; q[kk] != '/'; kk++) { k = k * 10 + (q[kk] - 48); } cout << i <<" "<< j<<" " << k<<" " << "\n"; } //if (strcmp(ext, "OFF") != 0 && strcmp(ext, "off") != 0)//判断文件格式是否是“OFF” // return false; //读取文件第二行的顶点数和面数 //fscanf(fp, "%d%d%d\n", &a, &b, &c); //创建顶点和面数组 //} } fclose(fp); }
相关文章推荐
- C++读取OBJ文件 对于f数据 取出任意自己想要的数据
- C++读取OBJ文件中的数据(VS2013)
- C++ 写入数据到.txt文件 从.txt文件读取数据 string字符串分割
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组 (转)
- C/C++文件——数据写入、读取
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- C++读取以空格作为数据区分标记,以回车为行标记的txt文件到一个整数数组(字符串妙用)
- 从C++文件中读取数据到vector的简捷方法
- 设计一个学生类,其中包含学号、姓名、成绩等数据成员,创建学生对象并且倒入到文件file.txt,然后由文件读取到另一个学生对象并输出,试编程实现。
- C++修改图片像素大小,求梯度,创建文件夹并读取文件数据,
- C++ .TXT文件 数据读取
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- C++修改图片像素大小,求梯度,创建文件夹并读取文件数据,
- 【转载】C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- c++从txt文件中读取数据
- PureBasic 打开一个一行有多个数据的文件并读取其中某个数据
- C++ 简单读写文本文件、统计文件的行数、读取文件数据到数组
- 读取读写C++文件读写操作(四)读取文件数据到临时数组