This repository has been archived on 2020-09-22. You can view files and clone it, but cannot push or open issues or pull requests.
fractionnement/src/mymesh.h

32 lines
982 B
C++

#ifndef MYMESH_H
#define MYMESH_H
#include <OpenMesh/Core/IO/MeshIO.hh>
#include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh>
#include <OpenMesh/Core/Geometry/VectorT.hh>
#include <QMatrix4x4>
using namespace OpenMesh;
using namespace OpenMesh::Attributes;
struct MyTraits : public OpenMesh::DefaultTraits {
// use vertex normals and vertex colors
VertexAttributes( OpenMesh::Attributes::Normal | OpenMesh::Attributes::Color );
// store the previous halfedge
HalfedgeAttributes( OpenMesh::Attributes::PrevHalfedge );
// use face normals face colors
FaceAttributes( OpenMesh::Attributes::Normal | OpenMesh::Attributes::Color );
EdgeAttributes( OpenMesh::Attributes::Color );
// vertex thickness
VertexTraits{float thickness; float value; Color faceShadingColor;};
// edge thickness
EdgeTraits{float thickness;};
};
typedef OpenMesh::TriMesh_ArrayKernelT<MyTraits> MyMesh;
void transform(MyMesh *mesh, const QMatrix4x4 *mat);
#endif