ManifoldMusic
music visualization
 All Classes Files Functions Variables Enumerations Enumerator
MHMesh.h
1 #include "common.h"
2 #include "common_transform.h"
3 #include "config.h"
4 #include <time.h>
5 
6 #ifndef MHMESH_CLASS
7 #define MHMESH_CLASS
8 
12 class MHMesh
13 {
14 public:
15  Mesh* mesh;
16  MatrixXd mhb;
17  VectorXd eigenvalues;
19  VectorXd filter;
21  VectorXd mhtX;
22  VectorXd mhtY;
23  VectorXd mhtZ;
24  VectorXd reconstructedX;
25  VectorXd reconstructedY;
26  VectorXd reconstructedZ;
29  MHMesh() {
31  mhbcalced=false;
32  mhtcalced=false;
33  reconstructed=false;
34  filter = VectorXd(Config::startFreqs);
35  filter.fill(1);
36  }
37 
39  bool calcMHB();
40 
42  void calcMHT();
43 
47  bool reconstruct(int numEigVecs);
48 
50  void writeToFiles();
51 
53  float *getVert(int ind);
54 
59  float *getPositions();
60 
61  OpenMesh::VPropHandleT<int> index;
62  OpenMesh::VPropHandleT<float> vtarea;
64 protected:
65  bool mhbcalced;
66  bool mhtcalced;
69  int numEigVecs;
70 };
71 
72 #endif