From f527cde6342c5b8109a20f0a6b483327c6569844 Mon Sep 17 00:00:00 2001 From: salinasd Date: Tue, 27 Jan 2015 10:20:13 +0000 Subject: Merge GudhUI, a UI for gudhi based on Qt git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/trunk@427 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: 17fedd974f14a8225b27d94361e835964eeb5cba --- src/GudhUI/gui/MainWindow.h | 97 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 src/GudhUI/gui/MainWindow.h (limited to 'src/GudhUI/gui/MainWindow.h') diff --git a/src/GudhUI/gui/MainWindow.h b/src/GudhUI/gui/MainWindow.h new file mode 100644 index 00000000..0eef29ed --- /dev/null +++ b/src/GudhUI/gui/MainWindow.h @@ -0,0 +1,97 @@ +#ifndef MAIN_WINDOW_H +#define MAIN_WINDOW_H + + +#include +#include "ui_main_window.h" +#include "model/Model.h" +#include "view/Viewer_instructor.h" + + +class Menu_k_nearest_neighbors; +class Menu_uniform_neighbors; +class Menu_edge_contraction; +class Menu_persistence; + +class MainWindow : public QMainWindow,public Ui::MainWindow{ + Q_OBJECT + +private: + Model model_; + Viewer_instructor* viewer_instructor_; + Menu_k_nearest_neighbors* menu_k_nearest_neighbors_; + Menu_uniform_neighbors* menu_uniform_neighbors_; + Menu_edge_contraction* menu_edge_contraction_; + Menu_persistence* menu_persistence_; + +public: + MainWindow(QWidget* parent = 0); + void connectActions(); + + /** + * compute the bounding box and calls update view + */ + void init_view() const; + void update_view() const; + + +protected: + void closeEvent(QCloseEvent *event); + void keyPressEvent(QKeyEvent *event){} + +public: + + public slots: + + + /** + * open a file chooser to choose an off to load + */ + void off_file_open(); + + void off_points_open(); + + /** + * open a file chooser to choose an off to save + */ + void off_file_save(); + void off_points_save(); + + void show_graph_stats(); + void show_complex_stats(); + void show_complex_dimension(); + + + void build_rips_menu(); + void build_rips(double alpha); + void build_k_nearest_neighbors_menu(); + void build_k_nearest_neighbors(unsigned k); + + + void contract_edge_menu(); + void contract_edges(unsigned num_collapses); + + + void collapse_vertices(); + void collapse_edges(); + + + void uniform_noise(); + void lloyd(); + + void show_homology_group(); + void show_euler_characteristic(); + void persistence_menu(); + void compute_persistence(int p,double threshold,int max_dim,double min_pers); + + + +public: + signals: + void sceneChanged() const; + + +}; + + +#endif -- cgit v1.2.3