Documente Academic
Documente Profesional
Documente Cultură
Facultatea de Inginerie
Catedra de Automatică şi Științe Aplicate
GRAFICĂ ASISTATĂ DE
CALCULATOR
Adrian Runceanu
CURS 6
Transformări grafice 3D
(tridimensionale)
31.03.2011 Grafica asistata de calculator 3
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 4
7. Transformări grafice 3D
7. Transformări grafice 3D
7. Transformări grafice 3D
1. Matrici de transformare
Matricea de transformare generalizată 4x4
pentru coordonate omogene 3D are următoarea
formă:
a b c p
d e f q
M
g h i r
l m n s
31.03.2011 Grafica asistata de calculator 7
7. Transformări grafice 3D
7. Transformări grafice 3D
unde:
• matricea 3x3 include transformări de
scalare locală, forfecare, oglindire şi
rotaţie
• matricea 1x3 reprezintă transformarea de
translaţie
• matricea 3x1 reprezintă transformarea de
proiectare perspectivă
• matricea 1x1 reprezintă transformarea de
scalare generală
31.03.2011 Grafica asistata de calculator 10
7. Transformări grafice 3D
[ x’ y’ z’ 1 ] [ x y z 1 ][ M ]
31.03.2011 Grafica asistata de calculator 11
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 12
7.1. Translaţia
1 0 0 0
0 1 0
0
[T ]
0 0 1 0
tx ty tz 1
31.03.2011 Grafica asistata de calculator 13
31.03.2011 Grafica asistata de calculator 14
7.1. Translaţia
O x
P(x, y, z)
z
31.03.2011 Grafica asistata de calculator 15
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 16
7.2. Scalarea
7.2. Scalarea
1 0 0 0
0
1 0 0
Sg
0 0 1 0
0 0 0 s
31.03.2011 Grafica asistata de calculator 19
31.03.2011 Grafica asistata de calculator 20
7.2. Scalarea
[ x y z 1 ][ S ] = [ x y z s ] =
= [ x/s y/s z/s 1 ] = [ x’ y’ z’ 1 ]
7.2. Scalarea
Exemplu : 0 0 4 1
4 0 4 1
Fie cubul definit
prin următoarea 4 0 0 1
matrice a 0 0 0 1
coordonatelor
C
0 4 4 1
vârfurilor sale :
4 4 4 1
4 4 0 1
0 4 0 1
31.03.2011 Grafica asistata de calculator 22
7.2. Scalarea
şi fie următoarea
matrice de
scalare locală : 2 0 0 0
0
3 0 0
S1
0 0 1 0
0 0 0 1
31.03.2011 Grafica asistata de calculator 23
31.03.2011 Grafica asistata de calculator 24
7.2. Scalarea
7.2. Scalarea
0 0 4 1 0 0 4 1
4 0 4 1 8 0 4 1
4 0 0 1 2 0 0 0 8 0 0 1
0 0 0 1 0
3 0 0 0
0 0 1
0 4 4 1 0 0 1 0 0 12 4 1
4 4 4 1 0 0 0 1 8 12 4 1
4 4 0 1 8 12 0 1
0 4 0 1 0 12 0 1
7.2. Scalarea
1 0 0 0
0 1 0 0
S 2
0 0 1 0
0 0 0 0.5
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
7.3. Rotaţia
1 0 0 0
0 cos sin
0
Rx
0 sin cos 0
0 0 0 1
31.03.2011 Grafica asistata de calculator 30
31.03.2011 Grafica asistata de calculator 31
7.3. Rotaţia
cos 0 sin 0
0
Ry
sin
1 0
0 cos 0
0
0 0 0 1
7.3. Rotaţia
cos sin 0 0
sin cos
0 0
Rz
0 0 1 0
0 0 0 1
31.03.2011 Grafica asistata de calculator 32
31.03.2011 Grafica asistata de calculator 33
7.3. Rotaţia
Considerăm
y
paralelipipedul cu
laturile paralele cu
axele sistemului de
coordonate şi un vârf
în orgine.
z
31.03.2011 Grafica asistata de calculator 34
7.3. Rotaţia
z
31.03.2011 Grafica asistata de calculator 35
7.3. Rotaţia
z
31.03.2011 Grafica asistata de calculator 36
7.3. Rotaţia
z
31.03.2011 Grafica asistata de calculator 37
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 38
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 40
7.5. Forfecarea
7.5. Forfecarea
1 b c 0
d 1 f
0
F
g i 1 0
0 0 0 1
31.03.2011 Grafica asistata de calculator 42
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 43
1 0 0 0
0 1
O
xy
0 0
0 0
1 0
0 0 0 1
7.6. Oglindirea faţă de un plan al
sistemului de coordonate
1 0 0 0
0
O
yz
0
1 0 0
0 1 0
0 0 0 1
1 0 0 0
0 1
0 0
Oxz
0 0 1 0
0 0 0 1
31.03.2011 Grafica asistata de calculator 46
31.03.2011 Grafica asistata de calculator 47
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 48
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 51
7. Transformări grafice 3D
7. Transformări grafice 3D
7.1. Translaţia
7.2. Scalarea
7.3. Rotaţia
7.4. Transformări inverse
7.5. Forfecarea
7.6. Oglindirea faţă de un plan al sistemului de
coordonate
7.7. Compunerea transformărilor tridimensionale
7.8. Rotaţia în jurul unei axe oarecare
7.9. Oglindirea faţă de un plan oarecare
31.03.2011 Grafica asistata de calculator 53
unde
[ T ] - reprezintă matricea de translaţie
[ AN,z] - reprezintă matricea de aliniere a vectorului
normală N cu axa z pozitivă
[ Oz ] - reprezintă matricea de oglindire faţă de planul z=0
[ AN,z ]1 - reprezintă matricea de aliniere inversă
[T]-1 - reprezintă translaţia inversă
31.03.2011 Grafica asistata de calculator 55
Întrebări?