Data Structures for Computer Graphics

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BE4M39DPG Z,ZK 6 2P+2S English
During a review of study plans, the course B4M39DPG can be substituted for the course BE4M39DPG.
It is not possible to register for the course BE4M39DPG if the student is concurrently registered for or has already completed the course B4M39DPG (mutually exclusive courses).
It is not possible to register for the course BE4M39DPG if the student is concurrently registered for or has previously completed the course B4M39DPG (mutually exclusive courses).
Garant předmětu:
Vlastimil Havran
Vlastimil Havran
Vlastimil Havran
Department of Computer Graphics and Interaction

This course provides you with the fundamentals of data structures commonly used in computer graphics. In contrast to standard binary search trees used in one dimension, the presented theory focuses on multidimensional data used to describe 3D scenes. In addition to the theory, the course emphasizes individual and team projects, where the importance and advantages of multidimensional data are demonstrated on practical examples. The students will gain practical experience through their own individual projects.


Space and runtime complexity of algorithms, binary trees and heaps, tree balancing, search algorithms, priority queues, fundamentals of von Neumann architecture, and good knowledge of C++. The knowledge of C++ will be checked during the first exercise.

Syllabus of lectures:

1. Lectures overview, review of sorting and searching, review of computer graphics algorithms, questions to the course, rules of the game. Introduction to hierarchical and regular data structures used in CG.

2. Incidence operations used in computer graphics

3. Point based representations and data structures

4. Object based and image based representations in 2D and 3D

5. Proximity search and its applications I.

6. Proximity search and its application II.

7. High-dimensional search algorithms.

8. Ray shooting and its applications I.

9. Ray shooting and its applications II.

10. Visibility algorithms based on z-buffer I.

11. Visibility algorithms based on z-buffer II.

12. Static collision detection.

13. Advanced collision detection.

14. Reserved.

Syllabus of tutorials:

1. Introduction to the exercises, description of homework projects

2. Selection of term projects + consultations

3. Examples of incidence operations

4. Consultation to homework projects

5. Project presentations (4 participants)

6. Project presentations (4 participants)

7. Project presentations (4 participants)

8. Consultations to homework projects

9. Written test for 60 minutes (plus perhaps some presentations)

10. Project presentation (4 participants)

11. Project presentations (4 participants)

12. Consultation to the term projects.

13. Demonstration and evaluation of the projects (10x)

14. Demonstration and evaluation of the projects (10x)

Study Objective:

Students will acquire credits on the basis of term project and it consists of achieved results, the source code documentation, project presentation and the project functionality. There will be a written test in the term. The extent of the exam is given by contents of lectures.

Study materials:

1. Samet, H: The Design and Analysis of Spatial Data Structures, Addison Wesley 1994.

2. Samet, H: Applications of Spatial Data Structures, Addison Wesley, 1990.

3. Laurini, R. and Thompson D.: Fundamentals of Spatial Information Systems, Academic Press 1992.

4. Samet, H: Foundations of Multidimensional and Metric Data Structures, Morgan Kaufmann Publishers, 2006.

5. E. Langetepe and G. Zachmann: Geometric Data Structures for Computer Graphics, 2006.

6. C. Ericson: Real Time Collision Detection, Morgan Kauffman Publishers, 2005.

7. G. van den Bergen: Collision Detection in Interactive 3D Environments, Elsevier, 2004.

8. D. P. Mehta and S. Sahni: Handbook of Data Structures and Applications, Chapman and Hall/CRC, 2004

Further information:
Time-table for winter semester 2024/2025:
Havran V.
(lecture parallel1)
Karlovo nám.
Kotkova cvičebna K4
Havran V.
(lecture parallel1
parallel nr.101)

Karlovo nám.
Kotkova cvičebna K4
Time-table for summer semester 2024/2025:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2024-06-16
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/en/predmet4699906.html