This course covers the techniques, algorithms and data structures used to acquire, represent and query geometric models of solids and surfaces. The course will cover various modeling techniques, including boundary representations, implicit representations, instantiation and Boolean combinations of shapes, as well as procedural modeling. We will also discuss effective data structures for representing various types of objects, as well as the process of acquiring models from real objects.
Professorat
Responsable
Carlos Andujar Gran (
)
Altres
Alvaro Vinacua Pla (
)
Oscar Argudo Medrano (
)
Hores setmanals
Teoria
2
Problemes
0
Laboratori
1
Aprenentatge dirigit
0
Aprenentatge autònom
5
Competències
Competències Tècniques de cada especialitat
Gràfics i realitat virtual
CEE1.1 - Capacitat de comprendre i saber aplicar les tecnologies actuals i les que en el futur es facin servir per al disseny i avaluació d'aplicacions gràfiques interactives en tres dimensions, tant quan prevalgui la qualitat d'imatge com quan ho faci la interactivitat o la velocitat, així com comprendre els compromisos inherents i les raons que els ocasionen.
Competències Tècniques Generals
Genèriques
CG1 - Capacitat per aplicar el mètode científic en l'estudi i anàlisi de fenòmens i sistemes en qualsevol àmbit de la Informàtica, així com en la concepció, disseny i implantació de solucions informàtiques innovadores i originals.
Competències Transversals
Actitud adequada davant el treball
CTR5 - Tenir motivació per a la realització professional i per a afrontar nous reptes, tenir una visió àmplia de les possibilitats de la carrera professional en l'àmbit de l'enginyeria en informàtica. Sentir-se motivat per la qualitat i la millora contínua, i actuar amb rigor en el desenvolupament professional. Capacitat d'adaptació als canvis organitzatius o tecnològics. Capacitat de treballar en situacions de carència d'informació i/o amb restriccions temporals i/o de recursos.
Raonament
CTR6 - Capacitat de raonament crític, lògic i matemàtic. Capacitat de resoldre problemes en la seva àrea d'estudi. Capacitat d'abstracció: capacitat de crear i utilitzar models que reflecteixin situacions reals. Capacitat de dissenyar i realitzar experiments senzills, i analitzar-ne i interpretar-ne els resultats. Capacitat d'anàlisi, de síntesi i d'avaluació.
Continguts
Foundations of 3D modeling
Elements of a geometric modeling system. Solid models. Closed, bounded and regular sets of points. Two-manifold surfaces. Abstraction levels in geometric modeling.
Boundary representation (BRep)
Polyhedra. Cells, shells, faces, loops, edges and vertices. Genus of a surface. Euler equation for polyhedra. Incidence relationships. Creation of BRep models. Sweep. Boolean operations. Curves and Surfaces for Geometric Modeling
Space decomposition models
Voxelizations. Octrees. Classic, Face and Extended octrees. Octree representation. Basic operations on octrees.
Implicit modeling
Scalar fields. Surface reconstruction from scalar fields. Blobby molecules, metaballs and soft objects.
Data structures for triangle meshes
Euler equation for triangle meshes. Face-based, Vertex-based and edge-based representations. The half-edge data structure. APIs for geometry processing.
Geometric tests and queries
Estimating normal and tangent planes at vertices of polygonal meshes. Discrete curvature at mesh vertices. Mesh quality. Non-selfintersection test.
Procedural modeling
Fractals. Lindenmayer systems (L-systems). Stochastic and parametric grammars. Shape grammars. Generative modeling.
Geometry acquisition
Pipeline for the acquisition of 3D models. Technologies. Registration and merge.
Activitats
ActivitatActe avaluatiu
Lectures
Material will be presented in lectures along the term. You are expected to conduct complementary readings and exercises
will also be assigned on occasion, to be presented at a later date or turned in.
Teoria
39h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
4h
Aprenentatge autònom
52h
Implementation of selected algorithms
A selection of relevant algorithms will be assigned to implement in Lab sessions and on your own. You may be required to
present your solution to the class. You must turn in fully functional source code that runs in the indicated platform. Usual languages are C++ and Python.
Teoria
0h
Problemes
0h
Laboratori
13h
Aprenentatge dirigit
5h
Aprenentatge autònom
33h
Final exam
At the end of the term you will have a final exam, which may be a take-home.
Setmana:
17 Tipus:
examen final
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Partial exam
At the middle of the term you will have a partial exam, which may be a take-home.
Setmana:
7 Tipus:
examen de teoria
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Metodologia docent
The teaching methodology will be based based on weekly theory classes and lab classes. Course concepts will be introduced in the theory classes. Exercises will be used to consolidate these concepts, which will be further developed in the lab sessions.
The lab sessions basically involve the teacher presenting the guidelines for the practical work (split by sessions) and the concepts bearing on the software to be used. Students will complete the design and programming of the various applications bearing on the course contents. The exercises will be carried out individually.
Mètode d'avaluació
Partial: mark based on the student's performance in the partial exam
Exam: mark based on the student's performance in the final exam
Lab: grade stem from the student's implementations of selected algorithms (including occasionally their presentation of their
solution in a laboratory class)
The final grade for the course will be computed as: