340 likes | 574 Views
Calcul Matriciel et Infographie. FABRE Maxime LEPOT Florian SALIB Jeremy URBANEJA Dorian. Introduction. Réalisation d’un travail concret avec des matrices Afficher un objet 3D sur une surface Lui appliqué des transformations Le voir se transformer suivant un angle de vue. Sommaire.
E N D
Calcul Matriciel et Infographie FABRE Maxime LEPOT Florian SALIB Jeremy URBANEJA Dorian
Introduction • Réalisation d’un travail concret avec des matrices • Afficher un objet 3D sur une surface • Lui appliqué des transformations • Le voir se transformer suivant un angle de vue
Sommaire • I/Les techniques mathématiques • II/L’adaptation informatique • III/Présentation du programme
I/Les techniques mathématiques • Obtention des matrices de base nécessaires aux diverses transformations • Calcul papier • Utilisation méthodologie TD et cours
Calcul des inverses • Méthode générale • On détermine la mineure • On détermine la cofacteur • On trouve le déterminant • On détermine ensuite l’inverse
II/L’adaptation informatique • L’objet • Les matrices • Matrice modèle • Matrice view • Matrice projection • Détails techniques • Affichage • Déplacements • Fonctions initMaison, afficherLigne, calculModel • Options
L’objet • Modélisation maison • Utilisation SDL • Création de points pour la maison
Points choisis par nos soins • Modèle en 4 dimensions • Initialisation des différentes matrices ensuite • Placement caméra • Stockage des points dans différents tableaux • Utilisation fonction initMAison • Transfert des points pour matrices
Les matrices • Matrice modèle • Rotation • Homothétie • Cisaillement • Matrice view • Matrice projection
Application des transformations • On applique aux points: • -La matrice model • -La matrice view • -La matrice projection
Matrice Model • Modifié selon les transformation voulue • Transforme les coordonnées 3D en coordonnées 3D après transformation • Utilises les matrices du rapport
MatriceView • Permet un « changement de repère » • La camera est devenue l’origine
Matrice Projection • Réalise une projection orthogonale • Transforme les coordonnées 3D en 2D • Respecte l’impression de perpendicularité • Projette les axes sur un plan (l’écran)
Détails techniques • Affichage • Déplacements • Fonctions • IinitMaison • AfficherLignes • CalculModel • DivisionW • Conversion • Option
Affichage • Arrière-plan lisible • Affichage des points Maison • Utilisation d’un angle de vue défini au début • Utilisation SDL et de pixels • Blittage au gré des transformations • Affichage des lignes joignant points grâce à un calcul
Déplacements • Touche entraînant modification • Seule matrice modèle bouge en fonction de la transformation* • Blittage des nouvelles positions • Envoi de différentes valeurs dans les fonctions suivant transformation
Fonctions • Utilisation de diverses fonction • Rôles différents • Importance capitale de certaines que nous allons étudier
InitMaison • Fonction principale du programme • Fait appel à toutes les autres fonctions
Calcul des différentes matrices • Initialisation des tableaux stockant les points • Avec chaque tableau étant résultat d’une transformation
AfficherLignes • Fonctions permettant affichage lignes • Apparence d’une maison • Obtenue à l’aide d’un calcul • Utilisation des différents tableaux points? pour transformations • Après réalisation calcul Blittage
CalculModel • Fonction la plus importante • Permet d’effectuer toutes les transformations • Reçoit les tableaux points et des angles en paramètres • Exerce transformation adéquate • En fonction de l’indice (de 0 à 8)
Indice issu du déplacement en SDL qui est envoyé en paramètre à la fonction avec variable valeur • Utilisation case N° indice pour effectuer la transformation demandée • En fonction de la transformation initialisation tableau points1
Pour les rotations: • Variation d’angles • Pour autres: • Application des transformations avec les valeurs nécessaires
DivisionW • Division par la 4e dimension • Ramène à une modélisation 3D
convertDegréRAd • Compilateur ne gère pas les degrés • Conversion de rad en degré • Facilite les transformations et les calculs
Options • Menu des touches • Réinitialisation du tout • Fonction redonnant placement initial