c++获取当前文件路径写出mesh的obj文件格式为txt

这段代码用于从3D模型中导出顶点和面信息到OBJ文件。它首先获取当前目录,然后创建输出文件路径,接着将每个顶点和面的数据写入文件。注意在OBJ文件中,面的索引是从1开始,而在C++中是从0开始,所以需要进行调整。最后,文件被关闭。这个过程直接生成了.out.txt文件,但可以修改为.out.obj。
摘要由CSDN通过智能技术生成
//得到文件夹完整路径名
	TCHAR *path = new TCHAR[MAX_PATH];
	GetCurrentDirectory(MAX_PATH, path);
	CString newfilepath;
	CString tempi = "\\out.txt";
	newfilepath = path + tempi;
	std::ofstream outfile(newfilepath);	
    for(int m =0;m < pMesh->GetVSize();m++){
		ZVert p0 = pMesh->GetV(m);
		outfile<< "v " + String(p0.Co3d().x)+" "+String(p0.Co3d().y)+" "+String(p0.Co3d().z)+" "+String(kvector_copy[m])<<std::endl;
	}
	for(int m =0;m < pMesh->GetFSize();m++){
		ZFace f0 = pMesh->GetF(m);
		outfile<< "f " + String(f0.GetIndex(0)+1)+" "+String(f0.GetIndex(1)+1)+" "+String(f0.GetIndex(2)+1)<<std::endl;
	}
	outfile.close();

注意,在obj文件中面的索引是从1开始的,而c++中面的索引是从0开始的。

 

注意,可以直接写出.obj,即可以直接命令输出文件名为out.obj

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值