3D transformations

Reviews
Shared by: Manuel Arce Garcia
Stats
views:
530
rating:
5(1)
reviews:
0
posted:
12/10/2007
language:
English
pages:
0
FCC Graficación CAD/CAM 3D Transformations Contents 1. Translation 2. Scaling 3. Rotation 4. Other Transformations 1. Translation y ( x' , y ' , z ' ) x' x  Tx y ' y  T y z ' z  Tz  x  1  y   0    z   0    1  0 0 0 Tx   x  1 0 Ty   y    0 1 Tz   z    0 0 1  1  Ty (x, y, z) Tx Tz x z P'TP 2. Scaling y ( x' , y ' , z ' ) x ' x  S x y ' y  S y z ' z  S z (x, y, z) ∴ x  x   S x  y   0    z   0    1   0 0 Sy 0 0 0 0 Sz 0 0  x  0  y    0  z    1 1  z P' SP Sx  S y  Sz  Uniform scaling Otherwise, non - uniform scaling Relative Scaling y y y y ( xF , yF , zF ) z x z x z x z x P'[T 1 ][ S ][T ]P where 1 0 T  0  0 0 0  xF  S x 0 1 0  xF  ,S  0 0 1  xF    0 0 1  0 0 Sy 0 0 0 0 Sz 0 0 1 0 0  , and T 1   0 0   1 0 0 0 xF  1 0 xF  . 0 1 xF   0 0 1 3. Rotation 2D Rotation ( x' , y ' ) ( x' , y ' ) r r q q r r ( x, y ) ( x, y ) ( xR , y R ) Rotation about z-axis is implicit !!! y ∴ P'  ( x' , y ' , z ' ) r x'  x cosq  y sin q y '  x sin q  y cosq z'  z q r P  ( x, y, z ) x z  x'  cosq  y '  sin q    z'   0    1   0  sin q cosq 0 0 0 0  x  0 0  y    1 0  z    0 1 1  P' RZ P By symmetry, y y x z P' RX P, where 0 1 0 cosq RX   0 sin q  0 0 0  sin q cosq 0 0 0  0  1 x z P ' RY P, where  cosq  0 RY    sin q   0 0 sin q 1 0 0 cosq 0 0 0 0  0  1 x'  x y '  y cos q  z sin q z '  y sin q  z cos q x' x cosq  z sin q y ' y z '  xsin q  z cosq Rotation about an arbitrary axis y (x2, y2, z2) u (x1, y1, z1) x z  Basic idea T R 1. Translate the object so that the rotation axis passes through the origin. 2. Rotate the object so that the rotation axis coincides with one of the coordinate axis. 3. Perform the specified rotation. 4. R-1 5. T-1 x y z V  ( x2  x1 , y2  y1 , z 2  z1 ) V u   (a,b,c) V x  x2  x1 , y  y2  y1 , z  z 2  z1 V  x 2  y 2  z 2 x y z a , b , c V V V a 2  b 2  c 2 1  Step 1: Translation y (x2, y2, z2) u u = (a, b, c) (x1, y1, z1) x z 1 0 T  0  0 0 0  x1  1 0  y1   0 1  z1   0 0 1   Step 2: Aligning u with z-axis y y (0, b, c) = u' u = (a, b, c) a (0, 0, 1) = uz ux x a d u'' = (a, 0, d) x z u 'u z  u x | u ' | | u z | sin a  ux 2 2 z  b 2  c 2 sin a  b b2  c2  d u' uz c cos a   | u '|| u z | d sin a  b  b  c sin a uy b 0 uz c  u x (b) 1 ux u 'u z  0 0 1 0 0 c d  Rx (a )   0 b d  0 0 0 b d c d 0 0 0  0  1 y y uy b (0, 0, 1) = uz a d u'' = (a, 0, d) x z u' ' uz d | u ' '|| u z | 1 1 x z  u y sin b ux u' '  uz  a 0 ∴ sin b  a u ' '  u z  u y | u ' ' | | u z | sin b cos b  uy 0 0 uz d 1  u y  (a) d 0  Ry (b )   a  0 0  a 0 1 0 0  0 d 0  0 0 1 ∴ In Step 2, R  R y ( b ) Rx (a ) R 1  Rx (a ) 1 R y ( b ) 1    for later use  Step 3: Rotate about z-axis by a given angle y q x z cosq  sin q Rz (q )    0   0  sin q cosq 0 0 0 0 0 0  1 0  0 1  Step 4: [R-1] = [Rx(a)-1][Ry(b)-1]  Step 5: [T-1] ∴ In summary, P' T 1  Rx (a ) 1  R y ( b ) 1 z y x     R (q )R ( b )R (a )T  P 4. Concatenation  The successive application of a number of transformations can be achieved with a single transformation matrix, the concatenation of the sequence.  Suppose two transformations T1 and T2 are to be applied successively. The same effect can be achieved by the application of a single transformation T3, which is simply the product of the matrices T1 and T2. That is: The point (x, y, z) is transformed into (x’, y’, z’) by T1: [ x’ y’ z’ 1 ] = [ x y z 1 ] T1 (1) The point (x’’, y’’, z’’) is generated by applying T2: [ x’’ y’’ z’’ 1 ] = [ x’ y’ z’ 1 ] T2 (2) Substituting (1) in (2) gives: [ x’’ y’’ z’’ 1 ] = ([ x y z 1 ] T1)T2 = [ x y z 1 ] (T1T2) The order of application of the transformations must be preserved when the transformation matrices are multiplied together.

Shared by: Manuel Arce Garcia
Other docs by Manuel Arce G...
FPGA Tutorial with SPARTAN 3
Views: 2836  |  Downloads: 121
JMF guide
Views: 1098  |  Downloads: 45
biblia de los trucos para windows e internet
Views: 5730  |  Downloads: 386
Apuntes de analisis numerico
Views: 5463  |  Downloads: 353
manual de matlab 7 0 español
Views: 36502  |  Downloads: 1783
criptografia y seguridad
Views: 4347  |  Downloads: 227
criptografia-matematicas
Views: 2254  |  Downloads: 158
norma rs232
Views: 4024  |  Downloads: 109
cienematica de un robot
Views: 2132  |  Downloads: 85
topologia
Views: 423  |  Downloads: 6
Teoria y praxis - EMMANUEL KANT
Views: 3104  |  Downloads: 21
Romero y julieta - Willian Shakespeare
Views: 2539  |  Downloads: 13
Procesos Elementales En Una Computadora Cuantica
Views: 1514  |  Downloads: 13
Politica - Aristoteles
Views: 826  |  Downloads: 12
Related docs
2D Geometric Transformations
Views: 2475  |  Downloads: 138
3d animations
Views: 633  |  Downloads: 10
3d templates
Views: 550  |  Downloads: 6
3d animation software
Views: 14  |  Downloads: 0
Computer Graphics Rotation in 3D
Views: 2  |  Downloads: 0
Overview of 2D and 3D Computer Graphics
Views: 22  |  Downloads: 1
3D Modelling Tools
Views: 1  |  Downloads: 1
Computer Graphics Basic 3D Geometry
Views: 9  |  Downloads: 2
HOWTO 3D
Views: 44  |  Downloads: 3
3D Studio Max Complete Tutorial Book
Views: 36  |  Downloads: 0