Differences

This shows you the differences between two versions of the page.

Link to this comparison view

egc:laboratoare:03 [2020/10/25 19:04]
stefania.cristea1708
egc:laboratoare:03 [2021/10/12 11:07] (current)
chris.luntraru Filename and class name update
Line 111: Line 111:
  
 <​note>​ <​note>​
-În cadrul framework-ului de laborator, în fișierul ''​Transform2D.h''​ sunt definite funcțiile pentru calculul matricilor de translație,​ rotație și scalare. În momentul acesta toate funcțiile întorc matricea identitate. În cadrul laboratorului va trebui să modificați codul pentru a calcula matricile respective. ​+În cadrul framework-ului de laborator, în fișierul ''​transform2D.h''​ sunt definite funcțiile pentru calculul matricilor de translație,​ rotație și scalare. În momentul acesta toate funcțiile întorc matricea identitate. În cadrul laboratorului va trebui să modificați codul pentru a calcula matricile respective. ​
 </​note>​ </​note>​
  
Line 157: Line 157:
  
 <​note>​ <​note>​
-În cadrul laboratorului,​ în fișierul ''​Laborator3.cpp'',​ există o serie de obiecte (pătrate) pentru care, în funcția ''​Update()'',​ înainte de desenare, se definesc matricile de transformări. Comanda de desenare se dă prin funcția ''​RenderMesh2D()''​.+În cadrul laboratorului,​ în fișierul ''​lab3.cpp'',​ există o serie de obiecte (pătrate) pentru care, în funcția ''​Update()'',​ înainte de desenare, se definesc matricile de transformări. Comanda de desenare se dă prin funcția ''​RenderMesh2D()''​.
  
 <code cpp> <code cpp>
Line 264: Line 264:
  
 <​note>​ <​note>​
-Transformarea de vizualizare este deja implementată în clasa ''​Laborator3_Vis2D'':​+Transformarea de vizualizare este deja implementată în clasa ''​lab3_vis2D'':​
  
 <code cpp> <code cpp>
 //2D vizualization matrix //2D vizualization matrix
-glm::​mat3 ​Laborator3_Vis2D::​VisualizationTransf2D(const LogicSpace & logicSpace, const ViewportSpace & viewSpace)+glm::​mat3 ​Lab3_Vis2D::​VisualizationTransf2D(const LogicSpace & logicSpace, const ViewportSpace & viewSpace)
 { {
  float sx, sy, tx, ty;  float sx, sy, tx, ty;
Line 285: Line 285:
  
 <​note>​ <​note>​
-În cadrul laboratorului,​ în clasa ''​Laborator3_Vis2D'',​ este creat un pătrat, în spațiul logic (0,0) - (4,4). De reținut este faptul că acum nu mai trebuie să raportăm coordonatele pătratului la spațiul de vizualizare (cum se intamplă în exercițiile anterioare),​ ci la spațiul logic pe care l-am definit noi.+În cadrul laboratorului,​ în clasa ''​Lab3_Vis2D'',​ este creat un pătrat, în spațiul logic (0,0) - (4,4). De reținut este faptul că acum nu mai trebuie să raportăm coordonatele pătratului la spațiul de vizualizare (cum se intamplă în exercițiile anterioare),​ ci la spațiul logic pe care l-am definit noi.
  
 <code cpp> <code cpp>
Line 332: Line 332:
 <note tip> <note tip>
 În cadrul acestui laborator aveți de programat în două clase: ​ În cadrul acestui laborator aveți de programat în două clase: ​
-  * ''​Laborator3.cpp'',​ pentru familiarizarea cu transformările 2D de translație,​ rotație și scalare +  * ''​lab3.cpp'',​ pentru familiarizarea cu transformările 2D de translație,​ rotație și scalare 
-  * ''​Laborator3_Vis2D.cpp'',​ pentru familiarizarea cu transformarea fereastră-poartă +  * ''​lab3_vis2D.cpp'',​ pentru familiarizarea cu transformarea fereastră-poartă 
-Din clasa ''​Main''​ puteți să alegeți ce laborator rulați:+Din fisierul ​''​main.cpp''​ puteți să alegeți ce laborator rulați:
  
 <code cpp> <code cpp>
-World *world = new Laborator3();+World *world = new Lab3();
 </​code>​ </​code>​
  
Line 343: Line 343:
  
 <code cpp> <code cpp>
-World *world = new Laborator3_Vis2D();+World *world = new Lab3_Vis2D();
 </​code>​ </​code>​
 </​note>​ </​note>​
Line 356: Line 356:
  
   - Descarcăți [[https://​github.com/​UPB-Graphics/​Framework-EGC/​archive/​master.zip|framework-ul de laborator]]   - Descarcăți [[https://​github.com/​UPB-Graphics/​Framework-EGC/​archive/​master.zip|framework-ul de laborator]]
-  - Completați funcțiile de translație,​ rotație și scalare din ''/​Laborator3/​Transform2D.h''​+  - Completați funcțiile de translație,​ rotație și scalare din ''​lab3/transform2D.h''​
   - Să se modifice pașii de translație,​ rotație și scalare pentru cele trei pătrate ca să se creeze animații.   - Să se modifice pașii de translație,​ rotație și scalare pentru cele trei pătrate ca să se creeze animații.
-  - Cu tastele W, A, S, D să se translateze fereastra logică ''​Laborator3_Vis2D''​. Cu tastele Z și X să se facă zoom in și zoom out pe fereastra logică.+  - Cu tastele W, A, S, D să se translateze fereastra logică ''​lab3_vis2D''​. Cu tastele Z și X să se facă zoom in și zoom out pe fereastra logică.
 <​hidden>​ <​hidden>​
 Bonusuri posibile: Bonusuri posibile:
   * **[Bonus]** Diverse combinații de transformări (primul pătrat stă pe loc, al doilea se rotește în jurul lui și al treilea în jurul celui de-al doilea - cum sunt soarele, pământul și luna)   * **[Bonus]** Diverse combinații de transformări (primul pătrat stă pe loc, al doilea se rotește în jurul lui și al treilea în jurul celui de-al doilea - cum sunt soarele, pământul și luna)
 </​hidden> ​   ​ </​hidden> ​   ​
egc/laboratoare/03.1603645473.txt.gz · Last modified: 2020/10/25 19:04 by stefania.cristea1708
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0