56 #ifndef OPENMESH_VDPROGMESH_VDPMSYNTHESIZERVIEWERWIDGET_HH
57 #define OPENMESH_VDPROGMESH_VDPMSYNTHESIZERVIEWERWIDGET_HH
65 #include <OpenMesh/Core/IO/MeshIO.hh>
66 #include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh>
67 #include <OpenMesh/Apps/QtViewer/MeshViewerWidgetT.hh>
69 #include <OpenMesh/Tools/VDPM/MeshTraits.hh>
70 #include <OpenMesh/Tools/VDPM/StreamingDef.hh>
71 #include <OpenMesh/Tools/VDPM/ViewingParameters.hh>
72 #include <OpenMesh/Tools/VDPM/VHierarchy.hh>
73 #include <OpenMesh/Tools/VDPM/VFront.hh>
96 typedef TriMesh_ArrayKernelT<VDPM::MeshTraits> VDPMMesh;
104 using VDPM::VHierarchy;
105 using VDPM::VHierarchyNode;
106 using VDPM::VHierarchyNodeIndex;
107 using VDPM::VHierarchyNodeHandle;
109 using VDPM::ViewingParameters;
140 unsigned int n_base_vertices_;
141 unsigned int n_base_edges_;
142 unsigned int n_base_faces_;
143 unsigned int n_details_;
150 bool oriented_away(
float sin_square,
151 float distance_square,
152 float product_value);
154 bool screen_space_error(
float mue_square,
156 float distance_square,
157 float product_value);
159 void update_viewing_parameters();
161 virtual void keyPressEvent(QKeyEvent* _event);
166 virtual void draw_scene(
const std::string& _draw_mode);
170 void adaptive_refinement();
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:64
std::vector< VHierarchyNodeHandle > VHierarchyNodeHandleContainer
Container for vertex hierarchy node handles.
Definition: VHierarchyNode.hh:188
Definition: MeshViewerWidget.hh:81
Definition: MeshViewerWidgetT.hh:77
Definition: VDPMSynthesizerViewerWidget.hh:116
void open_vd_prog_mesh(const char *_filename)
open view-dependent progressive mesh
Definition: VDPMSynthesizerViewerWidget.cc:388
virtual void draw_scene(const std::string &_draw_mode)
inherited drawing method
Definition: VDPMSynthesizerViewerWidget.cc:105
Kernel::VertexHandle VertexHandle
Handle for referencing the corresponding item.
Definition: PolyMeshT.hh:139
Kernel::HalfedgeHandle HalfedgeHandle
Scalar type.
Definition: PolyMeshT.hh:140
Active nodes in vertex hierarchy.
Definition: VFront.hh:81
Keeps the vertex hierarchy build during analyzing a progressive mesh.
Definition: VHierarchy.hh:79
Handle for vertex hierarchy nodes
Definition: VHierarchyNode.hh:83
Definition: ViewingParameters.hh:80