|SCIENTIFIC DISCIPLINARY SECTOR||INF/01|
This course introduces the principles of modeling geometric objects from a mathematical and computational perspective. After introducing the basics schemes for solid modeling, and the necessary concepts in differential geometry, the course focuses on geometric meshes and related data structures and algorithms. The course includes homework and/or a final project developed in C++ using a library for geometry processing. All lectures are given in English.
Learning theoretical foundations, techniques and methodologies for the representation and manipulation of solid objects, 2D and 3D scalar surfaces and fields, and related computational techniques. Learning computational techniques for resolving geometric problems (computational geometry and geometry processing). Reference applications: computer graphics, scientific visualization, CAD systems, geographic information systems, virtual reality.
Linear algebra: vectors, matrices, linear systems
Differential calculus in several variables: partial derivatives, gradient, Laplacian, Hessian
Imperative programming: C++ and standard library
Theory classes in frontal teaching. Homework/project developed autonomously by students. Assistance from the teacher.
Models of discrete geometric shapes
Discrete differential geometry
Curves and surfaces
Extra topics (if there is time): Geometry processing
Notes and slides made available on Aulaweb.
Notes contain references to reference books and articles for further reading.
Some recommended books (available in the library):
M. Mantyla, An Introduction to Solid Modeling, Computer Science Press, 1988
M.K. Agoston, Computer Graphics and Geometric Modeling, Springer Verlag, 2005
M. Botsch, L. Kobbelt, M. Pauly, P. Alliez, B. Lévy, 2010, Polygon Mesh Processing, A.K. Peters, ISBN 978-1-56881-426-1
ENRICO PUPPO (President)
CHIARA EVA CATALANO (President Substitute)
PAOLA MAGILLO (President Substitute)
The class will start according to the academic calendar (1st semester).
All class schedules are posted on the EasyAcademy portal.
The exam will consist of an evaluation of the homework/project plus an oral.
Homework tests consist of simple exercises to be done individually by each student, to familiarize with the geometric library.
The final project consists of a more elaborated problem to be addressed in a group of two/three students, within the same programming framework.
Homework and project can be proposed alternatively or together, depending on the class's global level of programming skills.
Homework/project will be evaluated for the correctness of the solution, efficiency, and correct use of the library.
The ora will include questions that can span the whole syllabus. Students are not required to remember by heart all mathematical details but should know the logical steps of all methods and be able to explain all details while consulting the slides.
This course will rely on tools from calculus in multiple variables instrduced in the Caluculus courses of second year of the undergraduate program and tools from numerical analysis such as resolution of linear systens and functional minimization.
This course also makes use of concepts in algebraic topology and differential geometry that are introduced autonomously. Previous knowledge of such concepts may help, which can be obtained from courses such as Istituzioni di Fisica Matematica 1 and/or Geometria Differenziale and/or Trattamento Numerico di Equazioni Differenziali.