Master in Innovation and Research in Informatics (MIRI)
Departament de Matemàtica Aplicada II
Facultat d’Informàtica de Barcelona
Universitat Politècnica de Catalunya
Warning!
Since I retired in August 2020, this page is obsolete. The updated web page for this course can be found here: https://dccg.upc.edu/coursesgtcg/
Goals
This course has been designed to provide students with the mathematical geometric tools most ubiquitously used in computer graphics.
By the end of the course, students should be able to:
 Use and manipulate affine coordinates (homogeneous or not).
 Compute distance and angular measures.
 Describe and control linear objects.
 Describe and control parametrized curves and surfaces.
 Locate a given geometric object in the desired position in space, using different techniques.
Contents
 Basics of affine and metric geometry
 Vectorial spaces.
 Affine spaces. Coordinate systems. Affine varieties in dimensions 2 and 3.
 Euclidean spaces. Distances and angles. Projections. Cartesian coordinate systems.
 Changing coordinates.
 Geometric objects
 Linear objects.
 Curves in dimensions 2 and 3. Parametrizations. Rudiments of differential geometry of curves.
 Surfaces in dimension 3. Parametrizations. Rudiments of differential geometry of surfaces. Intersections.
 Affine transforms
 Rigid motions, similarities and affinities.
 Using quaternions in rotations.
Activities
The contents of the course being of mathematical nature, the activities associated with it are oriented accordingly:
 Theory classes: aimed at presenting and discussing the geometric techniques included in the syllabus, they will be mainly conducted by the instructor.
 Problems solving classes: students will present and discuss their solutions to the problems that will have been posed in advance.
 Laboratory classes: for the students to implement the above mentioned solutions to geometric problems. Emphasis will be put into implementing the geometric components of the solutions, while essentially avoiding graphics issues.
 Exam: in addition to the homework (problems solving and implementing), there will be a final written exam, mainly devoted to problems solving.
The length of the course, together with its level, entail the need of some non irrelevant amount of student’s personal work. This includes exploring course topics beyond the material presented in class, proposing solutions to new problems and proving the correctness of the proposed solutions, and designing and carrying out their implementations.
Evaluation
Along the course, students will get assigned some problems solving and implementing. This homework will be presented in class by the students, and revised by the instructor, giving as a result the homework component of the final grade (H). There will also be a final written exam, mainly devoted to problems solving, which will give the exam component of the final grade (E). The final grade (F) will be obtained by the following formula: F = max (E, (H+E)/2).
General information
The general information related to a specific semester of the course (calendar, schedule, class rooms, evaluation, etc.) can be found at the FIB web page. Announcements along the semester will be done at the FIB corner (Racó). In this web page (which is always under construction) I will post some material for the course.
Material for the course
 Linear algebra. Need to refresh it?
 This is an elementary linear algebra textbook.
 And here is an elementary linear algebra tutorial notebook for Mathematica.
 This short text shows a nice application of linear algebra: JPEG: A clever change of basis
 Dealing with numbers, points, and lines
 Conics:
 Quaternions:
 Comparing Foley – Van Dam’s and the quaternions methods: An example.
 Comparing Foley – Van Dam’s and the quaternions methods: General case.
 Euler angles:
 Computing Euler’s angles: An example
 TaitBryan angles
 What is a gimbal lock and why it may be annoying? Take a look of this video.
 Algorithms
 See this web page
References
Are you looking for a textbook containing most of what we will see in class?
 Joan Trias Pairó, Geometría para la informática gráfica y CAD, Edicions UPC, 2003.
 Gerald Farin, Dianne Hansford, Practical Linear Algebra: A Geometry Toolbox, A. K. Peters Ltd., 2005.
Are you interested in reading what computer graphics people consider to be the mathematical tools useful for their work?
 Eric Lengyel, Mathematics for 3D game programming and computer graphics, Charles River Media, 2002.
 Max K. Agoston, Computer graphics and geometric modeling, Springer, 2004.
Do you want to learn more about differential geometry on curves and surfaces?
 Manfredo Perdigão do Carmo, Differential geometry of curves and surfaces, PrenticeHall, 1976.
 Dirk Jan Struik, Lectures on classical differential geometry, Dover Publications, 1988.
Do you want to learn more about geometric algorithms?
 Mark de Berg et al., Computational geometry: algorithms and applications, Springer, 2008.
Do you need help with SAGE?
Further resources
 Mathematical text editor
Mathematical edition is almost always and everywhere done using LaTeX. Not only it is used in universities (LaTeX has been used to write all the documents of this course, and probably all the problems lists, exams, and other mathematical texts that you had in your hands during your previous studies) but it is the most extended editor of scientific texts (LaTeX is used to write all the textbooks of scientific publishers as important as Springer, and also most of the mathematics and computer science conferences around the world).
It’s a free source software that has versions for all operating systems (Linux, Mac, Windoxs, etc.), it helps writing all sort of scientific texts, such as articles, books and presentations, while it allows to incorporate figures previously produced in PDF by any drawing program.
You can download LaTeX from http://www.tug.org/
References:

 Introductory text: L. Lamport, LaTeX, a Document Preparation System, AddisonWesley, 2nd ed., 1994.
 The LaTeX project site.
 The LaTeX wikibook.
For those of you who work on windows, WinEdt is a very convenient editor for writing LaTeX code. You can download it from http://www.winedt.com/
 Drawings
Each person likes preparing his/her figures with his/her favorite drawing program. I use IPE (an evolution of xfig designed by a computational geometer), because it allows me to draw the geometric figures that I need, because it integrates text in LaTeX, and because it allows me to also prepare my presentations in a very easy whatyouseeiswhatyouget way. It’s a free source software that has versions for all the operating systems (Linux, Windoxs, Unix, etc.).
You can download IPE from http://ipe.otfried.org/
 Geometric constructions
In addition to producing your own drawings, you may wish to create and experiment with geometric constructions. If so, I recommend GeoGebra: http://www.geogebra.org/
Thesis, grants, and projects
 Are you interested in doing your Masther Thesis in related to geometry? Have a look!
 Are you interested in working in a geometric project? Have a look!
 Are you interested in doing your PhD in Computational Geometry? Have a look!
 Do you want to know what our Research Group does? Look here!