sujet en PDF

Surfaces de subdivision: Interpolation d'une courbe de bord

Projet de spécialité (Image ou Calcul Scientifique)

       

       Gauche:     3 Itérations d'une subdivision et la surface limite lisse.
                           La courbe verte en entrée est interpolée.
                           Le maillage blanc donne une approximation de la surface. (Image [Levin'99])
       Millieu et droite:     Geri's Game, une surface de subdivison des plus célebres. Image issue de [3].

Cadre du projet

Encadrant: Stefanie Hahmann
Nombre d'étudiants : 2-4
Lieu : salle machine ENSIMAG, ou sur le portable des étudiants.
Prérequis : cours de Graphique 3D + cours d'algorithmique et de programmation de 1A et 2A.

Contexte

Les surfaces de subdivision [3,4] sont une des principales représentations d'objets 3D lisse utilisées dans les films d'animation. L'objectif de ce projet est de se familiariser avec les algorithmes de calcul et la visualisation de ces surfaces à travers d'un schéma de subdivision particulier qui est capable d'interpoler un ensemble de courbes pré-définies par l'utilisateur. Le projet passe par 3 étapes: la création d'un maillage initial, le calcul d'une surface, et la visualisation et analyse de ces surfaces. Création de représentations artistiques de fluides surfaciques similaire au suminagashi ou au marbre. La méthode consiste à advecter une région solide (contour fermé) par un fluide afin de former une aparence bouclée mais claire.

Travail demandé

Le travail se fait en plusieurs étapes:
  1. Créer un éditeur de courbes 3D.
  2. Créer un maillage initial, voir arêtes blanches dans la figure ci-dessus.
  3. Calculer une surfaces de subdivision qui interpolent les courbes pré-définies, en utilisant les méthodes [1] ou [2].
  4. Visualiser le résultat avec un logiciel existant.
  5. Analyser la qualité visuelle des surfaces obtenues en visualisant la courbure de Gauss ou des lignes de réflexion sur les surfaces.
  6. d'autres extension possibles: interpoler des tangentes données aux borddes.
Un programme en C++ calculant des surfaces de subdivision classiques (Catmull-Clark, Loop, etc) est mis à disposition. Une adaptation de ce programme est cependant nécessaire pour y intégrer les schémas [1] et [2].

Outils de visualisation: Geomview, Meshlab.

Evaluation

Comme pour les autres sujets, l'évaluation se fait sur la base d'un expose avec transparents suivi de questions. Une page web est à faire expliquant le sujet, la problématique, votre démarche suivi, vos résultats obtenus, faire un bilan de ce qui fonctionne et ce qui ne fonctionne pas. Le code source avec make file est à rendre. Il doit être bien commenté et utilisable.

Références



Last modified on Sunday April 17th, 2011 E-mail contact or any comment