2014-10-20 22 views
1

我想使用vcglib保存顶点的颜色,但失败。即使我读取了一个文件并将其保存了出来,也没有做任何事情,原始文件的颜色就会丢失。 这里是我写的代码:如何使用vcglib保存颜色?

vcg::tri::io::ImporterPLY<MyMesh>::Open(*srcMesh,"bunny.ply"); 
vcg::tri::io::ExporterPLY<MyMesh>::Save(*srcMesh,"out.ply"); 

这样做了以后,out.ply没有颜色,而源层bunny.ply一样。 有人可以给我一些示例代码来完成这件事吗? 谢谢!

回答

2

几周前我遇到了同样的问题。 经过一段时间的调试和浏览了很多源代码之后,我发现open和save方法需要共享一个int掩码。这允许传达其属性已经从原来的网格读Open方法(同样,确保你已经添加了Colour4b属性的网格定义。

int mask=0; 
vcg::tri::io::ImporterPLY<MyMesh>::Open(*srcMesh,"bunny.ply",mask); 
vcg::tri::io::ExporterPLY<MyMesh>::Save(*srcMesh,"out.ply",mask); 

我希望帮助。

相关问题