chương 5. giỚi thiỆu ĐỒ hỌa ba chiỀu
DESCRIPTION
Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU. Giới thiệu. Các đối tượngtrong thế giới thực phần lớn là các đối tượng 3 chiều. Việc thể hiện các đối tượng ba chiều trên máy tính là công việc cần thiết để đưa tin học gần với thực tế hơn. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/1.jpg)
Chương 5.GIỚI THIỆU ĐỒ HỌA BA CHIỀU
![Page 2: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/2.jpg)
Giới thiệu
• Các đối tượngtrong thế giới thực phần lớn là các đối tượng 3 chiều.
• Việc thể hiện các đối tượng ba chiều trên máy tính là công việc cần thiết để đưa tin học gần với thực tế hơn.
• Biểu diễn các đối tượng 3 chiều trên máy tính cũng cần tuân theo các quy luật về phối cảnh, sáng, tối,…
• Biểu diễn trên máy tính giúp ta có thể quan sát các đối tượng ở nhiều góc độ khác nhau
![Page 3: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/3.jpg)
Giới thiệu
Một cảnh trong đồ họa ba chiều
![Page 4: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/4.jpg)
Sơ lược về quy trình hiển thị
Modeling Transformation
Trivial Rejection
Illumination
Viewing Transformation
Clipping
Projection
Rasterization
Display
Biến đổi từ hệ tọa độ đối tượng sang hệ tọa độ thế giới thực
Loại bỏ các đối tượng không nhìn thấy được
Chuyển từ world space sang eye space
Chiếu sáng đối tượng
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
![Page 5: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/5.jpg)
Sơ lược về quy trình hiển thị
• Trivial Projection
![Page 6: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/6.jpg)
Sơ lược về quy trình hiển thị
• Illumination
![Page 7: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/7.jpg)
Sơ lược về quy trình hiển thị
• Viewing Transformation
Look-At
Eye
![Page 8: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/8.jpg)
Sơ lược về quy trình hiển thị
• clipping
![Page 9: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/9.jpg)
Sơ lược về quy trình hiển thị
• Rasterization
![Page 10: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/10.jpg)
Sơ lược về quy trình hiển thị
• Display
![Page 11: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/11.jpg)
Mô hình khung nối kết (Wireframe Model)
• Là phương pháp thông dụng và đơn giản để mô hình hóa đối tượng
• Dùng trong việc xem phát thảo các đối tượng• Các đối tượng ba chiều khi được thể hiện bằng mô hình
Wireframe trông có vẻ rỗng, không giống thực tếz
4
![Page 12: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/12.jpg)
Biểu diễn các vật thể ba chiều bằng mô hình Wireframe
• Hình dạng của đối tượng 3D được thể hiện bằng hai danh sách:– Danh sách các đỉnh (vertexes): lưu tọa độ các đỉnh– Danh sách các cạnh (egeds): lưu cặp điểm đầu và cuối của
từng cạnh
![Page 13: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/13.jpg)
Biểu diễn các vật thể ba chiều bằng mô hình Wireframe
• Ví dụ: Biểu diễn một căn nhà thô sơ
Danh sách các đỉnh (Vertex list)Vertex x y z
1 0 0 02 0 1 03 ?45678910
![Page 14: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/14.jpg)
Biểu diễn các vật thể ba chiều bằng mô hình Wireframe
• Ví dụ: Biểu diễn một căn nhà thô sơ
Edge listEdge Vertex1 Vertex2
1 1 2
2 2 3
3
4
5
6
7
8
9
…
15 1 6
6
11
2
![Page 15: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/15.jpg)
Biểu diễn các vật thể ba chiều bằng mô hình Wireframe
• Có thể đặc tả mô hình khung nối kết bằng cấu trúc dữ liệu mãng:#define MAXVERTEXS 50#define MAXEDGES 100typedef struct{
float x,y,z;} POINT3Dtypedef struct{int NumVertexs;int NumEdges;POINT3D Vert[MaxVertexs];int Edge[MaxEdges][2]}WIREFRAME
![Page 16: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/16.jpg)
Vẽ mô hình Wireframe với các phép chiếu
• Một đối tương Wireframe được vẽ bằng cách vẽ từng cạnh trong danh sách mô hình
• Kỹ thuật chung để vẽ một đường thẳng 3D:– Chiếu hai điểm đầu mút thành các điểm 2D– Vẽ đường thẳng qua hai điểm vừa được chiếu
![Page 17: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/17.jpg)
Vẽ mô hình Wireframe với các phép chiếu Phép chiếu phối cảnh (Perspective projection)
E(E,0,0)
P(x,y,z)
P’
xy
z
y’
z’
mặt phẳng chiếu (mp quan sát)
mắt
tìm P’(x’,y’,z’)?
![Page 18: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/18.jpg)
Phép chiếu phối cảnh (Perspective projection)
• P’ = EP(yOz) • Phương trình EP: r(t) = (E,0,0).(1-t) +(x,y,z).t
Phương trình (yOz): x=0• =>P’(x’,y’,z’) thỏa:
tzyxtEtrx
).,,()1).(0,0,()(0'
ExzzEx
yy
x
/1'
/1'
0'
![Page 19: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/19.jpg)
Vẽ mô hình Wireframe với các phép chiếu Phép chiếu song song ( parallel projection)
• Phép chiếu song song là trường hợp đặc biệt của phép chiếu phối cảnh
• Tâm chiếu ở vô cực => các tia chiếu song song => t = 1 =>y’ = y, z’ = z
Tâm chiếu ở
A
B
A’
B’
![Page 20: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/20.jpg)
Biểu diễn các đối tượng ba chiều
• Các cảnh đồ họa chứa nhiều đối tượng khác nhau: cây, hoa, mây, núi, sắt,… Có nhiều phương pháp khác nhau để mô tả các đối tượng
• Ví dụ:– Các đối tượng Euclide như khối Ellipse, khối đa diện…được
biêu diễn thông qua các đường cong và mặt cong bậc hai– Các mô hình máy bay, các bánh răng và các câu trúc công
nghệ khác được biểu diễn qua các mặt cong.– …
![Page 21: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/21.jpg)
Biểu diễn các đối tượng ba chiều
• Các mặt đa giác• Các đường cong và mặt cong
![Page 22: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/22.jpg)
Biểu diễn các đối tượng ba chiều Biểu diễn mặt đa giác
![Page 23: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/23.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
•
![Page 24: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/24.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Môt đường cong hoặc một mặt cong có thể diễn tả bằng phương trình toán học dạng tham số hoặc không tham số.
![Page 25: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/25.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Các mặt có quy luật– Định nghĩa: Một mặt có quy luật là một mặt được tạo bằng
cách quét (sweep) một đường thẳng trong không gian theo một quy luật nào đó
– Phương trình tham số:p(u,v) =(1-v)p0(u) +vp1(u)
– Ví dụ: Hình trụ, hình nón,…
![Page 26: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/26.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Các mặt có quy luật: – Hình trụ (Cylinder): p(u,v)=p0(u) + vd
đường sinh
đường chuẩn
z
x
y
đường chuẩn
đường sinh
Hình trụ tròn
z
![Page 27: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/27.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Các mặt có quy luật: – Hình nón (Cone): p(u,v)=(1-v)p0+ vp1(u)
với P0: đỉnh nón, p1(u): nếu là đường tròn thìcó pt: x = Rcosu
y = Rsinu
u,v[0,1]
z
đường chuẩn
đường sinh
![Page 28: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/28.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Các mặt tròn xoay (surfaces of revolution): Các mặt tròn xoay được tạo ra khi chúng ta quay một đường cong phẳng C nào đó quanh môt trục
đường cong C
x
y
z
![Page 29: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/29.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Các mặt cong bậc hai:– Phương trình tổng quát biểu diễn các mặt cong bậc hai:Ax2+ By2+Cz2+ Dxy + Exz +Fyz + Gx + Hy + Iz + J = 0– Ví dụ: Mặt cầu, Ellipsoid,…
![Page 30: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/30.jpg)
Biểu diễn các đối tượng ba chiều Các đường cong và mặt cong
• Các mặt cong bật hai:– Mặt cầu có bán kính R và tâm đặt tại góc tọa độ:
• Phương trình chính tắc: x2 + y2 + z2 = 0 • Phương trình tham số:
x = R. cos cos.
y = R.cos .sin.z = R.sinvới -/2 /2, 0 2
P(x,y,z)
y
z
x
y
z
R
x
![Page 31: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/31.jpg)
Biểu diễn các đối tượng ba chiề Các đường cong và mặt cong
• Các mặt cong bật hai:– Ellipsoic có thể xem như một mở rộng của mặt cầu có ba bán kính Rx,
Ry ,Rz
• Phương trính chính tắc:
• Phương trình tham số của Ellipsoic có dạng:x = Rx. cos .cos.
y = Ry. cos .sin.
z = Rz.sin
với -/2 /2, 0 2
x
y
z
RxRy
Rz
12
2
2
2
2
2
zyx Rz
Ry
Rx
x
P(x,y,z)
y
z
![Page 32: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/32.jpg)
Biểu diễn các đối tượng ba chiềuĐường cong Bezier
• Xem sách trang 157 -162
![Page 33: Chương 5. GIỚI THIỆU ĐỒ HỌA BA CHIỀU](https://reader031.vdocuments.site/reader031/viewer/2022013004/56814e57550346895dbbf035/html5/thumbnails/33.jpg)
Biểu diễn các đối tượng ba chiều Đường cong Spline và B-Spline
•