/* Copyright (C) 2013 Karl Phillip Buhr * * This work is licensed under the Creative Commons Attribution-ShareAlike License. * To view a copy of this license, visit: * https://creativecommons.org/licenses/by-sa/2.5/legalcode * * Or to read the human-readable summary of the license: * https://creativecommons.org/licenses/by-sa/2.5/ */ #pragma once #include #include #include #include #include "fumee.h" class GLWidget : public QGLWidget { Q_OBJECT public: explicit GLWidget(QWidget* parent = 0); virtual ~GLWidget(); /* OpenGL initialization, viewport resizing, and painting */ void initializeGL(); void paintGL(); void resizeGL( int width, int height); void keyPressEvent(QKeyEvent *event); void wheelEvent(QWheelEvent *event); void mousePressEvent(QMouseEvent *event); void mouseMoveEvent(QMouseEvent *event); //void timerEvent(QTimerEvent *event); /* Helper functions */ void setXRotation(int angle); void setYRotation(int angle); void setZRotation(int angle); void _view_ortho(); void _view_perspective(); void repereScene3D(float l); private: int _width; int _height; QPoint last_pos; double x,y,z, distance; double x_rot,y_rot,z_rot; QImage qt_frame, qt_frame2; QString framedir,framedir2; QTime Now; Fumee* Fumee_1; //cv::VideoCapture cv_capture; int _fps; GLuint* _texture; protected slots: void _tick(); };