Đ� h�a máy tính đư�c ra đ�i b�i s� k�t h�p c�a 2 lĩnh v�c thông tin và truy�n hình BỘ GIAO THÔNG VẬN TẢI TRƢỜNG ĐẠI HỌC HÀNG HẢI BỘ MÔN KHOA HỌC MÁY TÍNH KHOA CÔNG NGHỆ THÔNG TIN BÀI GIẢNG ĐỒ HỌA MÁY[.]
BỘ GIAO THÔNG VẬN TẢI TRƢỜNG ĐẠI HỌC HÀNG HẢI BỘ MƠN: KHOA HỌC MÁY TÍNH KHOA: CƠNG NGHỆ THƠNG TIN BÀI GIẢNG ĐỒ HỌA MÁY TÍNH TÊN HỌC PHẦN : ĐỒ HỌA MÁY TÍNH MÃ HỌC PHẦN : 17211 TRÌNH ĐỘ ĐÀO TẠO : ĐẠI HỌC CHÍNH QUY DÙNG CHO SV NGÀNH : CƠNG NGHỆ THƠNG TIN HẢI PHỊNG - 2010 MỤC LỤC STT CHƢƠNG NỘI DUNG GIỚI THIỆU ĐỒ HỌA MÁY TÍNH 1.1 1.2 1.2.1 1.2.2 Giới thiệu đồ họa máy tính Tổng quan hệ đồ họa Hệ tọa độ thực, hệ tọa độ thiết bị hệ tọa độ chuẩn Mơ hình màu 2.1 2.1.1 2.1.2 2.2 2.2.1 2.2.2 2.3 2.3.1 2.3.2 2.4 Giới thiệu đối tượng đồ họa sở Các đối tượng đồ họa sở: điểm, đường, vùng tơ, văn Các thuộc tính đối tượng đồ họa sở Các thuật toán vẽ điểm, đường Vẽ đường thẳng Vẽ đường trịn, elip Các thuật tốn tơ màu Thuật tốn tơ màu dựa theo dịng qt đơn giản Thuật tốn tơ màu dựa theo đường biên Bài tập áp dụng 3.1 3.1.1 3.1.2 3.1.3 3.1.4 3.2 3.2.1 3.2.2 3.2.3 3.3 3.3.1 3.3.2 3.3.3 3.4 3.5 Các phép biến đổi sở Giới thiệu phép biến đổi Phép tịnh tiến Phép biến đổi tỉ lệ Phép quay Kết hợp phép biến đổi Kết hợp phép tịnh tiến Kết hợp phép biến đổi tỉ lệ Kết hợp phép quay Một số phép biến đổi khác Phép biến dạng Phép đối xứng Tính chất phép biến đổi affine Phép biến đổi hệ tọa độ Bài tập áp dụng 4.1 4.2 4.3 4.3.1 4.3.2 4.3.3 4.4 Cửa sổ vùng quan sát Phép biến đổi từ cửa sổ - đến – vùng quan sát Phép cắt xén hai chiều Giải thuật Cohen – Sutherland Giải thuật chia trung điểm Giải thuật Liang – Barsky Bài tập áp dụng ĐỒ HỌA CHIỀU CHƢƠNG CHƢƠNG CHƢƠNG CHƢƠNG CÁC ĐỐI TƢỢNG ĐỒ HỌA CƠ BẢN CÁC PHÉP BIẾN ĐỔI ĐỒ HỌA CHIỀU PHÉP QUAN SÁT CHIỀU TRANG 1 2 4 4 4 10 10 12 13 14 14 14 14 14 15 15 15 15 16 16 16 16 16 16 17 18 18 19 20 21 22 23 24 25 5.3 5.3.1 5.3.2 5.3.3 5.3.4 5.4 Tổng quan đồ họa ba chiều Quy trình hiển thị đồ họa ba chiều Mơ hình hóa đối tượng Biểu diễn đối tượng ba chiều Biểu diễn mặt đa giác Đường cong mặt cong , đường cong mặt cong Bezier, BSpline Các phép biến đổi hình học ba chiều Phép biến đổi tỷ lệ Phép biến dạng Phép tịnh tiến Phép quay Bài tập áp dụng 6.1 6.1.1 6.1.2 6.2 6.3 6.4 Các phép chiếu Phép chiếu song song Phép chiếu phối cảnh Điểm tụ Loại bỏ mặt khuất Bài tập áp dụng 5.1 5.1.1 5.1.2 5.2 5.2.1 5.2.2 CHƢƠNG QUAN SÁT CHIỀU 25 25 25 26 27 27 29 30 30 31 31 31 33 33 34 37 38 39 44 Tên học phần: Đồ họa máy tính Loại học phần: Bộ mơn phụ trách giảng dạy: Khoa học Máy tính Khoa phụ trách: CNTT Mã học phần: 17211 Tổng số TC: TS tiết Lý thuyết Thực hành/Xemina Tự học Bài tập lớn Đồ án môn học 75 45 15 15 Điều kiện tiên quyết: Sinh viên phải học xong học phần sau đăng ký học phần này: Toán cao cấp, Tốn rời rạc, Kỹ thuật lập trình, Tin học đại cương, Cấu trúc liệu, Giải thuật Mục tiêu học phần: Cung cấp cho sinh viên kiến thức rèn luyện kỹ lập trình đồ họa máy tính đồ họa máy tính, phương pháp dựng hình, xử lý hình ảnh đồ họa Nội dung chủ yếu - Những vấn đề đồ họa máy tính - Các thuật tốn đồ họa máy tính - Đồ họa 2D/3D - Các phương pháp biến hình - Các phương pháp tạo bóng Nội dung chi tiết học phần: PHÂN PHỐI SỐ TIẾT TÊN CHƢƠNG MỤC Chƣơng I : Giới thiệu đồ họa máy tính TS LT TH/Xemina 3 16 BT KT 1.1 Giới thiệu đồ họa máy tính 1.2 Tổng quan hệ đồ họa Chƣơng II : Các đối tƣợng đồ họa 2.1 Giới thiệu đối tượng đồ họa sở 2.1.1 Các đối tượng đồ họa sở : điểm, PHÂN PHỐI SỐ TIẾT TÊN CHƢƠNG MỤC TS LT TH/Xemina 10 đường, vùng tô, văn bản, 2.1.2 Các thuộc tính đối tượng đồ họa sở 2.2 Các thuật toán vẽ điểm, đường 2.2.1 Vẽ đường thẳng 2.2.2 Vẽ đường tròn, ellipse 2.3 Các thuật tốn tơ màu 2.3.1 Thuật tốn tơ màu dựa theo đường biên 2.3.2 Thuật tốn tơ màu theo dòng quét 2.4 Bài tập áp dụng Chƣơng III: Các phép biến đổi đồ họa chiều 3.1 Các phép biến đổi sở 3.1.1 Giới thiệu phép biến đổi, biểu diễn ma trận phép biến đổi, phép biến đổi affine 3.1.2 Phép tịnh tiến 3.1.3 Phép biến đổi tỉ lệ 3.1.4 Phép quay quanh gốc tọa độ 3.1.5 Biểu diễn ma trận phép biến đổi Hệ tọa độ 3.2 Kết hợp phép biến đổi 3.2.1 Kết hợp hai hay nhiều phép tịnh tiến, phép biến đổi tỉ lệ, phép quay 3.2.2 Phép biến đổi tỉ lệ với tâm tỉ lệ 3.2.3 Phép quay quanh tâm điểm BT KT PHÂN PHỐI SỐ TIẾT TÊN CHƢƠNG MỤC TS LT TH/Xemina 12 22 10 BT KT 3.3 Một số phép biến đổi khác 3.3.1 Phép biến dạng 3.3.2 Phép đối xứng 3.3.3 Tính chất phép biến đổi affine 3.4 Phép biến đổi hệ tọa độ 3.5 Bài tập áp dụng Chƣơng IV: Phép quan sát hai chiều 4.1 Cửa sổ, Vùng quan sát 4.2 Phép biến đổi từ cửa sổ - đến – vùng quan sát 4.3 Phép cắt xén chiều 4.3.1 Giải thuật Cohen – Suntherland 4.3.2 Giải thuật chia trung điểm 4.3.3 Giải thuật Liang – Barsky 4.4 Bài tập áp dụng Chƣơng V: Đồ họa ba chiều 5.1 Tổng quan đồ họa ba chiều 5.1.1 Quy trình hiển thị đồ họa ba chiều 5.1.2 Mơ hình hóa đối tượng 5.2 Biểu diễn đối tượng ba chiều 5.2.1 Biểu diễn mặt đa giác 5.2.2 Đường cong mặt cong , đường cong mặt cong Bezier, B-Spline 5.3 Các phép biến đổi hình học ba chiều 5.3.1 Phép tịnh tiến 5.3.2 Phép quay quanh trục PHÂN PHỐI SỐ TIẾT TÊN CHƢƠNG MỤC TS LT TH/Xemina BT 15 6 KT 5.3.3 Phép biến đổi tỉ lệ 5.3.4 Kết hợp phép biến đổi 5.3.5 Các phép chuyển đổi hệ tọa độ 5.4 Bài tập áp dụng Chƣơng VI: Quan sát ba chiều 6.1 Các phép chiếu 6.2 Điểm tụ 6.3 Loại bỏ mặt khuất 6.4 Bài tập áp dụng Nhiệm vụ sinh viên : Tham dự buổi thuyết trình giáo viên, tự học, tự làm tập giáo viên giao, tham dự kiểm tra định kỳ cuối kỳ Tài liệu học tập : - Đặng Văn Đức Kỹ thuật đồ họa máy tính Viện Công nghệ thông tin 2002 Donald Hearn, M Pauline Baker, Computer Graphics, Prentice-Hall Inc., Englewood Cliffs, New Jersey, 1986 F.S.Hill, Computer graphics, 1990 Hình thức tiêu chuẩn đánh giá sinh viên: - Hình thức thi cuối kỳ : Thi viết - Sinh viên phải đảm bảo điều kiện theo Quy chế Nhà trường Bộ Thang điểm: Thang điểm chữ A, B, C, D, F Điểm đánh giá học phần: Z = 0,4X + 0,6Y Bài giảng tài liệu thức thống Bộ mơn Khoa học máy tính, Khoa Cơng nghệ thông tin dùng để giảng dạy cho sinh viên Ngày phê duyệt: / /2010 Trưởng Bộ môn: (ký ghi rõ họ tên) CHƢƠNG I GIỚI THIỆU ĐỒ HỌA MÁY TÍNH 1.1 Giới thiệu đồ họa máy tính Ngày nay, đồ họa máy tính ứng dụng rộng rãi ngành cơng nghệ thơng tin Khó mà tìm ứng dụng thương mại cơng nghệ thông tin không sử dụng thành phần hệ đồ họa máy tính Đồ họa máy tính vị trí quan trọng lĩnh vực thiết kế giao tiếp kỹ thuật Nó sở để chuyển đổi giải pháp tính tốn số sang thể hình ảnh tự nhiên cho thiết kế kỹ thuật hay muốn sáng tỏ vấn đề phức tạp Đồ họa máy tính biểu diễn hình ảnh đối tượng, quan hệ, liệu, vị trí … Đồ họa máy tính cịn có chức mơ tả kích thước đối tượng, phân tích liệu Trong thập niên cuối kỷ 20, phát triển mạnh hệ đồ họa CAD/CAM trở thành chuẩn công nghiệp trường học 1.2 Tổng quan hệ đồ họa Mục tiêu đồ họa máy tính có chức tạo thao tác hình ảnh đồ họa, nên phải có khả tạo hiệu chỉnh hình ảnh tương tác đáp ứng Các ứng dụng đồ họa đưa dẫn thuật ngữ theo yêu cầu đồ họa người dùng Thư viện đồ họa thực tương tác, làm cầu nối cho giao tiếp người dùng thiết bị vật lý đơn giản Hình 1.1 Hệ thống đồ họa Một yêu cầu hệ thống đồ họa ứng dụng, áp dụng cho nhiều hệ thiết bị vật lý, phải phát triển không phụ thuộc vào phần cúng Để có điều đó, phải có tiêu chuẩn hóa cho môi trường đồ họa mức chức năng, việc cung cấp độc lập thiết bị ngôn ngữ lập trình Sự độc lập với thiết bị cho phép chương trình ứng dụng đồ họa chạy dạng phần cứng khác Nó thực thông qua thiết bị nhập xuất logic cung cấp cho phần mềm ứng dụng thông qua thư viện đồ họa ánh xạ thiết bị vật lý cụ thể Cho tới nay, có tiêu chuẩn đồ họa phát triển nhiều năm, bao gồm: GKS(Graphics Kernel System – 1985), phát triển riêng cho thiết bị nhập xuất chiều GKS-3D bổ sung thêm khả lập trình chiều PHIGS (Programmer’s Hierarchical Graphics System – 1984) hay PHIGS+ bao gồm khả lập trình khơng gian , tạo thành thao tác liệu đồ họa phức tạp … Các tiêu chuẩn đồ họa thực tế kết việc chấp nhận công nghiệp giao diện đặc trưng, đề xuất nhiều công ty không nêu tiêu chuẩn thức Được nhắc đến số hệ X-Windows, cung cấp loạt chức nhập thao tác đồ họa chiều Sự mở rộng bắt đầu vào năm 80 hệ X-Windows chiều Để đảm bảo linh hoạt, tiêu chuẩn đồ họa thiết lập cho ứng dụng thay đổi tối thiểu, cho phép định địa thiết bị nhập xuất khác Khởi đầu, người lập trình tạo hệ thống tọa độ mơ hình, mơ tả đối tượng gọi hệ thống tọa độ thực Tiếp theo, hệ tọa độ tiêu chuẩn hệ tọa độ thiết bị Chương trình ứng dụng giao tiếp với hệ tọa độ chuẩn theo cách thức phù hợp, không quan tâm đến thiết bị xuất dùng Do đó, tạo độc lập với thiết bị việc tạo hình ảnh đối tượng 1.2.1 Hệ tọa độ thực, hệ tọa độ thiết bị hệ tọa độ chuẩn Trong lĩnh vực kỹ thuật đồ họa, phải hiểu thực chất đồ họa làm để mô tả biến đổi đối tượng giới thực máy tính Bởi vì, đối tượng giới thực mô tả tọa độ thực Trong đó, hệ tọa độ thiết bị lại sử dụng hệ tọa độ nguyên để hiển thị hình ảnh Đây vấn đề cần giải Ngồi ra, cịn có khó khăn khác với thiết bị khác có định nghĩa khác Do đó, cần có phương pháp chuyển đổi tương ứng hệ tọa độ đối tượng phải định nghĩa thành phần đơn giản để mơ tả gần với hình ảnh thực bên a.Hệ tọa độ thực: Một hệ tọa độ thực thường dùng để mô tả đối tượng giới thực hệ tọa độ Descartes Với hệ tọa độ này, điểm P biểu diễn cặp tọa độ (x p,yp) với xp, yp ∈R (xem hình 1.1) Hình 2.1 Hệ tọa độ thực Ox : gọi trục hoành; Oy : gọi trục tung xp : hoành độ điểm P; yp : tung độ điểm P b Hệ tọa độ thiết bị: Hệ tọa độ thiết bị (device coordinates) dùng cho thiết bị xuất cụ thể đó, ví dụ máy in, hình, Trong hệ tọa độ thiết bị điểm mơ tả cặp tọa độ (x,y) Tuy nhiên, khác với hệ tọa độ thực x, y ∈ N Điều có nghĩa điểm hệ tọa độ thực định nghĩa liên tục, điểm hệ tọa độ thiết bị rời rạc Ngoài ra, tọa độ x, y hệ tọa độ thiết bị biểu diễn giới hạn N c Hệ tọa độ thiết bị chuẩn: Do cách định nghĩa hệ tọa độ thiết bị khác nên hình ảnh hiển thị thiết bị xác chưa hiển thị xác thíết bị khác Người ta xây dựng hệ tọa độ thiết bị chuẩn đại diện chung cho tất thiết bị để mơ tả hình ảnh mà khơng phụ thuộc vào thiết bị Trong hệ tọa độ chuẩn, tọa độ x, y gán giá trị đoạn từ [0,1] Như vậy, vùng không gian hệ tọa độ chuẩn hình vng đơn vị có góc trái (0, 0) góc phải (1, 1) 1.2.2 Mơ hình màu Màu sắc sử dụng ứng dụng đồ họa máy tính để giúp người dùng hiểu rõ đối tượng hình học Các hình đồ họa dựa sử dụng màu sắc chromatic Chúng dựa lý thuyết não người màu sắc ánh sáng tiếp nhận phối hợp từ màu đỏ (red), xanh (green), xanh dương (blue) Nói chung, màu mơ tả thuộc tính màu sắc (hue), độ bão hòa (saturation), độ sáng (brightness); chúng xác định vị trí quang phổ màu, độ tinh khiết cường độ sáng Có hàng loạt phương pháp tạo mơ hình màu ứng dụng đồ họa Trong phần đưa mơ hình màu tiêu biểu cả, giúp tìm hiểu ứng dụng lựa chọn màu sắc thích hợp a RGB (Red - Green - Blue): Mơ hình màu RGB mơ tả màu sắc thành phần Red - Green Blue Mơ hình xem khối lập phương chiều với màu red trục x, màu Green truc y, màu Blue trục z Mỗi màu mơ hình xác định thành phần R, G, B Ứng với tổ hợp khác màu cho ta màu Trong hình lập phương trên, màu gốc (R,G,B) có gốc đối diện màu bù với Hai màu gọi bù kết hợp hai màu lại với màu trắng Ví dụ : Green - Magenta, Red - Cyan, Blue - Yellow b CMY (Cyan - Magenta - Yellow): Tương tự mơ hình màu RGB thành phần Cyan - Magenta - Yellow Do đó, tọa độ màu mơ hình CMY trái ngược với mơ hình RGB Ví dụ : màu White có thành phần (0,0,0), màu Black (1,1,1), màu Cyan (1,0,0), c HSV (Hue - Saturation - Value ): Thực chất mơ hình biến đổi mơ hình RGB Mơ hình HSV mơ tả lệnh lập phương RGB quay đỉnh Black H (Hue) góc quay trục V (value) qua đỉnh Black White Các giá trị biến thiên H, S, V sau: (Hue) sắc thái có giá trị từ 00 - 3600 S (Saturation) độ bão hồ V (Value) có giá trị từ - Các màu đạt giá trị bão hòa s = v = ... luyện kỹ lập trình đồ họa máy tính đồ họa máy tính, phương pháp dựng hình, xử lý hình ảnh đồ họa Nội dung chủ yếu - Những vấn đề đồ họa máy tính - Các thuật tốn đồ họa máy tính - Đồ họa 2D/3D - Các... thiệu đồ họa máy tính TS LT TH/Xemina 3 16 BT KT 1.1 Giới thiệu đồ họa máy tính 1.2 Tổng quan hệ đồ họa Chƣơng II : Các đối tƣợng đồ họa 2.1 Giới thiệu đối tượng đồ họa sở 2.1.1 Các đối tượng đồ họa. .. tin dùng để giảng dạy cho sinh viên Ngày phê duyệt: / /2010 Trưởng Bộ môn: (ký ghi rõ họ tên) CHƢƠNG I GIỚI THIỆU ĐỒ HỌA MÁY TÍNH 1.1 Giới thiệu đồ họa máy tính Ngày nay, đồ họa máy tính ứng dụng