This shows you the differences between two versions of the page.
ppbg:laboratoare:03 [2024/10/24 11:18] andrei.lambru |
ppbg:laboratoare:03 [2024/10/24 12:36] (current) andrei.lambru |
||
---|---|---|---|
Line 115: | Line 115: | ||
===== Compunerea transformărilor ===== | ===== Compunerea transformărilor ===== | ||
- | Transformarile de bază, prezentate mai sus, nu sunt suficient de flexibile pentru a obține orice tip de animații prin utilizarea individuală a unui anume tip. Un exemplu este rotația față de //propriul centru// al unui pătrat de latură 1 ce a fost definit cu colțul stânga-jos în originea axelor de coordonate. O aplicare directă a transformării de rotație rezultă în rotația pătratului față de colțul stânga-jos. Din acest motiv, este necesar sa obținem rezultatul dorit prin compunerea mai multor transformări. Lanțul de transformări este vizibil în imaginea de mai jos. | + | Transformarile de bază, prezentate mai sus, nu sunt suficient de flexibile pentru a obține orice tip de animații prin utilizarea individuală a unui anume tip. Un exemplu este rotația față de //propriul centru// al unui pătrat de latură 1 ce a fost definit cu colțul stânga-jos în originea axelor de coordonate. O aplicare directă a transformării de rotație rezultă în rotația pătratului față de colțul stânga-jos. Din acest motiv, este necesar să obținem rezultatul dorit prin compunerea mai multor transformări. Lanțul de transformări este vizibil în imaginea de mai jos. |
{{ :ppbg:laboratoare:rotation3.png?600 |}} | {{ :ppbg:laboratoare:rotation3.png?600 |}} | ||
Transformarea compusă este creată după cum urmează: | Transformarea compusă este creată după cum urmează: | ||
- | - Primul pas este translația pătratului, astfel încat centrul lui să se afle în originea axelor de coordonate | + | - Primul pas este translația pătratului, astfel încat centrul lui să se afle în originea axelor de coordonate; |
- | - În acest moment, putem roti vârfurile pătratului față de centrul lui | + | - În acest moment, putem roti vârfurile pătratului față de centrul lui; |
- | - După rotație, pătratul rămâne cu centrul în originea axelor de coordonate, astfel că aplicăm transformarea inversă de la punctul 1 pentru a readuce pătratul cu centrul în poziția lui originală | + | - După rotație, pătratul rămâne cu centrul în originea axelor de coordonate, astfel că aplicăm transformarea inversă de la punctul 1 pentru a readuce pătratul cu centrul în poziția lui originală. |
+ | . | ||
<note tip> | <note tip> | ||
Același proces se poate aplica și pentru transformarea de modificare a scării, pentru a face modificarea de scară din centrul pătratului :) . | Același proces se poate aplica și pentru transformarea de modificare a scării, pentru a face modificarea de scară din centrul pătratului :) . | ||
Line 137: | Line 137: | ||
$$ | $$ | ||
- | Pentru a simplifica și optimiza procesul de calcul, se folosește forma matriceală a transformărilor. Pentru acest lucru, vectoriul pentru care se aplică transformarea se scrie, de asemenea, în formă matriceală. În această situație, avem 2 posibilități: | + | Pentru a simplifica și optimiza procesul de calcul, se folosește forma matriceală a transformărilor. Pentru acest lucru, vectorul pentru care se aplică transformarea se scrie, de asemenea, în formă matriceală. În această situație, avem 2 posibilități: |
* Vectorul se scrie sub forma unei matrici cu **o linie și mai multe coloane**, denumit //vector linie//. | * Vectorul se scrie sub forma unei matrici cu **o linie și mai multe coloane**, denumit //vector linie//. | ||
* Vectorul se scrie sub forma unei matrici cu **mai multe linii și o singură coloană**, denumit //vector coloană//. | * Vectorul se scrie sub forma unei matrici cu **mai multe linii și o singură coloană**, denumit //vector coloană//. |