C++读取OBJ文件 对于f数据 取出任意自己想要的数据

自己建了一个1.txt

文件内容如下

f 77959/79546/77959 37781/38039/37783 37770/38028/37772 
f 77959/79546/77959 58979/59636/58979 37781/38039/37783 
f 77960/79547/77960 66852/67777/66852 2586/2621/2588 
f 8189/8230/8191 9490/9533/9492 21242/21342/21244 
f 62968/63763/62968 71857/73031/71857 62957/63752/62957

取出每个数据存放起来

代码如下:

#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];int m,n,q,m1,n1,q1,m2,n2,q2;//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);//创建顶点和面数组//}}*///————————————读取顶底和面片信息(纹理、法向量)——————while(!feof(fp)){fscanf(fp, "%s", ext);//读取文件第一行的“OFF”int i=0,j=0,k=0;if(ext[0]=='f'&&ext[1]=='\0'){fscanf(fp, "%d/%d/%d%d/%d/%d%d/%d/%d", &m, &n, &q,&m1,&n1,&q1,&m2,&n2,&q2);cout<<m<<" "<<n<<" "<<q<<" "<<m1<<" "<<n1<<" "<<q1<<" "<<m2<<" "<<n2<<" "<<q2<<"\n";}}fclose(fp);}

运行结果如下

关键问题就是要熟悉函数

fscanf().

C++读取OBJ文件 对于f数据 取出任意自己想要的数据相关推荐

  1. C++/OpenGL 入门(18):读取obj文件并贴图

    来源:<Computer Graphics Programming in OpenGL Using C++ >by V Scott Gordon John L Clevenger 内容:程 ...

  2. 使用vcglib库读取obj文件并显示(一或多个材质)

    <vcglib库的入坑体验(读取obj文件并显示)>一文不能显示obj的材质,这里提供一个: #include <......>using namespace std; usi ...

  3. C++读取OBJ文件中的数据(VS2013)

    #include <iostream> #include <fstream> #include <stdlib.h> #include <sstream> ...

  4. python 3d重建_三维人脸重建(一)——Python读取obj文件

    目录 一.obj格式模型介绍 文件说明很有必要,有助于数据提取时的理解.这一部分借鉴OBJ格式模型详细介绍 obj格式有4种数据,分别以一下字母开头: 1. v顶点 2. vt纹理坐标 3. vn顶点 ...

  5. (牛哇牛哇)读取OBJ文件及其详解

    原文链接:https://blog.csdn.net/zb1165048017/article/details/109103791 前言 最近处理一些网格渲染的时候,需要解析Obj文件,从Free3D ...

  6. python大数据好不好学_大数据好学吗?想转行大数据??

    作为一名IT从业者,同时也是一名教育工作者,我来回答一下这个问题. 首先,虽然大数据技术具有一定的难度,但是随着大数据技术体系的逐渐丰富和完善,大数据领域对于人才的需求类型也在不断趋于多元化,不同知识 ...

  7. c++读取obj文件的数据 其中f中只取面片定点数据

    数据格式为 f 40022/40306/40024 26860/27001/26862 40023/40307/40025 f中只取面片定点数据 代码如下 #include<stdio.h> ...

  8. Python pandas在读取csv文件时(linux与windows之间传输),数据行数不一致的问题

    背景 最近在处理用户评论数据时,从Linux服务器上面用pandas导出的csv文件,下载到自己的Windows电脑,再用本地pandas读取时发现数据行数不一致的情况,比如在Linux服务器上面数据 ...

  9. 读取obj+mtl 文件 (OpenGL C++)

    本学期我们开设了计算机图形学的课,最后的大作业老师要求做一个场景,为了使做出的场景更美观,写了这个读取obj文件的程序,从CG模型网上下载了一些模型并加载,如图所示,大部分的模型都能够加载成功,由于我 ...

最新文章

  1. 《C++程序设计POJ》《WEEK7 输入输出和模板》《流操纵算子》《文件读写》《二进制文件读写》...
  2. Spring中bean标签的属性和值:
  3. hbase 读写调优_hbase优化操作与建议
  4. 机器学习——推荐算法
  5. 神策数据保险行业解决方案,正式上线官网!
  6. 2012 人民搜索 实习生招聘 笔试题
  7. 【No.7 C++对象的构造与析构时间】
  8. 随想系列_4_从电影《可可西里》说起
  9. Node.js-json-模块化-全局对象-fs-服务-Buffer
  10. pulse 去马赛克软件_细致到毛孔头发 神还原的高清大图!AI去马赛克新算法
  11. 如何获取maven命令执行后成功与否的返回值
  12. css面试题之Flex布局
  13. EnableQ问卷属性控制项
  14. 迅捷pdf编辑器是如何编辑pdf文件的
  15. word、excle、ppt文档图标显示异常的解决方案!
  16. 专插本计算机二级英语四级,专插本考试需要英语四级吗?
  17. Arduino基础入门篇19—点阵屏
  18. 华为telnet连接(无用户名登录和aaa模板登录)
  19. 2022年黄石市高企申报奖励补贴以及认定奖励补贴汇总!
  20. 家庭组网方案研究(2):路由器和光猫上的连接方式

热门文章

  1. kibana 更新 索引模式_Kibana探索数据(Discover)详解
  2. Windows server 2019 - 磁盘加密(BitLocker)
  3. Shared Everything和Shared-Nothing区别
  4. 静态时序分析(STA)基本概念
  5. H265/HEVC视频分层码流分析语义元素解释
  6. 如何解决网络连接问题
  7. JAVA将一个目录下的所有文件复制到另一个新目录
  8. kali利用MSF对永恒之蓝漏洞入侵windows7
  9. vue 数字滚动递增效果
  10. mysql 注册驱动_Mysql注册驱动三种方法 | 学步园