Affine Transformations Mô hình hoá - Modelling Và dụ Phép biến Äá»i ...
Affine Transformations Mô hình hoá - Modelling Và dụ Phép biến Äá»i ...
Affine Transformations Mô hình hoá - Modelling Và dụ Phép biến Äá»i ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Khoa CNTT - DDHBK Hà nội<br />
hunglt@it-hut.edu.vn<br />
8682595<br />
Identity as a Coordinate Transform<br />
Translation<br />
x<br />
u<br />
(1,1)<br />
x<br />
u’<br />
(1,1)<br />
x<br />
u<br />
(1,1)<br />
⎡1<br />
0 tx⎤<br />
Q =<br />
⎢<br />
0 1<br />
⎥<br />
⎢<br />
ty<br />
⎥<br />
P<br />
⎢⎣<br />
0 0 1 ⎥⎦<br />
x<br />
u’<br />
(1+tx,1+ty)<br />
⎡1<br />
Q =<br />
⎢<br />
⎢<br />
0<br />
⎢⎣<br />
0<br />
0<br />
1<br />
0<br />
v<br />
0⎤<br />
0<br />
⎥<br />
⎥<br />
P<br />
1⎥⎦<br />
y<br />
v’ y<br />
(c) SE/FIT/HUT 2002 31<br />
⎡1<br />
⎢<br />
⎢<br />
0<br />
⎢⎣<br />
0<br />
0 tx⎤⎡0⎤<br />
⎡tx⎤<br />
1 ty<br />
⎥⎢<br />
⎥<br />
=<br />
⎢ ⎥<br />
⎥⎢<br />
0<br />
⎥ ⎢<br />
ty<br />
⎥<br />
0 1 ⎥⎦<br />
⎢⎣<br />
1⎥⎦<br />
⎢⎣<br />
1 ⎥⎦<br />
v y<br />
⎡tx⎤<br />
⎢ ⎥<br />
⎢ ⎥<br />
⎢⎣<br />
1 ⎥⎦<br />
⎡1<br />
⎢<br />
⎢<br />
0<br />
⎢⎣<br />
0<br />
0 tx⎤⎡1⎤<br />
⎡ 1+<br />
tx⎤<br />
1 ty<br />
⎥⎢<br />
⎥<br />
=<br />
⎢ ⎥<br />
⎥⎢<br />
0<br />
⎥ ⎢<br />
ty<br />
⎥<br />
0 1 ⎥⎦<br />
⎢⎣<br />
1⎥⎦<br />
⎢⎣<br />
1 ⎥⎦<br />
⎡1<br />
⎢<br />
⎢<br />
0<br />
⎢⎣<br />
0<br />
v’<br />
y<br />
0 tx⎤⎡0⎤<br />
⎡ tx ⎤<br />
1 ty<br />
⎥⎢<br />
⎥<br />
=<br />
⎢ ⎥<br />
⎥⎢<br />
1<br />
⎥ ⎢<br />
1+<br />
ty<br />
⎥<br />
0 1 ⎥⎦<br />
⎢⎣<br />
1⎥⎦<br />
⎢⎣<br />
1 ⎥⎦<br />
origin<br />
O = ty<br />
v (1, 0, 0) u (0, 1, 0)<br />
(c) SE/FIT/HUT 2002 32<br />
Rotation<br />
x<br />
u<br />
(1,1)<br />
u’<br />
x<br />
⎡0⎤<br />
O =<br />
⎢ ⎥<br />
⎢<br />
0<br />
⎥<br />
⎢⎣<br />
1⎥⎦<br />
Scaling<br />
x<br />
u<br />
(1,1)<br />
x<br />
u<br />
(sx*1,sy*1)<br />
v’<br />
v<br />
⎡cosθ<br />
− sinθ<br />
Q =<br />
⎢<br />
⎢<br />
sinθ<br />
cosθ<br />
⎢⎣<br />
0 0<br />
y<br />
0⎤<br />
0<br />
⎥<br />
⎥<br />
P<br />
1⎥⎦<br />
y<br />
⎡cosθ<br />
⎤ ⎡− sinθ<br />
⎤<br />
v =<br />
⎢ ⎥<br />
⎢<br />
sinθ<br />
⎥<br />
u =<br />
⎢ ⎥<br />
⎢<br />
cosθ<br />
⎥<br />
⎢⎣<br />
1 ⎥⎦<br />
⎢⎣<br />
1 ⎥⎦<br />
(c) SE/FIT/HUT 2002 33<br />
⎡sx<br />
0<br />
Q =<br />
⎢<br />
⎢<br />
0 sy<br />
⎢⎣<br />
0 0<br />
v<br />
0⎤<br />
0<br />
⎥<br />
⎥<br />
P<br />
1⎥⎦<br />
y<br />
y v<br />
⎡0⎤<br />
⎡sx⎤<br />
⎡ 0 ⎤<br />
=<br />
⎢ ⎥<br />
⎢ ⎥<br />
O<br />
⎢<br />
0<br />
⎥<br />
v =<br />
⎢ ⎥ u =<br />
⎢<br />
sy<br />
⎢<br />
0<br />
⎥<br />
⎥<br />
⎢⎣<br />
1⎥<br />
⎢ ⎥<br />
⎦ ⎢ ⎥ ⎣ 1<br />
⎣ 1 ⎦<br />
⎦<br />
(c) SE/FIT/HUT 2002 34<br />
Composite <strong>Transformations</strong><br />
x<br />
u<br />
(1,1)<br />
v y<br />
x<br />
O =<br />
u’<br />
v<br />
’<br />
y<br />
v =<br />
⎡x1(1<br />
− cosθ<br />
) + y1<br />
sinθ<br />
⎤<br />
⎢<br />
⎥<br />
⎢<br />
y1(1<br />
− cosθ<br />
) − y1<br />
sinθ<br />
⎥<br />
⎢⎣<br />
1 ⎥⎦<br />
⎡cosθ<br />
+ x1(1<br />
−cosθ<br />
) + y1<br />
sinθ<br />
⎤<br />
⎢<br />
⎥<br />
⎢<br />
sinθ<br />
+ y1<br />
(1 −cosθ<br />
) − y1<br />
sinθ<br />
⎥<br />
⎢⎣<br />
1 ⎥⎦<br />
Modeling <strong>Transformations</strong><br />
• To make full use of the computational optimisation made<br />
possible by composite transforms, we only want to apply the<br />
transformations to points at the very end<br />
• i.e. the transformation operation (multiplying point p by<br />
transform matrix is the very last thing we do in the modelling<br />
phase)<br />
⎛cosθ<br />
− sinθ<br />
⎜<br />
M = ⎜ sinθ<br />
cosθ<br />
⎜<br />
⎝ 0 0<br />
x1<br />
(1 − cosθ<br />
) + y1<br />
sinθ<br />
⎞<br />
⎟<br />
y1(1<br />
− cosθ<br />
) − x1<br />
sinθ<br />
⎟<br />
1 ⎟<br />
⎠<br />
u =<br />
⎡−sinθ<br />
+ x1<br />
(1 −cosθ<br />
) + y1<br />
sinθ<br />
⎤<br />
⎢<br />
⎥<br />
⎢<br />
cosθ<br />
+ y1<br />
(1 −cosθ<br />
) − y1<br />
sinθ<br />
⎥<br />
⎢⎣<br />
1<br />
⎥⎦<br />
Specify points<br />
in local coords<br />
Specify<br />
<strong>Transformations</strong><br />
(composite if necessary)<br />
Send to<br />
Pipeline<br />
(c) SE/FIT/HUT 2002 35<br />
(c) SE/FIT/HUT 2002 36<br />
6