ĐỒHỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 1/8
Đ
ĐĐ
Đ
Đ
ĐĐ
Đ
O
OO
O
O
OO
O
À
ÀÀ
À
À
ÀÀ
À
H
HH
H
H
HH
H
O
OO
O
O
OO
O
Ï
ÏÏ
Ï
Ï
ÏÏ
Ï
A
AA
A
A
AA
A
3
33
3
3
33
3
C
CC
C
C
CC
C
H
HH
H
H
HH
H
I
II
I
I
II
I
E
EE
E
E
EE
E
À
ÀÀ
À
À
ÀÀ
À
U
UU
U
U
UU
U
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 2/8
D
D
a
a
ã
ã
n
n
n
n
h
h
a
a
ä
ä
p
p
• Các đối tượng trong thế giới thực phần lớn là các đối
tượng 3 chiều còn thiết bò hiển thò chỉ 2 chiều.
• Muốn có các hình ảnh 3 chiều ta cần giả lập.
• Chiến lược cơ bản là chuyển đổi từng bước. Hình ảnh sẽ
được hình thành từ từ, ngày càng chi tiết hơn.
• Qui trình hiển thò:
Modeling
Transformation
Trivial
Rejection
Illumination
Viewing
Transformation
Clipping
Projection
Rasterization
Display
Biến đổi từ hệ toạ độ đối tượng sang
hệ toạ độ thế giới thực
Loại bỏ các đối tượng không nhìn
thấy được
Chiếu sáng đối tượng
Chuyển từ world space sang eye space
Loại bỏ phần nằm ngoài viewing frustum
Chiếu từ eye space xuống screen space
Chuyển đối tượng sang dạng pixel
Hiển thò đối tượng
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 3/8
C
C
a
a
ù
ù
c
c
v
v
a
a
ä
ä
t
t
t
t
h
h
e
e
å
å
3
3
D
D
đ
đ
ư
ư
ơ
ơ
ï
ï
c
c
b
b
i
i
e
e
å
å
u
u
d
d
i
i
e
e
ã
ã
n
n
n
n
h
h
ư
ư
t
t
h
h
e
e
á
á
n
n
a
a
ø
ø
o
o
?
?
• Point • Vector
• Line • Ray
• Triangle • Polygon
• Quadric curve • Spline
• Quadric solid • Curved surface
• v.v…
Đ
Đ
i
i
e
e
å
å
m
m
t
t
r
r
o
o
n
n
g
g
k
k
h
h
o
o
â
â
n
n
g
g
g
g
i
i
a
a
n
n
3
3
c
c
h
h
i
i
e
e
à
à
u
u
• Mô tả một vò trí trong không gian
typedef struct{
Coordinate x ;
Coordinate y ;
Coordinate z ;
}Point3D ;
3
3
D
D
v
v
e
e
c
c
t
t
o
o
r
r
• Mô tả một hướng và biên độ (magnitude)
♦ Xác đònh bởi 3 toạ độ dx, dy, dz
_
♦
♦
Magnitude
222
dzdydxV ++=
♦
♦
Không có vò trí trong không gian
•
• Tích vô hướng của 2 vector
♦
21212121
dzdzdydydxdxVV ++=•
♦
()
ΘcosVVVV
1121
=•
(x,y,z)
typedef struct {
Coordinate dx;
Coordinate dy;
Coordinate dz;
}Vector;
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 4/8
Đ
Đ
o
o
a
a
ï
ï
n
n
t
t
h
h
a
a
ú
ú
n
n
g
g
t
t
r
r
o
o
n
n
g
g
k
k
h
h
o
o
â
â
n
n
g
g
g
g
i
i
a
a
n
n
3
3
c
c
h
h
i
i
e
e
à
à
u
u
• Biểu diễn tổ hợp tuyến tính của 2 điểm.
♦ Biểu diễn dạng tham số của đoạn thẳng
P = P1 + t (P2 - P1 ), (0 ≤ t ≤ 1)
T
T
i
i
a
a
(
(
R
R
a
a
y
y
)
)
• Là một đoạn thẳng với một đầu nằm ở vô cực.
♦ Biểu diễn dạng tham số của tia
P = P1 + t V, (0 ≤ t <∞)
Đ
Đ
ư
ư
ơ
ơ
ø
ø
n
n
g
g
t
t
h
h
a
a
ú
ú
n
n
g
g
(
(
L
L
i
i
n
n
e
e
)
)
• Là một đoạn thẳng với cả hai đầu nằm ở vô cực.
♦ Biểu diễn dạng tham số của đường thẳng
P = P1 + t V, (-∞<t <∞)
typedef struct {
Point P1;
Point P2;
}Segment;
P
1
P
2
typedef struct {
Point P1;
Vector V;
}Ray;
P
V
typedef struct {
Point P1;
Vector V;
}Line;
P
V
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 5/8
M
M
a
a
ë
ë
t
t
p
p
h
h
a
a
ú
ú
n
n
g
g
(
(
P
P
l
l
a
a
n
n
e
e
)
)
• Là một đoạn thẳng với cả hai đầu nằm ở vô cực.
♦ Biểu diễn của mặt phẳng
P.N + d = 0 hoặc
ax + by + cz + d = 0
Đ
Đ
a
a
g
g
i
i
a
a
ù
ù
c
c
(
(
P
P
o
o
l
l
y
y
g
g
o
o
n
n
)
)
• Là một vùng giới hạn bởi dãy các điểm đồng phẳng.
♦ Tam giác,
♦ Tứ giác,
♦ Đa giác lồi,
♦ Đa giác lõm,
♦ Đa giác tự cắt,
♦ Đa giác có lỗ
♦ Các điểm được cho theo thứ tự ngược chiều kim đồng hồ
typedef struct {
Vector N;
Distance d;
}Plane;
typedef struct {
Point *Points;
int nPoints;
}Polygon;
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 6/8
M
M
o
o
d
d
e
e
l
l
i
i
n
n
g
g
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
• Biến đổi từ Hệ tọa độ đối tượng sang Hệ tọa độ thế giới
thực.
• Mỗi đối tượng được mô tả trong một hệ tọa độ riêng
được gọi là Hệ tọa độ đối tượng.
• Có hai cách mô hình hóa đối tượng :
♦ Solid modeling: mô tả các vật thể (kể cả bên trong)
♦ Boudary representation: chỉ quan tâm đến bề mặt đ/tg
• Các đối tượng có thể được biểu diễn bằng mô hình Wire-
Frame
• Nhận xét
♦ Khi biểu diễn đối tượng, ta có thể chọn gốc tọa độ và đơn
vò đo lường sao cho việc biểu diễn thuận lợi nhất. Thường
thì người ta chuẩn hóa kích thước của đối tượng khi biểu
diễn.
♦ Boudary representation cho phép xử lý nhanh còn silid
modeling cho hình ảnh đầy đủ và xác thực hơn.
z
1
1
xy
1
1
2
3
45
6
7
8
9
10
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 7/8
T
T
r
r
i
i
v
v
i
i
a
a
l
l
R
R
e
e
j
j
e
e
c
c
t
t
i
i
o
o
n
n
• Loại bỏ các đối tượng hoàn toàn không thể nhìn thấy
trong cảnh.
• Thao tác này giúp ta lược bỏ bớt các đổi tượng không
cần thiết hiển thò giảm chi phí xử lý.
I
I
l
l
l
l
u
u
m
m
i
i
n
n
a
a
t
t
i
i
o
o
n
n
• Gán cho các đối tượng màu sắc dựa trên các đặc tính của
các chất tạo nên chúng và các nguồn sáng tồn tại trong
cảnh.
• Có nhiều mô hình chiếu sáng và tạo bóng : constant-
intensity, interpolate (Gouraud), phong, ….
V
V
i
i
e
e
w
w
i
i
n
n
g
g
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
• Thực hiện một phép biến đổi hệ tọa độ để đặt vò trí
quan sát (viewing position) về gốc tọa độ và mặt phẳng
quan sát (viewing plane) về một vò trí mong ước.
• Hình ảnh hiển thò phụ thuộc vào vò trí quán sát và góc
nhìn.
• Hệ qui chiếu có gốc đặt tại vò trí quan sát và phù hợp
với hướng nhìn sẽ thuận lợi cho các xử lý nhất.
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu vềđồhọa 3 chiều 8/8
C
C
l
l
i
i
p
p
p
p
i
i
n
n
g
g
• Thực hiện việc xén (clip) các đối tượng trong cảnh để
cảnh nằm gọn trong một phần không gian hình chóp cụt
giới hạn vùng quan sát mà ta gọi là viewing frustum.
• Viewing frustum có trục trùng với tia nhìn, kích thước
giới hạn bởi vùng ta muốn quan sát.
P
P
r
r
o
o
j
j
e
e
c
c
t
t
i
i
o
o
n
n
• Thực hiện việc chiếu cảnh 3 chiều từ không gian quan
sát xuống không gian màn hình.
• Có hai phương pháp chiếu:
♦ Chiếu song song
♦ Chiếu phối cảnh
• Khi chiếu ta phải tiến hành việc khử mặt khuất để có
thể nhận được hình ảnh trung thực.
• Khử mặt khuất cho phép xác đònh vò trí (x,y) trên màn
hình thuộc về đối tượng nào trong cảnh.
VCS
z
y
x
z=-near z=-far
y=bottom
x=right
y=top
x=left
. ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu về đồ họa 3 chiều 1/8
Đ
ĐĐ
Đ
Đ
ĐĐ
Đ
O
OO
O
O
OO
O
À
ÀÀ
À
À
ÀÀ
À
H
HH
H
H
HH
H
O
OO
O
O
OO
O
Ï
ÏÏ
Ï
Ï
ÏÏ
Ï
A
AA
A
A
AA
A
3
33
3
3
33
3
C
CC
C
C
CC
C
H
HH
H
H
HH
H
I
II
I
I
II
I
E
EE
E
E
EE
E
À
ÀÀ
À
À
ÀÀ
À
U
UU
U
U
UU
U
ĐỒ. 1/8
Đ
ĐĐ
Đ
Đ
ĐĐ
Đ
O
OO
O
O
OO
O
À
ÀÀ
À
À
ÀÀ
À
H
HH
H
H
HH
H
O
OO
O
O
OO
O
Ï
ÏÏ
Ï
Ï
ÏÏ
Ï
A
AA
A
A
AA
A
3
33
3
3
33
3
C
CC
C
C
CC
C
H
HH
H
H
HH
H
I
II
I
I
II
I
E
EE
E
E
EE
E
À
ÀÀ
À
À
ÀÀ
À
U
UU
U
U
UU
U
ĐỒ HỌA MÁY TÍNH
Dương Anh Đức, Lê Đình Duy Giới thiệu về đồ họa 3 chiều 2/8
D
D
a
a
ã
ã
n
n
n
n
h
h
a
a
ä
ä
p
p
•