Tải bản đầy đủ (.pdf) (10 trang)

Bài giảng về đồ họa - ViewingTransf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (397.74 KB, 10 trang )

ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Viewing transformation 1/10
V
VV
V
V
VV
V
I
II
I
I
II
I
E
EE
E
E
EE
E
W
WW
W
W
WW
W
I
II
I
I
II


I
N
NN
N
N
NN
N
G
GG
G
G
GG
G
T
TT
T
T
TT
T
R
RR
R
R
RR
R
A
AA
A
A
AA

A
N
NN
N
N
NN
N
S
SS
S
S
SS
S
F
FF
F
F
FF
F
O
OO
O
O
OO
O
R
RR
R
R
RR

R
M
MM
M
M
MM
M
A
AA
A
A
AA
A
T
TT
T
T
TT
T
I
II
I
I
II
I
O
OO
O
O
OO

O
N
NN
N
N
NN
N
S
SS
S
S
SS
S
D
D
a
a
ã
ã
n
n
n
n
h
h
a
a
ä
ä
p

p
• Sau công đoạn modeling transformation, tất cả các đối
tượng được đặt trong cùng một hệ tọa độ chung (world
coordinates).
• Bỏ qua công đoạn trivial rejection và illumination, chúng
ta sẽ xem xét công đoạn biến đổi vào không gian quan
sát (view transformation). Mục đích của công đoạn này
là chuyển đổi các đối tượng vào hệ tọa độ quan sát (eye
coordinates hay 3D camera coordinates)
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Viewing transformation 2/10
Q
Q
u
u
i
i
t
t
r
r
ì
ì
n
n
h
h
h
h
i

i
e
e
å
å
n
n
t
t
h
h
ò
ò
C
C
a
a
m
m
e
e
r
r
a
a
• Các tham số của Camera

Vò trí mắt nhìn (x, y, z)

Hướng nhìn (towards vector, up vector)


Vùng quan sát
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Viewing transformation 3/10
C
C
a
a
m
m
e
e
r
r
a
a
T
T
r
r
a
a
n
n
s
s
f
f
o
o

r
r
m
m
a
a
t
t
i
i
o
o
n
n
• Trong cảnh trên, gốc tọa độ của world space đặt ngay
dưới đáy ghế, trục z hướng lên đi qua tâm của bình trà.
Để thuận tiện, trục x và y được chọn song song với các
bức tường (chú ý các viên gạch trên nền nhà). Với hệ
tọa độ này, ghế và bình trà rất dễ dàng biểu diễn.
• Bước tiếp theo, ta cần mô tả ảnh của mô hình ta đang
mong muốn diễn tả. Công việc này sẽ dễ dàng hơn
nhiều nếu gốc tọa độ trùng với vò trí quan sát (vò trí của
mắt hay camera). (Xem hình bên dưới)
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Viewing transformation 4/10
• Ta có thể đạt được điều này nhờ vào các phép biến đổi
tònh tiến và quay (rigid body transformations). Trước
tiên, ta cần thực hiện phép quay để cho 2 trục tọa độ
(world và camera) cùng phương.
• Sau đó, ta thực hiện phép tònh tiến để đưa gốc tọa độ

của world space về trùng với gốc tọa độ của eye space.
• Tại sao ta lại quay trước rồi mới tònh tiến ? Ta có
thể thực hiện theo một cách khác không ?
• Cách tiếp cận vừa trình bày không được trực quan và sẽ
gây không ít khó khăn khi ta muốn giao tiếp với người
dùng trong một hệ xử lý đồ họa 3 chiều. Ta thử tiếp cận
theo một cách khác.
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Viewing transformation 5/10
• Thay cho việc xác đònh một hệ tọa độ quan sát mong
muốn bằng 1 phép quay và 1 phép tònh tiến hệ tọa độ
thực ta có thể sử dụng phương pháp sau:
N
N
e
e
w
w
C
C
a
a
m
m
e
e
r
r
a
a

T
T
r
r
a
a
n
n
s
s
f
f
o
o
r
r
m
m
a
a
t
t
i
i
o
o
n
n
• Trước tiên, ta xác đònh vò trí đặt camera (hoặc vò trí
quan sát) trong không gian thực. Ta gọi nó là vò trí mắt

(eye point). Sau đó, ta xác đònh một vò trí trong cảnh
(scene) mà ta muốn nó sẽ xuất hiện ở trung tâm của cửa
sổ nhìn. Ta gọi điểm này là điểm nhìn (look-at point).
Tiếp theo ta xác đònh 1 vector dùng để chỉ hướng đi lên
của ảnh tính từ look-at point. Ta gọi nó là vector
hướng lên (up-vector).
• Cách biểu diễn trên rất tự nhiên. Ta có thể sử dụng
cách biểu diễn này để mô tả một q đạo của camera
bằng cách chỉ thay đổi eye-point còn look-at point và up-
vector không đổi. Hoặc ta có thể quét camera từ đối
tượng này đến đối tượng khác trên ảnh bằng cách chỉ
thay đổi look-at point.

×