Main Page
Namespaces
Classes
Files
File List
File Members
glwidget.hpp
Go to the documentation of this file.
1
/*
2
** TP CPE Lyon
3
** Copyright (C) 2014 Damien Rohmer
4
**
5
** This program is free software: you can redistribute it and/or modify
6
** it under the terms of the GNU General Public License as published by
7
** the Free Software Foundation, either version 3 of the License, or
8
** (at your option) any later version.
9
**
10
** This program is distributed in the hope that it will be useful,
11
** but WITHOUT ANY WARRANTY; without even the implied warranty of
12
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
** GNU General Public License for more details.
14
**
15
** You should have received a copy of the GNU General Public License
16
** along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#pragma once
20
21
#ifndef GLWIDGET_HPP
22
#define GLWIDGET_HPP
23
24
25
#include <QtOpenGL/QGLWidget>
26
#include <QTime>
27
28
#include "
navigator_tool.hpp
"
29
#include "../local/scene.hpp"
30
31
32
class
glwidget
:
public
QGLWidget
33
{
34
35
Q_OBJECT
36
37
public
:
38
39
glwidget
(QWidget *parent=0);
40
~glwidget
();
41
42
void
set_wireframe
();
43
void
set_filled
();
44
45
scene
current_scene
;
46
47
void
draw_text
(
double
x,
double
y,
double
z,QString text,QFont font);
48
49
protected
:
50
void
initializeGL
();
51
void
paintGL
();
52
void
resizeGL
(
int
width,
int
height);
53
void
mousePressEvent
(QMouseEvent *event);
54
void
mouseReleaseEvent
(QMouseEvent *event);
55
void
mouseMoveEvent
(QMouseEvent *event);
56
void
keyPressEvent
(QKeyEvent *event);
57
void
timerEvent
(QTimerEvent *event);
58
59
60
61
private
:
62
63
cpe::navigator_tool
nav
;
64
65
66
void
print_help_start
()
const
;
67
void
draw_pointer
(
cpe::navigator_tool
&
nav
)
const
;
68
void
draw_orientation
(
cpe::navigator_tool
&
nav
)
const
;
69
void
draw_camera_stat
();
70
71
void
draw_fps
();
72
void
draw_decorating_info
();
73
74
QTime
t_timer
;
75
76
};
77
78
79
#endif
glwidget::paintGL
void paintGL()
Definition:
glwidget.cpp:90
glwidget::draw_decorating_info
void draw_decorating_info()
Definition:
glwidget.cpp:140
glwidget::print_help_start
void print_help_start() const
Definition:
glwidget.cpp:43
cpe::navigator_tool
(Dirty) Container class for camera, mouse and fps manipulation
Definition:
navigator_tool.hpp:45
glwidget::mouseReleaseEvent
void mouseReleaseEvent(QMouseEvent *event)
Definition:
glwidget.cpp:260
glwidget::keyPressEvent
void keyPressEvent(QKeyEvent *event)
Definition:
glwidget.cpp:306
glwidget::draw_camera_stat
void draw_camera_stat()
Definition:
glwidget.cpp:405
navigator_tool.hpp
glwidget::mouseMoveEvent
void mouseMoveEvent(QMouseEvent *event)
Definition:
glwidget.cpp:270
glwidget::nav
cpe::navigator_tool nav
Definition:
glwidget.hpp:63
glwidget::initializeGL
void initializeGL()
Definition:
glwidget.cpp:58
glwidget::mousePressEvent
void mousePressEvent(QMouseEvent *event)
Definition:
glwidget.cpp:247
glwidget::t_timer
QTime t_timer
Definition:
glwidget.hpp:74
glwidget::draw_fps
void draw_fps()
Definition:
glwidget.cpp:373
glwidget::resizeGL
void resizeGL(int width, int height)
Definition:
glwidget.cpp:242
glwidget::set_filled
void set_filled()
Definition:
glwidget.cpp:365
glwidget::draw_text
void draw_text(double x, double y, double z, QString text, QFont font)
Definition:
glwidget.cpp:439
glwidget::set_wireframe
void set_wireframe()
Definition:
glwidget.cpp:360
glwidget::~glwidget
~glwidget()
Definition:
glwidget.cpp:39
glwidget::draw_orientation
void draw_orientation(cpe::navigator_tool &nav) const
Definition:
glwidget.cpp:205
glwidget
Definition:
glwidget.hpp:32
glwidget::glwidget
glwidget(QWidget *parent=0)
Definition:
glwidget.cpp:30
scene
Definition:
scene.hpp:38
glwidget::current_scene
scene current_scene
Definition:
glwidget.hpp:45
glwidget::timerEvent
void timerEvent(QTimerEvent *event)
Definition:
glwidget.cpp:354
glwidget::draw_pointer
void draw_pointer(cpe::navigator_tool &nav) const
Definition:
glwidget.cpp:175
libinterface
glwidget.hpp
Generated on Mon Apr 21 2014 16:43:22 by
1.8.6