Person in charge: | (-) |
Others: | (-) |
Credits | Dept. | Type | Requirements |
---|---|---|---|
7.5 (6.0 ECTS) | CS |
|
ADA
- Prerequisite for DIE , DCSYS AL - Prerequisite for DIE , DCSYS , DCSFW PRED - Prerequisite for DIE , DCSYS PROP - Prerequisite for DIE , DCSYS PS - Prerequisite for DCSFW |
Person in charge: | (-) |
Others: | (-) |
This subject has two overall objectives:
- For students to learn the architecture and the elements that back up interactive graphic systems, and the principles and algorithms behind them, and for students to be able to program interactive visualisations of three-dimensional scenes using APIs such as OpenGL.
- For students to learn the design principles of graphic user interfaces (GUIs) and for them to be able to program them using specific software tools.
Estimated time (hours):
T | P | L | Alt | Ext. L | Stu | A. time |
Theory | Problems | Laboratory | Other activities | External Laboratory | Study | Additional time |
|
T | P | L | Alt | Ext. L | Stu | A. time | Total | ||
---|---|---|---|---|---|---|---|---|---|---|
7,0 | 0 | 8,0 | 0 | 10,0 | 9,0 | 0 | 34,0 | |||
Elements of an interactive graphic system. Conventional input/output devices. Models of scenes and objects. Triangle meshes. Camera model. Lighting environment. Graphic libraries. Colour models.
|
|
T | P | L | Alt | Ext. L | Stu | A. time | Total | ||
---|---|---|---|---|---|---|---|---|---|---|
6,0 | 0 | 6,0 | 0 | 8,0 | 6,0 | 0 | 26,0 | |||
Principles for specifying, designing and evaluating the Graphic User Interface (GUI).
Interaction techniques. Structuring GUI-based applications. Classification and assessment of standard design packages.
|
|
T | P | L | Alt | Ext. L | Stu | A. time | Total | ||
---|---|---|---|---|---|---|---|---|---|---|
9,0 | 0 | 4,0 | 0 | 4,0 | 9,0 | 0 | 26,0 | |||
Projected visualisation versus ray tracing.
Conceptual diagram of the visualisation process. Co-ordinate systems, transformations, and basic algorithms. Review of geometric transformations.
|
|
T | P | L | Alt | Ext. L | Stu | A. time | Total | ||
---|---|---|---|---|---|---|---|---|---|---|
9,0 | 0 | 6,0 | 0 | 6,0 | 9,0 | 0 | 30,0 | |||
Remove the hidden parts: z-buffer. Empirical models of lighting. Introduction to 2D textures. Graphic cards.
|
|
T | P | L | Alt | Ext. L | Stu | A. time | Total | ||
---|---|---|---|---|---|---|---|---|---|---|
6,0 | 0 | 4,0 | 0 | 6,0 | 3,0 | 0 | 19,0 | |||
Interaction techniques. Input devices. Algorithms for selecting graphic information.
|
|
T | P | L | Alt | Ext. L | Stu | A. time | Total | ||
---|---|---|---|---|---|---|---|---|---|---|
3,0 | 0 | 0 | 0 | 0 | 3,0 | 0 | 6,0 | |||
Multi-modal interaction: graphics, sound, and haptics.
3D interaction and virtual reality. |
Total per kind | T | P | L | Alt | Ext. L | Stu | A. time | Total |
42,0 | 0 | 28,0 | 0 | 34,0 | 39,0 | 0 | 143,0 | |
Avaluation additional hours | 7,0 | |||||||
Total work hours for student | 150,0 |
The teaching methodology will be based based on weekly theory classes (3 hours) and lab classes (2 hours).
Theory classes will introduce course concepts. Exercises will help consolidate these concepts and improve students' practical skills.
The lab classes have two aims: the introduction of specific programme tools (OpenGL, Qt, etc.) and the development of compulsory exercises. These exercises will be carried out individually and are a key part of the course.
The exercises basically involves developing programs for providing realistic interactive viewing of 3D scenes, and using the OpenGL graphic library for this purpose and Qt for the interface design.
The guidelines for each session will be published beforehand and explained at the beginning of each implementation stage. It is essential that students prepare for the lab classes by carrying out the individual analytical and design assignments set out in the guidelines. This preparatory work can be partially completed without the need for a computer.
There will be a written exam (T) that will comprise short questions and/or exercises in which students must demonstrate their mastery of the concepts taught during the course. The evaluation of practical work (P) will come from a short work on user interfaces (P0), two practical exams (P1 and P2), and the global evaluation of the practical work (Pr). The practical exams will consist on making several changes to the continuous work in order to evaluate how the student dominates and understand his own work, and will be distributed along the semester.
In case that the practical exams, for technical reasons, could not be executed in the lab, alternatively a written exam would be done about the practical work.
The course grade (F) is based on the foregoing grades (T and P), and in accordance with the following formula:
F = 0.6*T + (0.05 P0 + 0.25 (P1+P2)/2 + 0.1 Pr)
Linear algebra concepts, in particular geometric transformations and the basic principles of matrix calculation.
High-level programming, knowledge of database structures and algorithm design, as well as knowledge of C++ and Linux are essential. Programming Projects Course.