Lagrangian Liquid Simulation
Master Thesis project on simulation of liquids using Lagrangian approach and SPH
|
00001 #ifndef MAINAPP_H 00002 #define MAINAPP_H 00003 00004 #include <QMainWindow> 00005 #include "Simulation.h" 00006 00008 namespace Ui 00009 { 00010 class MainWindow; 00011 } 00012 00022 00023 class MainApp : public QMainWindow 00024 { 00025 Q_OBJECT 00026 00027 public: 00030 MainApp( 00031 QWidget* _parent = 0 00032 ); 00033 00035 ~MainApp(); 00036 00037 00038 private: 00040 Ui::MainWindow* m_ui; 00041 00043 Simulation* m_simulation; 00044 00045 private: 00047 void setupConnections(); 00048 00051 void keyPressEvent( 00052 QKeyEvent* _event 00053 ); 00054 00057 void refreshControlsFromSphere(const int _sphereId); 00058 00061 void refreshControlsFromCapsule(const int _capsuleId); 00062 00065 void refreshControlsFromFluid(const int _fluidId); 00066 00067 00068 private slots: 00069 //GUI dynamic controls event here 00070 00071 void on_cmd_injectParticle_clicked(); 00072 void on_cmd_flushCache_clicked(); 00073 void on_cmd_autoMove_clicked(); 00074 void on_spin_fluid_interfaceColorPlus_clicked(bool checked); 00075 void on_spin_fluid_interfaceColorMinus_clicked(bool checked); 00076 void on_spin_fluid_interfaceThreshold_valueChanged(double ); 00077 void on_spin_fluid_interfaceCoefficient_valueChanged(double ); 00078 void on_spin_fluid_surfaceThreshold_valueChanged(double ); 00079 void on_spin_fluid_surfaceCoefficient_valueChanged(double ); 00080 void on_spin_fluid_viscosityConstant_valueChanged(double ); 00081 void on_spin_fluid_gasConstant_valueChanged(double ); 00082 void on_spin_fluid_restDensity_valueChanged(double ); 00083 void on_cmb_fluid_currentFluid_currentIndexChanged(int index); 00084 void on_spin_solver_smoothingLength_valueChanged(double ); 00085 void on_cmb_solver_integrationMethod_currentIndexChanged(int index); 00086 void on_spin_solver_timestep_valueChanged(double ); 00087 void on_spin_environment_capsule_centre_z_valueChanged(double ); 00088 void on_spin_environment_capsule_centre_y_valueChanged(double ); 00089 void on_spin_environment_capsule_centre_x_valueChanged(double ); 00090 void on_spin_environment_capsule_incrementAngle_valueChanged(int ); 00091 void on_chk_environment_capsule_isStatic_clicked(bool checked); 00092 void on_spin_environment_capsule_radius_valueChanged(double ); 00093 void on_chk_environment_sphere_isStatic_clicked(bool checked); 00094 void on_spin_environment_sphere_radius_valueChanged(double ); 00095 void on_spin_environment_sphere_velocity_z_valueChanged(int ); 00096 void on_spin_environment_sphere_velocity_y_valueChanged(int ); 00097 void on_spin_environment_sphere_velocity_x_valueChanged(int ); 00098 void on_spin_environment_sphere_centre_z_valueChanged(int ); 00099 void on_spin_environment_sphere_centre_y_valueChanged(int ); 00100 void on_spin_environment_sphere_centre_x_valueChanged(int ); 00101 void on_cmb_environment_capsule_currentIndexChanged(int index); 00102 void on_cmb_environment_sphere_currentIndexChanged(int index); 00103 void on_spin_environment_boundary_size_z_valueChanged(int ); 00104 void on_spin_environment_boundary_size_y_valueChanged(int ); 00105 void on_spin_environment_boundary_size_x_valueChanged(int ); 00106 void on_spin_environment_boundary_periodicWall_angleIncrement_valueChanged(int ); 00107 void on_spin_environment_boundary_periodicWall_speed_valueChanged(double ); 00108 void on_spin_environment_boundary_periodicWall_maxAmplitude_valueChanged(int ); 00109 void on_chk_environment_boundary_enablePeriodicWall_clicked(bool checked); 00110 void on_spin_environment_boundary_restitutionForRBD_valueChanged(double ); 00111 void on_spin_environment_boundary_restitutionForFluid_valueChanged(double ); 00112 void on_checkBox_clicked(bool checked); 00113 void on_spin_environment_boundary_centre_z_valueChanged(int ); 00114 void on_spin_environment_boundary_centre_y_valueChanged(int ); 00115 void on_spin_environment_boundary_centre_x_valueChanged(int ); 00116 void on_spin_environment_capsule_resolution_valueChanged(int ); 00117 void on_spin_environment_rbd_restitution_valueChanged(double ); 00118 void on_spin_hose_velocity_z_valueChanged(int ); 00119 void on_spin_hose_velocity_y_valueChanged(int ); 00120 void on_spin_hose_velocity_x_valueChanged(int ); 00121 void on_spin_hose_centre_z_valueChanged(int ); 00122 void on_spin_hose_centre_y_valueChanged(int ); 00123 void on_spin_hose_centre_x_valueChanged(int ); 00124 void on_chk_fluid_hose_waitUntilRBD_clicked(bool checked); 00125 void on_chk_fluid_hose_waitUntilBoundary_clicked(bool checked); 00126 void on_chk_fluid_hose_drawMarker_clicked(bool checked); 00127 void on_spin_cache_automaticFlushInterval_valueChanged(int ); 00128 void on_chk_cache_automaticFlush_clicked(bool checked); 00129 void on_chk_cache_exportBoundary_clicked(bool checked); 00130 void on_chk_cache_exportRBD_clicked(bool checked); 00131 void on_spin_cache_samplingInterval_valueChanged(int ); 00132 void on_chk_cache_enable_clicked(bool checked); 00133 00134 void on_cmd_singleStep_clicked(); 00135 00136 void on_cmd_2DFrontView_clicked(); 00137 00138 void on_cmd_2DTopView_clicked(); 00139 }; 00140 00141 #endif // MAINAPP_H