ManifoldMusic
music visualization
 All Classes Files Functions Variables Enumerations Enumerator
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MeshViewerWidgetT< M > Class Template Reference

A QGLVieverWidget that is the center piece of our program. More...

#include <MeshViewerWidgetT.h>

Inheritance diagram for MeshViewerWidgetT< M >:
QGLViewerWidget

Public Types

typedef M Mesh
 
typedef OpenMesh::StripifierT
< Mesh > 
MyStripifier
 
- Public Types inherited from QGLViewerWidget
typedef QGLWidget Super
 

Public Member Functions

 MeshViewerWidgetT (QWidget *_parent=0)
 default constructor
 
 ~MeshViewerWidgetT ()
 destructor
 
virtual LoadMeshErr open_mesh (const char *_filename, OpenMesh::IO::Options _opt)
 open mesh
 
virtual bool open_audio (const char *_filename)
 load audio file
 
virtual void change_color (float r, float g, float b)
 change color
 
void enable_strips ()
 
void disable_strips ()
 
Mesh & mesh ()
 
const Mesh & mesh () const
 
- Public Member Functions inherited from QGLViewerWidget
 QGLViewerWidget (QWidget *_parent=0)
 
 QGLViewerWidget (QGLFormat &_fmt, QWidget *_parent=0)
 
void set_scene_pos (const OpenMesh::Vec3f &_center, float _radius)
 
void view_all ()
 
QAction * add_draw_mode (const std::string &_s)
 add draw mode to popup menu, and return the QAction created
 
void del_draw_mode (const std::string &_s)
 delete draw mode from popup menu
 
const std::string & current_draw_mode () const
 
float radius () const
 
const OpenMesh::Vec3f & center () const
 
const GLdouble * modelview_matrix () const
 
const GLdouble * projection_matrix () const
 
float fovy () const
 
QAction * findAction (const char *name)
 
void addAction (QAction *action, const char *name)
 
void removeAction (const char *name)
 
void removeAction (QAction *action)
 

Protected Member Functions

virtual void draw_scene (const std::string &_draw_mode)
 inherited drawing method
 
virtual void draw_openmesh (const std::string &_drawmode)
 draw the mesh
 
void glVertex (const typename Mesh::VertexHandle _vh)
 
void glVertex (const typename Mesh::Point &_p)
 
void glNormal (const typename Mesh::VertexHandle _vh)
 
void glTexCoord (const typename Mesh::VertexHandle _vh)
 
void glColor (const typename Mesh::VertexHandle _vh)
 
void glNormal (const typename Mesh::FaceHandle _fh)
 
void glColor (const typename Mesh::FaceHandle _fh)
 
void glMaterial (const typename Mesh::FaceHandle _fh, int _f=GL_FRONT_AND_BACK, int _m=GL_DIFFUSE)
 
void compute_strips (void)
 
virtual void keyPressEvent (QKeyEvent *_event)
 
- Protected Member Functions inherited from QGLViewerWidget
double performance (void)
 
void setDefaultMaterial (void)
 
void setDefaultLight (void)
 
virtual void mousePressEvent (QMouseEvent *)
 
virtual void mouseReleaseEvent (QMouseEvent *)
 
virtual void mouseMoveEvent (QMouseEvent *)
 
virtual void wheelEvent (QWheelEvent *)
 

Protected Attributes

bool f_strips_
 
GLuint tex_id_
 
GLint tex_mode_
 
OpenMesh::IO::Options opt_
 
Mesh mesh_
 
MyStripifier strips_
 
bool use_color_
 
bool show_vnormals_
 
bool show_fnormals_
 
float normal_scale_
 
OpenMesh::FPropHandleT
< typename Mesh::Point > 
fp_normal_base_
 
Audio audio
 
MHMeshmhMesh
 
Mesh testMesh
 
clock_t t
 

Detailed Description

template<typename M>
class MeshViewerWidgetT< M >

A QGLVieverWidget that is the center piece of our program.

Member Data Documentation

template<typename M>
Audio MeshViewerWidgetT< M >::audio
protected

delivers the harmonic filter

template<typename M>
MHMesh* MeshViewerWidgetT< M >::mhMesh
protected

does all the manifold harmonics computations

template<typename M>
clock_t MeshViewerWidgetT< M >::t
protected

used to measure the time since the last filter update

template<typename M>
Mesh MeshViewerWidgetT< M >::testMesh
protected

an invalid mesh would do damage if loaded directly to mesh_, so we first load it to testMesh and validate it


The documentation for this class was generated from the following files: