OpenMesh 中默认的数据类型都是 float 类型的,如果要将其默认的 float 类型改为 double 类型,可以这么做:
#include <OpenMesh/Core/Mesh/PolyMesh_ArrayKernelT.hh>
#include <OpenMesh/Core/IO/MeshIO.hh>
#include <OpenMesh/Core/Mesh/Handles.hh>
#include <OpenMesh/Core/Mesh/Traits.hh>
struct PolyTraits : public OpenMesh::DefaultTraits {typedef OpenMesh::Vec3d Point;typedef OpenMesh::Vec3d Normal;typedef OpenMesh::Vec4f Color;
};
typedef OpenMesh::PolyMesh_ArrayKernelT<PolyTraits> MyMesh;
这样 Point,Normal 都是 double 类型的了。