grafica pe calculator 2011 - 2012 curs 4

Download Grafica Pe Calculator 2011 - 2012 Curs 4

Post on 06-Mar-2016

22 views

Category:

Documents

2 download

Embed Size (px)

TRANSCRIPT

  • GRAFICA 3D

    Valentin Stoica

    UPB 2011-2012

  • Transformari primitive in coordonate omogene

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Compunerea mai multor tranformri elementare pentru obinerea unei transformri complexe se obine prin executarea succesiv a produsului fiecrei matrice de transformare cu matricea de reprezentare a punctului iniial sau rezultat dintr-o transformare precedent

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Obiectul iniial: un cub cu latura de dou uniti, amplasat cu centrul su n centrul sistemului de referin i laturile orientate n direciile axelor de coordonate + Scalare cu factorii de scar 2, 2, 2 + Rotaie cu un unghi de 30 grade n raport cu axa z + Translaie cu un vector de translaie cu componente 8,0,0 => un nou obiect cub, definit n acelai sistem de referin, dar cu alte dimensiuni i localizare

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Transformarea efectuat asupra cubului din figura de mai sus se obine prin aplicarea succesiv a trei transformri geometrice elementare (scalare, rotaie i translaie) asupra fiecrui punct (vrf) al cubului Pentru un vrf al cubului, reprezentat prin matricea coloan P, succesiunea de transformri este: Scalarea: P1 = S P Rotaia n raport cu axa z: P2 = RZ P1= RZ(S P)Translaia: P = T P2 = T(RZ(S P)) = (TRZS) P => P = TRZS P = M P

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    M = TRZS P

    P(1,1,1,1) P(8.732, 3.732,1,1)

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Ordinea de compunere a matricelor de transformare este definitorie pentru rezultatul transformrii (produsul matricelor nu este comutativ)Convenia de reprezentare a punctelor n spaiu prin matrice coloan impune ordinea de nmulire numit postmultiplicare (sau multiplicare la dreapta) a matricelor de transformare:se nmulete matricea de transformare curent cu matricea transformrii urmtoare

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Convenia de reprezentare a punctelor n spaiu prin matrice coloan impune ordinea de nmulire numit postmultiplicare (sau multiplicare la dreapta) a matricelor de transformare:se nmulete matricea de transformare curent cu matricea transformrii urmtoare Ordinea de aplicare a transformrilor este de la dreapta la stnga din succesiunea de matrice ale unei compuneri:dac un punct se transform prin aplicarea succesiv a transformrilor definite prin matricele M1, M2,., Mn, matricea compus de transformare este M = Mn . M2 M1

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Convenia de reprezentare a punctelor n spaiu prin matrice linie impune ordinea de nmulire numit premultiplicare (sau multiplicare la stnga) a matricelor de transformare:se nmulete matricea de transformare urmtoare cu matricea transformrii curenteOrdinea de aplicare a transformrilor este de la stnga la dreapta din succesiunea de matrice ale unei compuneri:dac un punct se transform prin aplicarea succesiv a transformrilor definite prin matricele S1, S2,.Sn, matricea compus de transformare este S = S1 S2 . Sn

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Orice matrice de transformare elementar n convenia de reprezentare prin matrice linie a unui punct n spaiul tridimensional este transpusa matricei corespunztoare de transformare definite n convenia de reprezentare prin matrice coloan a punctului

    UPB 2011-2012

  • Exemple de compunere a transformarilor geometrice

    Rotaie complet specificat prin trei rotaii fa de axele sistemului de coordonate

    Transformarea complex a unui obiect prin combinarea mai multor transformri elementare (scalri, rotaii, translaii) Componenta de translaie total Componenta de rotaie i scalare total

    UPB 2011-2012

  • Compunerea transformarilor geometrice

    Proprieti importante ale transformrilor geometrice compuse:o transformare geometric compus reprezentat printr-o matrice de forma M conserv valoarea coordonatei w a unui puncto transformare geometric compus reprezentat printr-o matrice de forma M este o transformare liniar:liniile drepte i suprafeele plane sunt transformate n linii dreapte, respectiv suprafee planepentru transformarea unui obiect tridimensional este suficient s se transforme toate vrfurile acestuia i s se pstreze relaiile topologice ntre vrfurile transformate

    UPB 2011-2012

  • Transformari inverse

    Fiind dat o transformare a unui punct P ntr-un punct P definit printr-o matrice de transformare M, transformarea invers, de la punctul P la punctul P se obine prin nmulirea cu matricea invers, M 1:

    UPB 2011-2012

  • Transformari inverseMatricea de transformare M se obine printr-un produs de matrice de transformri elementareMatricea invers M1 se calculeaz prin produsul n ordine invers a inverselor matricelor elementare componente

    UPB 2011-2012

  • Transformari inverse

    UPB 2011-2012

  • Transformarea sistemelor de referintaTransformrile geometrice prezentate pot fi interpretate ca:transformri ale coordonatelor unei mulimi de puncte (vrfuri) ale obiectelor ntr-un anumit sistem de referin transformare de schimbare a sistemului de referin

    UPB 2011-2012

  • Transformarea sistemelor de referintaSe consider sistemul de referin Oxyz i un nou sistem de referin Oxyz, a crui origine O este determinat n sistemul Oxyz prin coordonatele x0,y0,z0 ale centrului O. Matricea de transformare care descrie poziionarea sistemului Oxyz relativ la sistemul de referin Oxyz este:

    UPB 2011-2012

  • Transformarea sistemelor de referintaFie un punct P definit prin coordonatele sale x,y,z n sistemul de referin Oxyz. Se demonstreaz c n sistemul de referin Oxyz acest punct (notat P) are coordonatele x,y,z, care se obin prin nmulirea matricei (care este inversa matricei M care definete poziionarea sistemului Oxyz n sistemul Oxyz) cu matricea P de reprezentare a punctului P n sistemul de coordonate iniial:

    Transformarea invers, a unui punct P(x,y,z) din sistemul de referin Oxyz n punctul P(x,y,z) din sistemul de referin Oxyz se obine prin nmulire cu matricea de transformare M:

    UPB 2011-2012

  • Transformarea sistemelor de referinta

    Exemplu: se consider un sistem de referin Oxyz i un alt sistem de referin Oxyz care are originea O(x0,y0,z0) i aceeai orientare a axelor de coordonate ca i sistemul Oxyz. Poziionarea sistemului de referin Oxyz relativ la sistemul Oxyz este definit de matricea de transformare M; poziionarea sistemului Oxyz relativ la sistemul Oxyz este definit de matricea de transformare invers M1:

    UPB 2011-2012

  • Transformarea sistemelor de referinta

    Un punct oarecare P(x,y,z) n sistemul de referin Oxyz, se transform n punctul P(x,y,z) n sistemul de referin Oxyz printr-o translaie cu (x0, y0, z0) deci:

    O(4,2,0) P(6,3,0) P(2,1,0)

    UPB 2011-2012

  • Transformarea sistemelor de referinta

    n concluzie, aplicarea unei transformri definite printr-o matrice M, asupra unei mulimi de puncte definite ntr-un sistem de referin Oxyz poate fi interpretat n mai multe moduri:Fiecare punct este modificat i capt o nou poziionare n sistemul de referin Oxyz, conform cu matricea de transformare M.Fiecare punct este transformat din sistemul de referin iniial Oxyz ntr-un nou sistem de referin, Oxyz, a crui poziie i orientare relativ la sistemul de referin Oxyz este descris de matricea M1. Fiecare punct este transformat din sistemul de referin iniial Oxyz ntr-un nou sistem de referin, Oxyz. Poziia i orientarea sistemului Oxyz relativ la sistemul de referin Oxyz este descris de matricea M.

    UPB 2011-2012

  • Rotatia fat de o ax paralel cu una din axele sistemului de referint

    Se consider o dreapt D paralel cu axa z a sistemului, care intersecteaz planul Oxy n punctul I(tx,ty,0)

    UPB 2011-2012

  • Rotatia fat de o ax paralel cu una din axele sistemului de referintTransformarea de rotaie a obiectelor fa de axa D nu poate fi realizat folosind matricea prezentata anterior (rotaia fa de o ax a sistemului de coordonate)se aplic mai nti tuturor punctelor o transformare ajuttoare, translaia cu T(tx,ty,0). Acest transformare poate fi intrepretat n dou moduri:ca o schimbare a sistemului de referin Oxyz n sistemul Oxyz , n care punctul I este transformat n punctul I(0,0,0), ca o modificare a poziiei tuturor punctelor din spaiu prin care punctul I este adus n originea sistemului de referin Oxyz

    UPB 2011-2012

  • Rotatia fat de o ax paralel cu una din axele sistemului de referintOperaiile se continu n noul sistem de referin Oxyz, n care dreapta D se suprapune peste axa z, deci se poate obine rotaia dorit cu un unghi folosind matricea de rotaie. Dup aceasta, se revine la sistemul de referin iniial Oxyz, printr-o transformare invers, T(tx, ty, 0). Rezult matricea compus de rotaie cu unghiul fa de o dreapt paralel cu axa z care interecteaz planul Oxy n punctul I(tx,ty,0):

    UPB 2011-2012

  • Rotatia fat de o ax paralel cu una din axele sistemului de referint Rotaia fa de o dreapt paralel ca axa z a sistemului de referin considernd transformarea sistemelor de referin

    UPB 2011-2012

  • Rotatia fat de o ax paralel cu una din axele sistemului de referintSe prezint aceleai transformri succesive necesare pentru realizarea rotaiei n raport cu o dreapt paralel cu axa z a sistemului, considernd c transformarea iniial T(tx,ty,0) transform toate punctele din sistemul de referin Oxyz astfel nct punctul I se suprapune peste originea O. Se remarc faptul c, n aceast situaie, este doar o diferen de interpretare, operaiile i rezultatul acestora fiind identic. Rotaia fa de o dreapt paralel ca axa z a sistemului de r