12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- #ifndef QT_OUTPUT_VIEW_HPP
- #define QT_OUTPUT_VIEW_HPP
- #include <QWidget>
- #include <QPainter>
- #include <QOpenGLWidget>
- #include <QMouseEvent>
- #include <GL/glut.h>
- #include "qt/output/kernel.hpp"
- class QtOutputView:public QOpenGLWidget{
- private:
- static constexpr size_t const arrow_step_x=3;
- static constexpr size_t const arrow_step_z=7;
- static constexpr double const scale_arrow=12000;
- static constexpr double const scale_arrow_head=0.1;
- size_t nX;
- double dX,lX;
- double factor;
- QtKernel* kernel;
- size_t step;
- public:
- QtOutputView(QtKernel* kernel);
- ~QtOutputView();
- void initializeGL();
- void resizeGL(int x,int h);
- void paintGL();
- double getP(size_t ix,size_t iz);
- double getPl(size_t ix);
- double getl(size_t ix);
- double getHydr(size_t ix);
- void setColor(size_t ix,size_t iz);
- /* void paintEvent(QPaintEvent* event);*/
- void draw(size_t t);
- void drawTriangle(size_t ix1,size_t iz1,size_t ix2,size_t iz2,size_t ix3,size_t iz3);
- void mousePressEvent(QMouseEvent* event);
- void displayInfos(double x,double y);
- void drawVector(size_t ix,size_t iz,double u,double v);
- void drawVectors();
- };
- inline
- QtOutputView::~QtOutputView(){
- }
- inline double
- QtOutputView::getP(size_t ix,size_t iz){
- return kernel->solution[step]->P[ix][iz];
- }
- inline double
- QtOutputView::getPl(size_t ix){
- return kernel->solution[step]->Pl[ix];
- }
- inline double
- QtOutputView::getl(size_t ix){
- return kernel->solution[step]->l[ix];
- }
- inline double
- QtOutputView::getHydr(size_t ix){
- return kernel->solution[step]->hydr[ix];
- }
- #endif
|