SubjectsSubjects(version: 941)
Course, academic year 2022/2023
   Login via CAS
Introduction to Computer Graphics - NPGR003
Title: Základy počítačové grafiky
Guaranteed by: Department of Software and Computer Science Education (32-KSVI)
Faculty: Faculty of Mathematics and Physics
Actual: from 2022
Semester: winter
E-Credits: 5
Hours per week, examination: winter s.:2/2, C+Ex [HT]
Capacity: unlimited
Min. number of students: unlimited
Virtual mobility / capacity: no
State of the course: taught
Language: Czech, English
Teaching methods: full-time
Teaching methods: full-time
Additional information:
Guarantor: doc. Alexander Wilkie, Dr.
RNDr. Josef Pelikán
Class: Informatika Bc.
Informatika Mgr. - učitelské studium informatiky
Informatika Mgr. - Softwarové systémy
Classification: Informatics > Computer Graphics and Geometry
Is co-requisite for: NPGR017
Annotation -
Last update: RNDr. Josef Pelikán (29.09.2010)
Basic course of 2D and 3D computer graphics - topics: 2D drawing, filling and clipping, introduction to color science, rendering of color images, raster image coding and simple compression methods, raster graphic formats, linear 2D and 3D transformations, projections, 3D scene representation, algorithms for hidden line/surface removal, introduction to OpenGL Labs: programming in C#. Computer graphics curicullum continues with Computer Graphics II (PGR004), Real-time Graphics (PGR019) and Advanced 2D Computer Graphics (PGR007).
Course completion requirements -
Last update: RNDr. Josef Pelikán (15.10.2017)

Student must have enough lab assignments finished (at least handed in)

before going to an exam.

Lab credit requirements are explained in detail on the page:

The same URL explains the grading system of the subject.

Exam can be repeated. Lab credit repetition is irrelevant.

Literature -
Last update: doc. RNDr. Pavel Töpfer, CSc. (25.05.2022)
  • P. Shirley, M. Ashikhmin, S. Marschner: Fundamentals of Computer Graphics, 3rd edition, A K Peters, 2009

  • Foley, Van Dam, Feiner, Hughes: Computer Graphics, Principles and Practice in C, Addison-Wesley, 1995

  • The ČVUT presentation about Fourier transforms:
Requirements to the exam -
Last update: RNDr. Josef Pelikán (15.10.2017)

Exam is written and oral (basis is written, there is a possibility to

call a student for short discussion over the answers).

Every topics presented at lectures can be examined (exceptions are mentioned specifically):

Overall grading is based on lab credit (50-80 points) + exam points (0-100 points).

Grading table - together with further details - can be found on

Student should earn enough lab credits before going to an exam.

Syllabus -
Last update: doc. RNDr. Pavel Töpfer, CSc. (25.05.2022)
  • 1. graphic hardware:

vector and raster displays, color palettes, frame-buffers, printers and plotters

  • 2. 2D drawing:

line drawing - DDA algorithm, Bresenham algorithm, circle, ellipse, polygonal curve

  • 3. 2D filling:

polygon filling - scanline algorithm, flood fill, seed fill, scanline algorithms, hatching

  • 4. clipping:

line-clipping algorithms, polygon clipping

  • 5. halftoning and dithering:

patterns and their matrix representations, incremental patterns, ordered dither, cluster dither, random dither, error distribution - Floyd-Steinberg, modifications for more output values and color images

  • 6. colors:

human color perception, use of color in human-computer interaction, color spaces RGB, HSV, CMY(K), color mixing, RGB<->HSV and RGB->grayscale conversions

  • 7. color reproduction:

'true-color' devices, colormaps, 3-3-2 colormap, topological colormaps, color quantization - Heckbert's median cut algorithm, special colormap effects, colormap animation

  • 8. 2D raster image representation:

RLE coding, quadtree - coding and decoding algorithms, 'X-transition list', set operations, raster graphic formats

  • 9. linear transformations:

homogeneous coordinates, matrix transformation, elementar (atomic) transformations, construction of complex transformations

  • 10. projections:

parallel projection - orthogonal and oblique projection, perspective projection, implemetation of projections

  • 11. 3D scene representation:

enumeration - cell model, octree, volume representation - CSG tree (rendering by ray-casting), boundary representations - VEFS model, winged edge

  • 12. hidden surfaces removal:

floating horizont method, back-face culling, Z-buffer, painter's algorithm, scanline algorithms (Watkins), ..

Charles University | Information system of Charles University |