Examen de TD n°2 2007-2008 |
|
4 décembre 2007 - 1h30 | |
Tous les documents sont autorisés. Le cas échéant, on n'oubliera pas de fournir quelques commentaires sur les techniques employées. Question 1: Lancer de rayons On considère une sphère S de rayon r centrée sur la position (cx, cy, cz). On considère la position d'un point d'incidence P de coordonnées (x, y, z) sur cette sphère. Définir sans l'implanter une méthode de calcul de la normale extérieure à la sphère S au point P. Question 2: Courbes paramétriques cubiques et surfaces paramétriques bicubiques On considère la fonction de prototype suivant : position *calculBSpline(position *pts, matriceDeBase m, int n); développée en TD/TP pour calculer la position de n points uniformément répartis (dans l'intervalle [0.0, 1.0]) sur la courbe paramétrique cubique de matrice de base m et de points de contrôle pts (pts est un tableau de 4 position). typedef struct position { On va utiliser cette fonction pour générer n*n sommets de définition d'une " surface paramétrique bicubique " à partir d'un maillage de 4 jeux de 4 points de contrôle (4 quadruplets) soit au total 16 points de contrôle. Chacun des quadruplets est utilisé pour générer une courbe cubique définie sur n sommets. Les 4 jeux de n sommets ainsi obtenus sont utilisés pour définir n jeux de 4 points de contrôle (lignes continues courbes sur le schéma ci-dessous) de manière à autoriser la génération de n courbes cubiques de n sommets (lignes courbes en pointillé sur le schéma ci-dessous). On obtient ainsi n*n sommets définissant une surface paramétrique bicubique. Ecrire une fonction respectant le prototype position **calculSurfaceBSpline(position **pts, matriceDeBase m, int n); calculant les n*n sommets dune surface paramétrique bicubique selon la méthode définie ci-dessus (pts est un tableau de 4x4 position). Question 3: Caméra en OpenGL Ecrire la fonction reshape d'un programme C + OpenGL + GLUT qui configure une caméra de visualisation en perspective selon les caractéristiques suivantes:
Question 4: Lumières en OpenGL Ecrire une fonction C + OpenGL permettant d'activer et de paramétrer les trois premières lumières définissable en OpenGL selon les caractéristiques suivantes:
Question 5: Mathématiques matricielles On considère la suite de transformations géométriques consistant chronologiquement en
Calculer la matrice de transformation en coordonnées homogènes représentative de cette suite de 4 transformations. |
|
Remarques, erreurs |