Sunteți pe pagina 1din 31

Grafica 3D UPB 2011-2012 1

GRAFICA 3D



Valentin Stoica

Grafica 3D UPB 2011-2012 2
Metode de simplificare a datelor
Numr mare de poligoane => volum mare de
date => cerine ridicate de stocare i
procesare
Metode de aproximare = simplificarea
(rafinarea) datelor
Grafica 3D UPB 2011-2012 3
Metode de simplificare a datelor
Tehnica de simplificare direct prin
reducerea uniform a numrului de poligoane
de reprezentare a obiectului
nu se poate controla
precizia de reprezentare
=> inacceptabil
Grafica 3D UPB 2011-2012 4
Grafica 3D UPB 2011-2012 5
Metode de simplificare a datelor
Modelarea adaptiv
pstreaza o precizie de
reprezentare constant
dimensiunea feelor
poligonale variaz n funcie
de curbura suprafeei
n prile cu curbur
pronunat sunt introduse
mai multe poligoane pe
unitatea de suprafa
Grafica 3D UPB 2011-2012 6
Metode de simplificare a datelor
Modelarea cu nivele de detaliu multiple
(levels of detail- LOD)
se selecteaz nivelul de detaliu corespunztor, n
funcie de poziia obiectului fa de punctul de
observare


Grafica 3D UPB 2011-2012 7
(a)
(b)
Modelul avionului F-16 pe dou nivele de detaliu diferite:
(a) 2413 poligoane; (b) 286 poligoane.
Grafica 3D UPB 2011-2012 8
Generarea modelului poligonal
Generarea modelului din descrierea
matematic a obiectului
Generarea modelului obiectului prin baleiere
spaial
Generarea modelului pe baza unei mulimi de
puncte aparinnd suprafeei de frontier
Grafica 3D UPB 2011-2012 9
Generarea modelului din descrierea
matematic
Se genereaz reeaua de poligoane de
aproximare a obiectelor care au o descriere
matematic cunoscut
Elipsoid

Hiperboloid

Paraboloid eliptic
0 1 c z b y a x
2 2 2 2 2 2
= + +
0 1 c z b y a x
si 0 1 c z b y a x
2 2 2 2 2 2
2 2 2 2 2 2
= + +
= +
z b y a x
2 2 2 2
= +
Grafica 3D UPB 2011-2012 10
Generarea modelului din descrierea
matematic
Grafica 3D UPB 2011-2012 11
Generarea modelului obiectului prin
baleiere spatial
Prin deplasarea (sweeping) unei suprafee
generatoare de-a lungul unei curbe oarecare
Grafica 3D UPB 2011-2012 12
Generarea modelului pe baza unei multimi de
puncte apartinnd suprafetei de frontier

Modelare a obiectelor tridimensionale pe
baza unei mulimi de puncte distribuite
uniform sau neuniform pe suprafaa
obiectelor
colecie de puncte
Proiectare (CAD)
Scanare, hari digitale
construirea reelei de poligoane care s
aproximeze obiectul cu precizia dorit
triangularizare
Grafica 3D UPB 2011-2012 13
Triangularizarea
Suprafata este
aproximata printr-o
colectie de
triunghiuri adiacente
Triangularizarea punctelor obinute pe
baza unei grile uniforme
Triangularizarea cu diferite grade de aproximare
Grafica 3D UPB 2011-2012 14
Transformari geometrice in spatiul
tridimensional

Transformari geometrice primitive:
translaia - modific localizarea obiectului
rotaia - modific orientarea
scalarea - modific dimensiunea obiectului
Grafica 3D UPB 2011-2012 15
Translatia


Transformarea prin care toate punctele se
deplaseaz n aceeai direcie i cu aceeai
distan ntre punct i transformatul su

Descris printr-un vector de translaie T,
avnd componentele tx, ty, tz pe cele trei axe
de coordonate

Grafica 3D UPB 2011-2012 16
Translatia
P(x,y,z) P(x,y,z), unde


Notatia matriceala:

, unde ; deci:

+ =
+ =
+ =
z
y
x
t z ' z
t y ' y
t x ' x
T + P = P'
(
(
(

=
z
y
x
t
t
t
T
(
(
(

+
(
(
(

=
(
(
(

z
y
x
t
t
t
z
y
x
' z
' y
' x
Grafica 3D UPB 2011-2012 17
Scalarea


Transformarea prin care se modific
coordonatele tuturor punctelor unui obiect
folosind factorii de scal sx, sy, respectiv sz pe
cele trei axe de coordonate

P(x,y,z) P(x,y,z), unde

=
=
=
z
y
x
s z ' z
s y ' y
s x ' x
Grafica 3D UPB 2011-2012 18
Scalarea
Notatia matriceala:




deci

(
(
(

=
z
y
x
s 0 0
0 s 0
0 0 s
S
, P S P' =
(
(
(

(
(
(

=
(
(
(

z
y
x
s 0 0
0 s 0
0 0 s
' z
' y
' x
z
y
x
Grafica 3D UPB 2011-2012 19
Rotatia



Rotaia cu un unghi u n raport cu o ax D este o transformare
prin care orice punct P care nu este situat pe dreapta D se
transform ntr-un punct P astfel nct P i P sunt situate ntr-un
plan perpendicular t pe dreapta D, unghiul PIPeste egal cu u, iar
modulele |IP| i |IP| sunt egale (punctul I este intersecia dintre
dreapta D i planul t).

Toate punctele dreptei D sunt fixe i numai ele sunt puncte
invariante ale transformrii. Transformarea de rotaie n raport cu
o ax oarecare se descompune ntr-o succesiune de maximum
trei transformri de rotaie n raport cu axele de coordonate ale
sistemului de referin.
Grafica 3D UPB 2011-2012 20
Rotatia
Rotaia n raport cu axa z cu un unghi u transform
un punct P(x,y,z) n punctul P(x,y,z), ambele aflate
n planul t perpendicular pe axa z


u
P
u
t
P
I


y
x
O
z
P
P u sin y
u cos x
=
=
) u sin( ' y
) u cos( ' x
u + =
u + =
u + u = u + u =
u u = u u =
cos y sin x ) u cos sin cos u (sin ' y
sin y cos x ) sin u sin cos u (cos ' x
Grafica 3D UPB 2011-2012 21
Rotatia
Notatia matriceala:




, deci
(
(
(

u u
u u
= u
1 0 0
0 cos sin
0 sin cos
) (
Z
R
P R P
Z
'
=
(
(
(

(
(
(

u u
u u
=
(
(
(

z
y
x
1 0 0
0 cos sin
0 sin cos
' z
' y
' x
Grafica 3D UPB 2011-2012 22
Transformari geometrice in spatiul
tridimensional
Translaia




Scalarea




Rotaia

(
(
(

+
(
(
(

=
(
(
(

z
y
x
t
t
t
z
y
x
' z
' y
' x
(
(
(

(
(
(

u u
u u
=
(
(
(

z
y
x
1 0 0
0 cos sin
0 sin cos
' z
' y
' x
(
(
(

(
(
(

=
(
(
(

z
y
x
s 0 0
0 s 0
0 0 s
' z
' y
' x
z
y
x
Grafica 3D UPB 2011-2012 23
Sisteme de coordonate omogene
Introdus pentru reprezentarea unitar i
combinarea transformrilor geometrice
spaiale
Un sistem de coordonate cu patru dimensiuni

P(x,y,z) P(X,Y,Z,w), unde pentru w = 0

=
=
=
zw Z
yw Y
xw X
Grafica 3D UPB 2011-2012 24
Sisteme de coordonate omogene
P(X,Y,Z,w) P(x,y,z) unde

=
=
=
w / Z z
w / Y y
w / X x
Grafica 3D UPB 2011-2012 25
Sisteme de coordonate omogene
n coordonate omogene, dou puncte
i sunt egale dac:


n sistemele de coordonate omogene, toate
matricele de transformri sunt de dimensiune
4 4 i toate operaiile de transformri
geometrice se pot exprima prin produse de
matrice.
2 2 1 1 2 2 1 1 2 2 1 1
w / Z w / Z si w / Y w / Y , w / X w / X = = =
) w , Z , Y , X ( P
1 1 1 1 1
) w , Y , Y , X ( P
2 2 2 2 2
Grafica 3D UPB 2011-2012 26
Translatia n coordonate omogene




; rezult


In coordonate carteziene
(
(
(
(

=
1 0 0 0
t 1 0 0
t 0 1 0
t 0 0 1
) t , t , t (
z
y
x
z y x
T
P T P' =
(
(
(
(

(
(
(
(

=
(
(
(
(

w
Z
Y
X
1 0 0 0
t 1 0 0
t 0 1 0
t 0 0 1
' w
' Z
' Y
' X
z
y
x

=
+ =
+ =
+ =
w ' w
wt Z ' Z
wt Y ' Y
wt X ' X
z
y
x

=
=
=
' w / ' Z ' z
' w / ' Y ' y
' w / ' X ' x
Grafica 3D UPB 2011-2012 27
Scalarea fat de origine n coordonate omogene




; rezulta


In coordonate carteziene

(
(
(
(

=
1 0 0 0
0 s 0 0
0 0 s 0
0 0 0 s
) s , s , s (
z
y
x
z y x
S
SP P'=
(
(
(
(

(
(
(
(

=
(
(
(
(

w
Z
Y
X
1 0 0 0
0 s 0 0
0 0 s 0
0 0 0 s
' w
' Z
' Y
' X
z
y
x

=
=
=
=
w ' w
Z s ' Z
Y s ' Y
X s ' X
z
y
x

=
=
=
' w / ' Z ' z
' w / ' Y ' y
' w / ' X ' x
Grafica 3D UPB 2011-2012 28
Transformrile de rotatie n coordonate omogene
Rotaia n raport cu axa x cu un unghi u




; rezulta
(
(
(
(

u u
u u
= u
1 0 0 0
0 cos sin 0
0 sin cos 0
0 0 0 1
) (
X
R
P R P'
X
=
(
(
(
(

(
(
(
(

u u
u u
=
(
(
(
(

w
Z
Y
X
1 0 0 0
0 cos sin 0
0 sin cos 0
0 0 0 1
' w
' Z
' Y
' X

=
u + u =
u u =
=
w ' w
cos Z sin Y ' Z
sin Z cos Y ' Y
X ' X
Grafica 3D UPB 2011-2012 29
Transformrile de rotatie n coordonate omogene
Rotaia n raport cu axa y cu un unghi _




; rezulta
(
(
(
(

_ _
_ _
= _
1 0 0 0
0 cos 0 sin
0 0 1 0
0 sin 0 cos
) (
Y
R
P R P'
Y
=
(
(
(
(

(
(
(
(

_ _
_ _
=
(
(
(
(

w
Z
Y
X
1 0 0 0
0 cos 0 sin
0 0 1 0
0 sin 0 cos
' w
' Z
' Y
' X

=
_ + _ =
=
_ + _ =
w ' w
cos Z sin X ' Z
Y ' Y
sin Z cos X ' X
Grafica 3D UPB 2011-2012 30
Transformrile de rotatie n coordonate omogene
Rotaia n raport cu axa z cu un unghi




; rezulta
(
(
(
(



=
1 0 0 0
0 1 0 0
0 0 cos sin
0 0 sin cos
) (
Z
R
P R P'
Z
=
(
(
(
(

(
(
(
(



=
(
(
(
(

w
Z
Y
X
1 0 0 0
0 1 0 0
0 0
0 0
w
Z
Y
X
cos sin
sin cos
'
'
'
'

=
=
+ =
=
w ' w
Z ' Z
cos Y sin X ' Y
sin Y - cos X ' X
Grafica 3D UPB 2011-2012 31
Transformari primitive in coordonate omogene
Transformrile geometrice elementare sunt
transformri liniare, prin care liniile drepte i
suprafeele plane sunt transformate n linii
dreapte, respectiv suprafee plane
pentru transformarea unui obiect tridimensional
este suficient s se transforme toate vrfurile
acestuia i s se pstreze relaiile topologice ntre
vrfurile transformate, aceleai cu cele ntre
vrfurile iniiale
Transformrile mai complexe ale obiectelor n
spaiu se pot defini prin compunerea mai
multor transformri primitive

S-ar putea să vă placă și