mirror of https://github.com/CGAL/cgal
86 lines
2.4 KiB
C++
86 lines
2.4 KiB
C++
#ifndef MAINWINDOW_H
|
|
#define MAINWINDOW_H
|
|
|
|
#include <CGAL/Qt/DemosMainWindow.h>
|
|
|
|
class QDragEnterEvent;
|
|
class QDropEvent;
|
|
class Scene;
|
|
class Viewer;
|
|
namespace Ui {
|
|
class MainWindow;
|
|
}
|
|
|
|
class MainWindow :
|
|
public CGAL::Qt::DemosMainWindow
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
MainWindow(QWidget* parent = nullptr);
|
|
~MainWindow();
|
|
|
|
public Q_SLOTS:
|
|
void updateViewerBBox();
|
|
void open(QString filename);
|
|
void setAddKeyFrameKeyboardModifiers(Qt::KeyboardModifiers);
|
|
|
|
protected Q_SLOTS:
|
|
|
|
// settings
|
|
void quit();
|
|
void readSettings();
|
|
void writeSettings();
|
|
|
|
// drag & drop
|
|
void dropEvent(QDropEvent *event);
|
|
void closeEvent(QCloseEvent *event);
|
|
void dragEnterEvent(QDragEnterEvent *event);
|
|
|
|
// file menu
|
|
void on_actionLoadPolyhedron_triggered();
|
|
|
|
// edit menu
|
|
void on_actionSave_snapshot_triggered();
|
|
void on_actionCopy_snapshot_triggered();
|
|
void on_actionClear_points_triggered();
|
|
void on_actionClear_segments_triggered();
|
|
void on_actionClear_cutting_plane_triggered();
|
|
|
|
// algorithm menu
|
|
void on_actionRefine_loop_triggered();
|
|
void on_actionEdge_points_triggered();
|
|
void on_actionInside_points_triggered();
|
|
void on_actionBoundary_points_triggered();
|
|
void on_actionRefine_bisection_triggered();
|
|
void on_actionBoundary_segments_triggered();
|
|
void on_actionPoints_in_interval_triggered();
|
|
void on_actionSigned_distance_function_to_facets_triggered();
|
|
void on_actionUnsigned_distance_function_to_edges_triggered();
|
|
void on_actionUnsigned_distance_function_to_facets_triggered();
|
|
void on_actionIntersection_cutting_plane_triggered();
|
|
void on_actionCutting_plane_none_triggered();
|
|
|
|
// benchmark menu
|
|
void on_actionBench_memory_triggered();
|
|
void on_actionBench_distances_triggered();
|
|
void on_actionBench_intersections_triggered();
|
|
|
|
// benchmark against #triangles
|
|
void on_actionBench_construction_triggered();
|
|
void on_actionBench_distances_vs_nbt_triggered();
|
|
void on_actionBench_intersections_vs_nbt_triggered();
|
|
|
|
// view menu
|
|
void on_actionView_points_triggered();
|
|
void on_actionView_segments_triggered();
|
|
void on_actionView_polyhedron_triggered();
|
|
void on_actionView_cutting_plane_triggered();
|
|
|
|
private:
|
|
Scene* m_pScene;
|
|
Viewer* m_pViewer;
|
|
Ui::MainWindow* ui;
|
|
};
|
|
|
|
#endif // ifndef MAINWINDOW_H
|