Bài giảng Đồ họa hiện thực ảo - Bài 4b: Phép biến đổi trong không gian - Lê Tấn Hùng

Bài 4B:  
Phép biến đổi trong không gian  
1
(c) SE/FIT/HUT 2002  
Ma trận biến đổi 3 chiều  
3D Matrix Transformations  
„ Các phép biến đổi chuyển vị - translation, tỉ lệ-scaling và  
quay-rotation sử dụng trong không gian 2D đều co thể mở  
rộng trong không gian 3D  
„ Again, using homogeneous coordinates it is possible to  
represent each type of transformation in a matrix form  
2
(c) SE/FIT/HUT 2002  
Các phép biến đổi hình học 3 chiều  
„ Biểu diễn điểm trong không gian 3 chiều  
• [ x* y* z* h ] = [ x y z 1 ]. [ T ]  
• [x' y' z' 1 ]= [ x*/h y*/h z*/h 1 ][ T ]  
„ Ma trận biến
a b c p  
d e f q  
g i j r  
l m n s  
[T] =  
3
(c) SE/FIT/HUT 2002  
Phép tịnh tiến  
„ [X'] = [ X ] . [ T(dx,dy,dz) ]  
„ [ x' y' z' 1 ] =  
„ [ x y z 1 ].[ T(dx,dy,dz) ]  
„ = [ x+dx y+dy z+dz 1 ]  
4
(c) SE/FIT/HUT 2002  
Phép tỉ lệ  
= [x.s1 y .s2 z .s3 1]  
• s1, s2, s3 là các hstltng ng  
trên các trục toạ độ  
5
(c) SE/FIT/HUT 2002  
Rotation  
y
y
y
x
x
x
z
z
z
6
(c) SE/FIT/HUT 2002  
Phép quay 3 chiều  
„ Quay quanh các trục toạ độ  
• Quay quanh trục x  
• Quay quanh trục z  
7
(c) SE/FIT/HUT 2002  
Quay quanh trục y  
cosθ 0 − sinθ 0  
0 1  
sinθ 0 cosθ 0  
0
0
[Ty] =  
8
(c) SE/FIT/HUT 2002  
Phép biến dạng  
(secondary translation)  
1 b c 0  
d 1 f 0  
[x' y' z' 1] = [x y z 1]  
g i 1 0  
0 0 0 1  
9
(c) SE/FIT/HUT 2002  
Phép lấy đối xứng  
(reflections-secondary translation)  
10  
(c) SE/FIT/HUT 2002  
Quay quanh một trục bất kỳ song song với các  
trục tọa độ  
1 0 0 0  
1 0 0 0  
0 1 0 0  
0 0 1 0  
0 y z 1  
0 cosφ sinφ 0  
[T(φ)] =  
[Tr ] =  
0 −sinφ cosφ 0  
,
,
0 0 1  
1
0
coφs  
−sinφ  
0
sinφ  
cos  
0
1 0 0 0  
0
0
0 1 0 0  
−1  
[Tth]=  
[Tr] =  
0
0
0 0 1 0  
0 y(1−coφs)+zsinφ z(1−coφs)−ysinφ 1  
0 − y − z 1  
11  
(c) SE/FIT/HUT 2002  
Quay quanh một trục bất kỳ  
12  
(c) SE/FIT/HUT 2002  
Solution  
„ Chuyển P1 về gốc tọa độ.  
„ Quay quanh trục y sao cho P1P2 nằm trên mặt phẳng (y, z)  
„ Quay quanh trục x sao cho P1P2 trùng với trục z.  
„ Quay quanh trục z sao cho P1P3 nằm trên mặt phẳng (y, z)  
decomposed into a rotation around the x-axis followed by a  
z-axis.  
13  
(c) SE/FIT/HUT 2002  
Bước 1: Chuyển P1 về gốc tọa độ  
1 0 0 0  
0 1 0 0  
[T(−x1,−y1,−z1)] =  
0 0 1 0  
y
z
y
P3  
P3  
P2  
P1  
P2 p P1  
z
x
x
14  
(c) SE/FIT/HUT 2002  
Bước 2: Quay quanh trục y  
„ cos( - 90 + φ) = sinφ = z'2/L = ( z2 - z1)/L  
„ sin( - 90 + φ) = - cosφ = x'2/L = ( x2 - x1)/L  
y
P3  
2
2
L= (z'2 ) (x'2 ) = (z2 −z1) (x2 −x1)  
„ [ P''2 ] = [ P'2 ][ T(φ-90) ]  
P'2(x'2,y'2,z'2)  
„
= [ 0 y2-y1 L ]  
P'1  
L φ  
z(x'2,0,z'2)x  
15  
(c) SE/FIT/HUT 2002  
Bước 3: Quay quanh trục x.  
„ cos ϕ = z''2/N, sin ϕ = y''2/N  
y
„ Với N = | P''1P''2| là độ dài của đoạn P''1P''2  
P''2  
N
P''1  
ϕ
„ [P''' ] = [P''2][T(ϕ)] = [P'2][T(φ-90)][T(ϕ)]  
2
x
z
„
„
= [P2 ][T(-x1,-y1,-z1 ][T(φ-90)][T(ϕ)]  
= [ 0 0 |P1P2| 1 ]  
16  
(c) SE/FIT/HUT 2002  
Bước 4: Quay quanh trục z  
„ [P''' ]= [P3 ][T(-x1,-y1,-z1 ][T(φ-90)][T(ϕ)]  
3
„ Với góc quay dương ψ trên trục z  
'''  
'''  
„ cos ψ = y3 /M; sin ψ = x3 /M;  
„ Ma trận tổng hợ
dạng sau đáp ứng toàn bộ quá trình biến đổi quay  
đối tượng quanh một trục bất kỳ.  
y
y'''3  
„ [ T ] = [T(-x1,-y1,-z1)][T(φ-90)][T(ϕ)][T(ψ)]  
P'''3  
ψ
M
x'''3  
P'''2P'''1  
x
z
17  
(c) SE/FIT/HUT 2002  
„ Kết quả sau biến đổi cần phải đưa về vị trí ban đầu qua các phép biến đổi  
ngược.  
„ [Tth]= [T(-x1,-y1,-z1)]x[T(φ-0)]x[T(ϕ)]x [T(ψ)]x[T(ψ)]x[T(ϕ)]x  
„
[T(φ-90)]x[T(-x1,-y1,-z1)]  
18  
(c) SE/FIT/HUT 2002  
Hệ toạ độ  
Coordinate Frame  
y
j
φ
i
k
x
z
„ Coordinate frame is given by origin φ and three mutually orthogonal unit vectors,  
i, j, k.  
„ Mutually orthogonal (dot products): i•j = ?; i•k = ?; j•k = ?.  
„ Unit vectors (dot products): i•i = ?; j•j = ?; k•k = ?.  
19  
(c) SE/FIT/HUT 2002  
Orientation  
Right handed coordinate system:  
Left handed coordinate system:  
k
y
y
j
j
i
φ
k
x
z
x
z
Cross product: i x j = ?  
Cross product: i x j = ?  
20  
(c) SE/FIT/HUT 2002  
Tải về để xem bản đầy đủ
pdf 27 trang yennguyen 25640 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Đồ họa hiện thực ảo - Bài 4b: Phép biến đổi trong không gian - Lê Tấn Hùng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_do_hoa_hien_thuc_ao_bai_4b_phep_bien_doi_trong_kho.pdf