Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F94231825
glwidget.cc
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Wed, Dec 4, 23:25
Size
1 KB
Mime Type
text/x-c
Expires
Fri, Dec 6, 23:25 (1 d, 17 h)
Engine
blob
Format
Raw Data
Handle
22764830
Attached To
rSYMKIT symkit
glwidget.cc
View Options
#include <QKeyEvent>
#include <QTimerEvent>
#include <QMatrix4x4>
#include "glwidget.h"
// ======================================================================
void GLWidget::initializeGL()
{
vue.init();
}
// ======================================================================
void GLWidget::resizeGL(int width, int height)
{
/* On commance par dire sur quelle partie de la
* fenêtre OpenGL doit dessiner.
* Ici on lui demande de dessiner sur toute la fenêtre.
*/
glViewport(0, 0, width, height);
/* Puis on modifie la matrice de projection du shader.
* Pour ce faire on crée une matrice identité (constructeur
* par défaut), on la multiplie par la droite par une matrice
* de perspective.
* Plus de détail sur cette matrice
* http://www.songho.ca/opengl/gl_projectionmatrix.html
* Puis on upload la matrice sur le shader à l'aide de la
* méthode de la classe VueOpenGL
*/
QMatrix4x4 matrice;
matrice.perspective(70.0, qreal(width) / qreal(height ? height : 1.0), 1e-3, 1e5);
vue.setProjection(matrice);
}
// ======================================================================
void GLWidget::paintGL()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
c.dessine();
}
Event Timeline
Log In to Comment