ch3cacphepbiendoihinhhoc 0013

12
4/18/2011 1 Trương Văn Quc Nht 1 CH 3. CÁC PHÉP BIẾN ĐỔI HÌNH HỌC Nội dung 2 1. 2. Tọa độ thuần nhất 3. Biểu diễn ma trận các phép biến đổi 2D 4. Tổ hợp các phép biến đổi 2D 5. Vùng nhìn (window) của thế giới thực khung hiển thị (viewport) của màn hình máy tính 6. Biểu diễn ma trận các phép biến đổi 3D Các phép biến đổi 2D

Upload: nguyendattdh

Post on 12-Jul-2015

51 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

1

Trương Văn Quốc Nhật

1

CH 3. CÁC PHÉP BIẾN ĐỔI HÌNH HỌC

Nội dung

2

1.

2. Tọa độ thuần nhất

3. Biểu diễn ma trận các phép biến đổi 2D

4. Tổ hợp các phép biến đổi 2D

5. Vùng nhìn (window) của thế giới thực

khung hiển thị (viewport) của màn hình máy tính

6. Biểu diễn ma trận các phép biến đổi 3D

Các phép biến đổi 2D

Page 2: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

2

1. Các phép biến đổi 2D

3

Tịnh tiến (translation)

Co giãn (scaling)

Quay (rotation)

Nghiêng (shearing)

Đối xứng (reflection)

Tịnh tiến (translation)

4

xdxx '

ydyy '

xd

yd

x

y

y

x

d

dT

y

xP

y

xP ,

'

'',

• Xem dưới dạng vector cột:

TPP '

Page 3: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

3

Co giãn (scaling)

5

xsx x ' ysy y '

x

y

y

x

s

s

y

x

y

x

0

0

'

'

• Dưới dạng ma trận:

PSP 'hay

84

2

6

12

12

xx2

1' yy

3

1'

• Ví dụ:

Quay (rotation)

6

sincos' yxx

x

y

y

x

y

x

sin0

0cos

'

'

• Dưới dạng ma trận:

PRP 'hay

7

2

7

9

• Quay 1 góc (ví dụ: =28o)

θφ

cossin' yxy

Page 4: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

4

Nghiêng (shearing)

7

Nội dung (2. thuần nhất)

8

1. Các phép biến đổi 2D

2.

3. Biểu diễn ma trận các phép biến đổi 2D

4. Tổ hợp các phép biến đổi 2D

5. Vùng nhìn (window) của thế giới thực

khung hiển thị (viewport) của màn hình máy tính

6. Biểu diễn ma trận các phép biến đổi 3D

Tọa độ thuần nhất

Page 5: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

5

2. Tọa độ thuần nhất

9

TPP '

PSP '

PRP '

- Tịnh tiến:

- Co giãn:

- Quay:

Lúc thì cộng

lúc thì nhân…

răng hè…!?

Homogeneous

Coordinates

Không gian tọa độ thuần nhất XYW

10

x

y

w

1

yx, 0,,, wwyx

- Tọa độ thuần nhất:

- Tính duy nhất:

wyx ,, ',',' wyxvà

cùng biểu diễn 1 điểm

0,',',',, ttwtytxwyx

- Chuẩn hóa:

1,,,,

w

y

w

xwyx

P

Mặt phẳng w=1

1

y

x

y

x

Page 6: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

6

Nội dung (3. ma trận 2D)

11

1. Các phép biến đổi 2D

2. Tọa độ thuần nhất

3.

4. Tổ hợp các phép biến đổi 2D

5. Vùng nhìn (window) của thế giới thực

khung hiển thị (viewport) của màn hình máy tính

6. Biểu diễn ma trận các phép biến đổi 3D

Biểu diễn ma trận các phép biến đổi 2D

3. Biểu diễn ma trận các phép biến đổi 2D

12

TPP '

PSP '

PRP '

- Tịnh tiến:

- Co giãn:

- Quay:

PMP '

Page 7: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

7

Tịnh tiến, co giãn, quay

13

y

x

d

d

y

x

y

x

'

'

y

x

s

s

y

x

y

x

0

0

'

'

y

x

y

x

sin0

0cos

'

'

1100

10

01

1

'

'

y

x

d

d

y

x

y

x

1100

00

00

1

'

'

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

'

'

y

x

y

x

- Tịnh tiến:

- Co giãn:

- Quay:

Nghiêng

14

100

010

01 a

SH x

x

y

2

2

6

6

11

'

'

y

x

SHy

x

100

01

001

bSH y

3 75 9

3

7

5

9

2

6

2 6

Page 8: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

8

Nội dung (4. tổ hợp 2D)

15

1. Các phép biến đổi 2D

2. Tọa độ thuần nhất

3. Biểu diễn ma trận các phép biến đổi 2D

4.

5. Vùng nhìn (window) của thế giới thực

khung hiển thị (viewport) của màn hình máy tính

6. Biểu diễn ma trận các phép biến đổi 3D

Tổ hợp các phép biến đổi 2D

16

Xoay quanh 1 điểm bất kỳ?

1y

1x

P1P1θ

100

10

01

1

1

y

x

100

10

01

1

1

y

x

100

0cossin

0sincos

11, yxT 11, yxT R

1111 ,, yxTRyxT

100

???

???

=

= =

Page 9: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

9

17

Co giãn quanh 1 điểm bất kỳ?

1y

1x

P1 1y

1x

P1

Nội dung (5. window to viewport)

18

1. Các phép biến đổi 2D

2. Tọa độ thuần nhất

3. Biểu diễn ma trận các phép biến đổi 2D

4. Tổ hợp các phép biến đổi 2D

5.

6. Biểu diễn ma trận các phép biến đổi 3D

Vùng nhìn (window) của thế giới thực

khung hiển thị (viewport) của màn hình máy tính

Page 10: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

10

Window - Viewport

19

Tọa độ thế giới thực Tọa độ màn hình

window

viewport

viewport 1

viewport 2

20

),( minmin yx

),( maxmax yx

),( minmin vu

),( maxmax vu

1.window (thế giới thực) 2. Tịnh tiến window về gốc

3. Co giãn window theo

kích thướcviewport4. Tịnh tiến đến tọa độ

viewport

windowviewportwindowviewportwv TSTM 2

11

w

w

wvv

v

y

x

My

x

Mwv=?

xv,yv=?

Page 11: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

11

Nội dung (6. ma trận 3D)

21

1. Các phép biến đổi 2D

2. Tọa độ thuần nhất

3. Biểu diễn ma trận các phép biến đổi 2D

4. Tổ hợp các phép biến đổi 2D

5. Vùng nhìn (window) của thế giới thực

khung hiển thị (viewport) của màn hình máy tính

6. Biểu diễn ma trận các phép biến đổi 3D

Hệ tọa độ trái/phải

22

x

y

z x

y

z

Hệ tọa độ phải(right-handed coordinate system)

Hệ tọa độ trái(left-handed coordinate system)

Page 12: Ch3cacphepbiendoihinhhoc 0013

4/18/2011

12

1000

0cossin0

0sincos0

0001

xR

1000

000

000

000

,,z

y

x

zyxs

s

s

sssS

23

1000

100

010

001

,,z

y

x

zyxd

d

d

dddT

- Tịnh tiến: - Co giãn:

- Quay:

1000

0cos0sin

0010

0sin0cos

yR

1000

0100

00cossin

00sincos

zR

Bài tập 03

24

Bắt buộc (3 tuần): xây dựng công thức & lập trình

1. Tịnh tiến/quay/co giãn liên tiếp

2. Xoay/Co giãn quanh 1 điểm bất kỳ

3. Trong giai đoạn chuyển từ window (thế giới thực) sang

viewport (màn hình hiển thị), xác định Mwv, xv,yv

khi biết xmin, ymin, xmax, ymax, umin, vmin, umax, vmax. (không lập trình câu 3 này)

Tự tìm hiểu (không nộp)

1. Công thức quay một góc quanh gốc tọa độ theo

ngược chiều kim đồng hồ