23#ifndef VCL_QT_MESH_VIEWER_H
24#define VCL_QT_MESH_VIEWER_H
26#include "gui/drawable_object_vector_tree.h"
28#include <vclib/qt/gui/text_edit_logger.h>
29#include <vclib/qt/mesh_viewer_render_app.h>
30#include <vclib/render/drawable/drawable_object_vector.h>
42 using QObject::QObject;
45 bool eventFilter(QObject*
obj,
QEvent* event)
override;
52 enum class RenderMode { CLASSIC = 0, PBR = 1 };
56 std::shared_ptr<vcl::DrawableObjectVector> mDrawableObjectVector;
58 std::shared_ptr<vcl::DrawableObjectVector> mListedDrawableObjects;
59 std::shared_ptr<vcl::DrawableObjectVector> mUnlistedDrawableObjects;
66 void keyPressEvent(
QKeyEvent* event)
override;
73 const std::shared_ptr<vcl::DrawableObjectVector>& v);
75 void setUnlistedDrawableObjectVector(
76 const std::shared_ptr<vcl::DrawableObjectVector>& v);
78 uint selectedDrawableObject()
const;
82 void setDrawVectorIconFunction(
83 const DrawableObjectVectorTree::IconFunction& f);
89 void showRenderModeSelector(
bool show);
91 bool isPBREnabled()
const;
93 void setPBR(
bool enable);
113 void renderModeComboBoxCurrentIndexChanged(
int index);
A class representing a box in N-dimensional space.
Definition box.h:46
Definition drawable_object_vector_tree.h:38
Definition mesh_viewer.h:41
Definition mesh_viewer.h:49
void renderSettingsUpdated()
Slot called every time that the MeshRenderSettingsFrame emits 'settingsUpdated()',...
Definition mesh_viewer.cpp:283
void visibilityDrawableObjectChanged()
Slot called when the user changed the visibility of an object in the DrawableObjectVectorTree.
Definition mesh_viewer.cpp:234
void selectedDrawableObjectChanged(uint i)
Slot called when the user selected a different DrawableObject in the DrawableObjectVectorFrame.
Definition mesh_viewer.cpp:256
MeshViewerRenderApp & viewer() const
Returns the MeshViewerRenderApp used by this MeshViewer.
Definition mesh_viewer.cpp:55
void setDrawableObjectVector(const std::shared_ptr< vcl::DrawableObjectVector > &v)
Sets the current DrawableObjectVector, and updates the GUI accordingly.
Definition mesh_viewer.cpp:139
Definition text_edit_logger.h:38