Reprezentarea miezului ca un “triangle fan” (triunghiuri asezate ca feliile de pizza).
Probleme si solutii:
1. Textura
2. Cursivitatea texturii
3. Legatura intre clase (corp fruct si miez)
4. Ajustarea taieturilor
Textura Probleme
Nu se potrivea textura pentru miez.
Nu am gasit textura pentru coaja.
Textura [1] Solutii
Pentru miez, doar am ajustat dimensiunile
imaginii texturate.
Pentru coaja, am decupat din doua imagini
bucati de coaja. Aceste decupaje le-am suprapus cu un anumit grad de transparenta (40%).
Am scalat imaginea obtinuta si am facut un pattern pentru o imagine mai mare. ( I )
Textura [2] Solutii
Am repetat pasul anterior de 2 ori. ( II & III )
Am editat in Gimp imaginea, am adaugat nuante de culoare (verde / maro). ( IV )
Am aplicat textura pe model pentru a obtine rezultatul final ( un kiwi ). ( V )
2. Cursivitatea texturii Problema
Textura nu era cursiva.
Se puteau vedea liniile de taiere dintre
diferitele bucati ale fructului.
2. Cursivitatea texturii Solutia
O varianta a fost desenarea celei de-a doua jumatati a fructului in sens invers.
Am folosit functia glScalef(1,1,-1) pentru a
rasturna apoi cea de-a doua jumatate.
Astfel linia de taietura a devenit invizibila.
3. Legatura intre clase Problema
Fructul este creat dintr-un obiect de tipul
HalfKiwiSkin si mai multe obiecte de tipul
Miez
Aceste obiecte trebuiesc mentinute in legatura permanenta, astfel incat orice modificare a corpului kiwiului sa lanseze modificarile corespunzatoare ale miezului.
3. Legatura intre clase Solutia
Clasa HalfKiwiSkin are o colectie de obiecte de tipul Miez, pe care le initializeaza in constructor.
Astfel, in desenarea obiectului putem apela functiile de transformare proprii ale clasei Miez.
Desenarea obiectelor Miez se face insa in main, dupa desenarea corpului fructului.
Cum se poate dezvolta proiectul ?
Fiecare felie sau bucata din kiwi poate sa
fie construita ca un obiect independent fata de celelalte.
Putem sectiona kiwi-ul si longitudinal (chiar in acelasi timp cu o sectiune transversala ); pentru aceasta implementare insa este bine sa folosim alta imagine de textura.