grafica pe calculator 2011 - 2012 curs 2
TRANSCRIPT
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 1/22
Grafca 3D UPB 2011-20012 1
GRAFICA 3D
Valentin Stoica
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 2/22
Grafica 3D UPB 2011-20012 2
Sisteme de reerinta
tridimensionale coordonate cilindrice
P(ρ, φ, z)
coordonate sferice
P(r, θ, φ)
coordonate carteziene
P(x, , z)
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 3/22
Grafica 3D UPB 2011-20012 3
Sisteme de coordonate
carteziene
!iste" de referin#$ %ni&ersal este siste"%l de coordonate cartezian 'n care s%nt definitetoate oiectele scenei &irt%ale
!e definete *rin ori+inea i trei axe*er*endic%lare, x, i z, orientate d%*$ re+%la"inii dre*te sa% d%*$ re+%la "inii stn+i
y
x
z
O
x
z
y
O
(a) (b)
(a) Sistem de coordonate orientat dupăregula mâinii drepte (sistem de
coordonate drept )
(b) Sistem de coordonate orientat dupăregula mâinii stângi
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 4/22
Grafica 3D UPB 2011-20012 .
Sisteme de coordonate
carteziene
Un *%nct P 'n s*a#i%l tridi"ensional se re*rezint$ 'nsiste"%l de referin#$ cartezian *rintr-%n tri*et de &aloriscalare x, y, z, ce re*rezint$ co"*onentele &ector%l%i de*ozi#ie OP *e cele trei axe de coordonate
/n nota#ia "atriceal$ %n *%nct 'n s*a#i%l tridi"ensional se
*oate re*rezenta *rintr-o "atrice linie sa% coloan$
sa%
on&en#ia de re*rezentare "ate"atic$ folosita deilioteca +rafic$ OpenGL este cea de "atrice coloan$*entr% %n *%nct 'n s*a#i%l tridi"ensional
[ ] z y x=P
=
z
y
x
P
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 5/22
Grafica 3D UPB 2011-20012
Modele de culoare Modelul RGB
c%loarea este re*rezentat$ *rintr-%n tri*let de c%lori*ri"are, ro% (red ) &erde (green), alastr% (blue)
s*a#i%l de re*rezentare a t%t%rorc%lorilor 'n "odel%l 4GB este %nc% 'ntr-%n siste" de coordonatec% axele notate 4o% (Red ), 5erde(Green), 6lastr% (Blue) C(r,g,b) 7 r R 8 +G 8 B
Modelul RGB A cea de-a *atra co"*onent$ (α) indic$ trans*aren#as%*rafe#ei
α 7 1s%*rafa#$ o*ac$ α 7 0 s%*rafa#$ co"*let trans*arent$
Albastru
Alb
Magenta
Rosu
Verde
Cian Galben
Negru
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 6/22
Grafica 3D UPB 2011-20012 9
Modelul RGB
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 7/22
Grafica 3D UPB 2011-20012 :
Modele de culoare
Modelul HSV transfor"are neliniar$ a s*a#i%l%i 4GB, *rin care c%loriles%nt s*ecificate *rin co"*onentele n%an#$ (hue), sat%ra#ie(saturation) i &aloare (value)
!*a#i%l c%lorilor 'n "odel%l ;!5este o *ira"id$ <exa+onal$ 'ntr-%n
siste" de coordonate *olare ;5!
V
SH
Cian
Verde
Roşu
Galben
Alb
Negru
Albastru Magenta
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 8/22
Grafica 3D UPB 2011-20012 =
Modelarea obiectelor Pro*riet$#ile oiectelor tridi"ensionale ce se
"odeleaz$ 'n a*lica#iile +rafice se *ot '"*$r#i 'ndo%$ cate+orii forma
solide deformabile
aspect >odelarea solidelor
o te<nic$ de *roiectare, &iz%alizare i analiz$ a "od%l%i 'ncare oiectele reale se re*rezint$ 'n calc%lator
"odelare *rin s%*rafa#$ de frontier$ ("odelarea *oli+onal$, "odelarea *rinre#ele de *etice *ara"etrice)
&ol%" ("odelarea *rin co"*%nerea oiectelor, "odelarea*rin di&izare s*a#ial$)
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 9/22
Grafica 3D UPB 2011-20012 ?
Metodele de modelare si reprezentarea oiectelor
Modelarea poligonală oiectele s%nta*roxi"ate *rintr-o re#ea de fe#e care s%nt*oli+oane *lanare
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 10/22
Grafica 3D UPB 2011-20012 10
Metodele de modelare si reprezentarea oiectelor
Modelarea prin reţele de petice parametricebicubice (bicubic parametric patches) oiecteles%nt a*roxi"ate *rin re#ele de ele"ente s*a#ialen%"ite *etice (*atc<es) 6cestea s%nt re*rezentate*rin *olinoa"e c% do%$ &ariaile *ara"etrice, 'n
"od oin%it c%ice P%nctede control
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 11/22
Grafica 3D UPB 2011-20012 11
Metodele de modelare si reprezentarea oiectelor
Modelarea prin compunerea obiectelor (Constructive Solid Geometry - CSG)oiectele s%nt re*rezentate *rin colec#ii deoiecte ele"entare (cilindri, sfere, *oliedre,
etc) !fera
8
%
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 12/22
Grafica 3D UPB 2011-20012 12
Metodele de modelare si reprezentarea oiectelor
Modelarea prin divizare spaţială oiecteles%nt 'ncor*orate 'n s*a#i%, *rin atri%irea %neietic<ete fiec$r%i ele"ent s*a#ial, 'n f%nc#ie deoiect%l care oc%*$ ele"ent%l res*ecti&
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 13/22
Grafica 3D UPB 2011-20012 13
Modelarea poligonala aobiectelor
@or"a Aclasic$ de "odelare a oiectelor folosit$ 'n+rafica *e calc%lator %%rin#a 'n "odelare *osiilitatea de redare ra*id$ a i"a+inii oiectelor
4e*rezentarea *oli+onal$ %n oiect tridi"ensional este co"*%s dintr-o colec#ie de
fe#e, fiecare fa#$ fiind o s%*rafa#$ *lan$ re*rezentat$ *rintr-%n *oli+on
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 14/22
Grafica 3D UPB 2011-20012 1.
Reprezentareapoligoanelor
Poli+on o re+i%ne din *lan "$r+init$ de o colec#ie finit$ dese+"ente de drea*t$ care for"eaz$ %n circ%it 'nc<issi"*l%
@ie n *%ncte 'n *lan (v 0 , v 1, …,v n–1) i n se+"ente
de drea*t$ (e0
v 0
v 1
, e1
v 1
v !
, …" en–1
v n–1
v 0
) careconecteaz$ *erec<i de *%ncte s%ccesi&e 'n ordineciclic$, deci incl%si& conexi%nea 'ntre %lti"%l *%nct i*ri"%l *%nct din list$ 6ceste se+"ente "$r+inesc%n *oli+on, dac$ i n%"ai dac$
intersec#ia fiec$rei *erec<i de se+"ente adiacente 'nordinea ciclic$ este %n sin+%r *%nct, con#in%t de a"elese+e"ente ei ∩ ei81 7 &i81, *entr% oricare i 7 0,C, n1
se+"ente neadiacente n% se intersecteaz$ e i ∩ e E 7 ∅,*entr% orice E ≠ i81
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 15/22
Grafica 3D UPB 2011-20012 1
Reprezentareapoligoanelor
&i - &rf%rile *oli+on%l%i (vertices) ei - "%c<ii (sa% lat%ri) ale *oli+on%l%i Un *oli+on
con#ine n &rf%ri i n "%c<ii "%c<iile s%nt orientate, astfel 'nct for"eaz$ %n cicl%
(circ%it 'nc<is) 7 orientare consistentă (dac$ se *arc%r+"%c<iile 'n sens%l lor de defini#ie, interior%l *oli+on%l%i este&$z%t 'ntotdea%na 'n *artea stn+$Fdrea*t$)
v
v!
v"
v# v$e$
e#
e"
e!
e
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 16/22
Grafica 3D UPB 2011-20012 19
Reprezentarea poliedrelor >odelarea i re*rezentarea *rin s%*rafa#a de frontier$ 7
oiectele s%nt a*roxi"ate *rin *oliedre i "odel%l lor estere*rezentat *rin s%*rafa#a *oliedr%l%i, co"*%s$ dintr-o colec#iede *oli+oane
!%*rafa#a de frontier$ a %n%i *oliedr% con#ine trei ti*%ri deele"ente +eo"etrice &rf%rile (*%nctele), care s%nt zero-
di"ensionale, "%c<iile (se+"entele), care s%nt %nidi"ensionalei fe#ele (*oli+oanele), care s%nt idi"ensionale%ete &oligonale
Mu'ii
Vr*uri
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 17/22
Grafica 3D UPB 2011-20012 1:
Implementarea modeluluipoligonal
Printr-o list$ de *oli+oane (&ector, list$ 'nl$n#%it$,etc) /ntrea+a infor"a#ie referitoare la for"a %n%i oiect
este co"*%s$ din liste de coordonate ale &rf%rilor,
la care se "ai ada%+$ i alte infor"a#ii +eo"etricenecesare 'n redare (de exe"*l%, nor"alele las%*rafe#e)
@or"a %n%i oiect "odelat *rin re#ea de *oli+oane
*oate fi re*rezentat$ ca %n &ector de fe#e, fiecarefa#$ fiind %n &ector de &rf%ri, fiecare &rf fiind %n&ector de trei coordonate 'n &ir+%l$ flotant$
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 18/22
Grafica 3D UPB 2011-20012 1=
Implementarea modeluluipoligonal xe"*l% cub
do%le %[email protected] 7 JJJ#1,#1,#1K, FF fata 0 J 1,-1,-1K, J 1,-1, 1K, J-1,-1, 1KK,JJ-1, 1, 1K, FF fata 1 J 1, 1, 1K, J 1, 1,-1K, J-1, 1,-1KK,JJ-1,-1, 1K, FF fata 2 J 1,-1, 1K, J 1, 1, 1K, J-1, 1, 1KK,JJ 1,-1,-1K, FF fata 3 J#1,#1,#1K,J-1, 1,-1K, J 1, 1,-1KK,
JJ 1,-1, 1K, FF fata . J 1,-1,-1K,J 1, 1,-1K, J 1, 1, 1KK,
JJ-1,-1, 1K, FF fata J-1, 1, 1K, J-1, 1,-1K, $#1,#1,#1KK
KL i"*le"entare ineficient$ deoarece
fiecare &rf este *rel%crat de trei ori,*entr% fiecare fa#$ adiacent$ acest%ia
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 19/22
Grafica 3D UPB 2011-20012 1?
Implementarea modeluluipoligonal xe"*l% "ai eficient cub
do%le %eoordsH=IH3I7J J-1,-1, 1K, J 1,-1, 1K, J 1,-1,-1K, J-1,-1,-1K, J-1, 1, 1K, J 1, 1, 1K, J 1, 1,-1K, J-1, 1,-1K
KLint %[email protected]
J3, 2, 1, 0K,J., , 9, :K,
J0, 1, , .K,J2, 3, :, 9K,J1, 2, 9, K,J0, ., :, 3K
KL
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 20/22
Grafica 3D UPB 2011-20012 20
Reprezentarea poliedrelor
re#ea de *oli+oane*oate s$ re*rezinte s%*rafa#a de frontier$
'nc<is$ a %n%i solid
s%*rafa#a desc<is$,necesar$ 'n an%"itesit%a#ii de "odelare, c%"este s%*rafa#a teren%l%isi"%lat 'ntr-o scen$&irt%al$
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 21/22
Grafica 3D UPB 2011-20012 21
Reprezentarea poliedrelor
Ni*%ri de re*rezentare
re*rezentare ca s%*rafa#$(*oli+oane A*line)
re*rezentare *rin cont%r
Acadr% de sr"$(wireframe)
7/24/2019 Grafica Pe Calculator 2011 - 2012 Curs 2
http://slidepdf.com/reader/full/grafica-pe-calculator-2011-2012-curs-2 22/22
Grafica 3D UPB 2011-20012 22
Reprezentarea poliedrelor
Precizia de re*rezentare a "odel%l%i diferen#a dintre s%*rafa#a oiect%l%i i fe#ele*oli+onale *rin care este a*roxi"at
n%"$r%l "are de *oli+oane 7 *recizia de
re*rezentare "ai %n$ 7 cerin#e de calc%l s*orite
19x19 *oli+oane 32x32 *oli+oane 9.x9. *oli+oane