1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng Đồ họa máy tính

227 8 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Đồ họa máy tính MỤC LỤC Chƣơng TỔNG QUAN VỀ ĐỒ HOẠ MÁY TÍNH 1.1 Các khái niệm tổng quan kỹ thuật đồ họa máy tính 1.1.1 Kỹ thuật đồ họa máy tính 1.1.2.Kỹ thuật đồ họa tƣơng tác 1.2 Các kỹ thuật đồ họa 1.2.1.Kỹ thuật đồ hoạ điểm 1.2.2.Kỹ thuật đồ hoạ Vecto 1.2.3 Sự phát triển kỹ thuật hiển thị 1.3 Phân loại lĩnh vực kỹ thuật đồ họa 1.3.1 Phân loại theo mục đích xử lý liệu 1.3.2 Phân loại theo hệ tọa độ dùng kỹ thuật đồ họa 1.4.Giới thiệu số ứng dụng kỹ thuật đồ họa 1.4.1 Hỗ trợ thiết kế .8 1.4.2 Biểu diễn thông tin 1.4.3 Lĩnh vực giải trí, nghệ thuật 1.4.4 Điều khiển trình sản xuất .10 1.4.5 Lĩnh vực đồ 10 1.4.5 Giáo dục đào tạo 10 1.4.6 Giao tiếp máy tính ngƣời dùng 11 1.5 Hệ đồ họa tƣơng tác 12 1.5.1 Mơ hình hệ tọa độ tƣơng tác .12 1.5.2 Các thành phần hệ đồ họa tƣơng tác 12 1.6 Phần cứng đồ họa .15 1.6.1 Các thành phần phần cứng hệ tọa độ tƣơng tác 15 1.6.2 Các thiết bị hiển thị (thiết bị liệu) 15 1.6.3 Các thiết bị vào liệu .19 CÂU HỎI CHƢƠNG 20 Chƣơng 2CÁC GIẢI THUẬT XÂY DỰNG CÁC THỰC THỂ CƠ SỞ 22 2.1 Giới thiệu 22 2.2 Các đối tƣợng đồ họa sở .23 i Đồ họa máy tính 2.2.1 Điểm 23 2.2.2 Đƣờng thẳng, đƣờng gấp khúc 24 2.2.3 Vùng tô 25 2.2.4 Kí tự, chuỗi kí tự 26 2.3 Giải thuật sinh đƣờng thẳng 27 2.3.1 Nguyên lý chung 27 2.3.2 Thuật toán DDA (Digital Differential Analyzer) 28 2.3.3 Giải thuật Bresenham 31 2.3.4 Thuật toán MidPoint 35 2.4 Giải thuật sinh đƣờng tròn 37 2.4.1 Nguyên lý chung 37 2.4.2 Thuật toán MidPoint 38 2.4.3 Giải thuật Bresenham 43 2.5 Giải thuật sinh elip 45 2.5.1 Giải thuật Midpoint 45 2.5.2 Giải thuật Bresenham 48 2.6 Giải thuật sinh đa giác 50 2.7 Giải thuật sinh ký tự 51 CÂU HỎI VÀ BÀI TẬP CHƢƠNG 55 Hƣớng dẫn giải tập 61 Chƣơng 3CÁC GIẢI THUẬT ĐỒ HOẠ CƠ SỞ 64 3.1 Hệ toạ độ mơ hình chuyển đổi 64 3.1.1 Các hệ thống tọa độ đồ họa 64 3.1.2 Phép chuyển đổi 65 3.2 Các giải thuật xén tỉa 66 3.2.1 Khái niệm 66 3.2.2 Các giải thuật xén tỉa đoạn thẳng 66 3.2.3 Giải thuật Hodgman 76 3.3 Các giải thuật tơ miền kín 77 3.3.1 Giải thuật đƣờng biên 77 3.3.2 Giải thuật dòng quét cho việc tô màu vùng 78 ii Đồ họa máy tính CÂU HỎI VÀ BÀI TẬP CHƢƠNG 82 Hƣớng dẫn giải tập 88 Chƣơng 4CÁC PHÉP BIẾN ĐỔI HÌNH HỌC CHIỀU 92 4.1.Phƣơng pháp biểu diễn đối tƣợng không gian hai chiều 92 4.2 Phép biến đổi Afine 2D 93 4.3 Các phép biến đổi hình học sở 93 4.3.1 Phép tịnh tiến 93 4.3.2 Phép biến đổi tỉ lệ 94 4.3.2 Phép quay 95 4.3.3 Phép đối xứng 96 4.3.4 Phép biến dạng 96 4.4 Hệ tọa độ phép biến đổi 97 4.4.1 Hệ tọa độ 97 4.4.2 Biểu diễn phép biến đổi dƣới dạng tọa độ 98 4.4.3 Phép biến đổi ngƣợc 99 4.5 Kết hợp phép biến đổi .100 4.5.1 Kết hợp phép tịnh tiến 100 4.5.2 Kết hợp phép tỉ lệ .102 4.5.3 Kết hợp phép quay 104 4.5.4 Phép quay có tâm quay điểm 104 4.5.5 Phép tỉ lệ giữ nguyên điểm chốt .105 4.6 Phép biến đổi hệ tọa độ 106 CÂU HỎI VÀ BÀI TẬP CHƢƠNG 108 Hƣớng dẫn giải tập 113 Chƣơng 5CÁC PHÉP BIẾN ĐỔI HÌNH HỌC CHIỀU 123 5.1 Giới thiệu đồ họa ba chiều .123 5.1.1 Tổng quan đồ họa ba chiều 123 5.1.2 Sơ lƣợc quy trình hiển thị 124 5.1.3 Mơ hình khung nối kết (Wireframe Model) 126 5.2 Một số khái niệm 128 5.2.1 Phƣơng pháp biểu diễn điểm không gian chiều 128 iii Đồ họa máy tính 5.2.2 Phƣơng pháp biểu diễn sử dụng hệ tọa độ đồng 129 5.2.3 Công thức biến đổi Affine 130 5.2.4 Các hệ trục tọa độ theo quy ƣớc bàn tay phải bàn tay trái 131 5.3 Các phép biến đổi hình học chiều sở 131 5.3.1 Phép tịnh tiến 131 5.3.2 Phép biến đổi tỉ lệ 132 5.3.3 Phép biến dạng 133 5.3.4 Phép quay 134 5.3.5.Phép đối xứng 139 5.3.6 Kết hợp phép biến đổi affine ba chiều 144 5.4 Các phép chiếu vật thể không gian lên mặt phẳng 144 5.4.1 Định nghĩa chung 144 5.4.2 Phân loại phép chiếu 145 5.4.3 Phép chiếu song song 146 5.4.4 Phép chiếu phối cảnh (Perspective Projection) 154 5.5 Phép biến đổi mơ hình phép biến đổi hệ trục toạ độ 158 CÂU HỎI VÀ BÀI TẬP CHƢƠNG 160 Hƣớng dẫn giải tập 168 Chƣơng 6MÀU SẮC TRONG ĐỒ HỌA 175 6.1 Ánh sáng đơn sắc 175 6.1.1 Cƣờng độ sáng cách tính 175 6.1.2 Hiệu chỉnh Gama 176 6.2 Lý thuyết màu sắc đồ họa 182 6.2.1 Cảm nhận màu sắc 182 6.2.2 Yếu tố vật lý 184 6.2.3 Biểu đồ màu CIE 185 6.3 Giới thiệu hệ màu hình đồ họa 189 6.3.1 Mơ hình màu RGB 189 6.3.2.Mơ hình màu CMY 192 6.3.3 Mơ hình màu YIQ 193 6.3.4 Mơ hình màu HSV 194 iv Đồ họa máy tính 6.3.5 Mơ hình màu HLS 196 6.3.6 Chuyển đổi hệ màu 197 CÂU HỎI VÀ BÀI TẬP CHƢƠNG .215 Hƣớng dẫn giải tập 220 v Đồ họa máy tính Chƣơng 1TỔNG QUAN VỀ ĐỒ HOẠ MÁY TÍNH 1.1 Các khái niệm tổng quan kỹ thuật đồ họa máy tính Đồ họa máy tính tất liên quan đến việc sử dụng máy tính để phát sinh hình ảnh Các vấn đề liên quan tới công việc bao gồm: tạo, lƣu trữ, thao tác mơ hình (các mơ tả hình học đối tƣợng) ảnh 1.1.1 Kỹ thuật đồ họa máy tính Kỹ thuật đồ hoạ máy tính (Computer Graphics) định nghĩa nhƣ lĩnh vực cơng nghệ thơng tin mà nghiên cứu, xây dựng tập hợp công cụ (mô hình lý thuyết phần mềm) khác để kiến tạo xây dựng, lƣu trữ xử lý mô hình (model) hình ảnh (image) đối tƣợng, vật tƣợng khác sống, sản xuất nghiên cứu Các mơ hình hình ảnh kết thu đƣợc từ lĩnh vực khác nhiều ngành nghề khoa học (vật lý, toán học, thiên văn học ) bao trùm nhiều thể loại nhƣ: cấu trúc phân tử, cấu trúc sinh học, mơ hình vũ trụ Thuật ngữ kỹ thuật đồ hoạ máy tính đƣợc đề xuất nhà khoa học ngƣời Mỹ William Fetter vào năm 1960 Khi ơng nghiên cứu xây dựng mơ hình buồng lái máy bay cho hãng Boeing Mỹ William Fetter dựa hình ảnh ba chiều mơ hình ngƣời phi cơng buồng lái máy bay để xây dựng nên mơ hình tối ƣu cho buồng lái máy bay Boeing Đây phƣơng pháp nghiên cứu có tính vƣợt trội tất phƣơng pháp nghiên cứu xây dựng mơ hình buồng lái máy bay khác trƣớc đƣợc áp dụng hãng Boeing Phƣơng pháp cho phép nhà thiết kế quan sát cách trực quan vị trí ngƣời lái khoang buồng lái William Fetter đặt tên cho phƣơng pháp Computer Graphics 1.1.2.Kỹ thuật đồ họa tƣơng tác Cũng nhƣ lĩnh vực khác công nghệ thông tin, hệ thống sử dụng kỹ thuật đồ hoạ tƣơng tác hệ thống xử lý thông tin bao gồm ba thành phần với thao tác tƣơng ứng:  Nhập (vào) liệu: thông qua thiết bị vào liệu nhƣ chuột, máy quét, bàn phím  Xử lý lƣu trữ liệu  Hiển thị/ kết xuất kết quả: thông qua thiết bị nhƣ hình, máy in Đồ họa máy tính Ngồi đặc thù chung đƣợc liệt kê trên, hệ thống kỹ thuật đồ hoạ tƣơng tác cịn có đặc điểm: hệ thống này, thông tin liệu đặc trƣng đƣợc hiển thị hình cách trực quan ngƣời sử dụng quan sát, theo dõi, thay đổi giá trị khuôn dạng chúng cách tƣơng tác (interactive) thay đổi đƣợc hệ thống ghi nhận xử lý Kết thay đổi đƣợc hệ thống xử lý mơ hình, cấu trúc hình ảnh đối tƣợng hiển thị chúng hình ngƣời sử dụng mong muốn Nhập liệu Xử lý lƣu trữ Hiển thị kết USER Hình 1.1 Mơ hình chung hệ đồ họa tương tác Nhƣ mơ hình chung hệ thống sử dụng kỹ thuật đồ hoạ tƣơng tác, ngƣời sử dụng có khả giao tiếp tƣơng tác với hệ thống ba giai đoạn q trình xử lý thơng tin Hệ thống đồ hoạ tƣơng tác đƣợc thiết kế xây dựng Ivan Sutherland năm 1963 mang tên Sketchpad Hệ thống đƣợc dùng để thiết kế mạch điện bao gồm thành phần sau:  CRT hình  Bút chì sáng bàn phím bao gồm số phím bấm chức  Máy tính chứa chƣơng trình xử lý thơng tin Ngƣời sử dụng vẽ mạch điện trực tiếp lên hình thơng qua bút sáng, chƣơng trình phân tích tính tốn thơng số cần thiết mạch điện ngƣời sử dụng vẽ nên 1.2 Các kỹ thuật đồ họa Ngày số lƣợng hệ thống sử dụng kỹ thuật đồ họa tƣơng tác ngày nhiều đa dạng Tuy vào phƣơng pháp xử lý liệu hệ thống, phân kỹ thuật đồ họa thành hai loại: kỹ thuật đồ họa điểm (Sample – Based Graphics) kỹ thuật đồ họa vector (Geometry – Based Graphics) Đồ họa máy tính 1.2.1.Kỹ thuật đồ hoạ điểm Nguyên lý xây dựng mơ hình hình ảnh kỹ thuật đồ họa điểm là: Các mơ hình, hình ảnh đối tƣợng đƣợc hiển thị thông qua điểm ảnh (pixel) Đặc điểm kỹ thuật đồ họa điểm: - Có thể tạo ra, thay đổi thuộc tính, xố điểm ảnh mơ hình hình ảnh đối tƣợng - Các mơ hình hình ảnh đƣợc hiển thị nhƣmột lƣới (grid) điểm ảnh rời rạc, điểm ảnh có vị trí xác định, đƣợc hiển thị với giá trị rời rạc (số ngun) thơng số hiển thị ví dụ nhƣ màu sắc độ sáng - Tập hợp tất điểm ảnh lƣới điểm cho ta mơ hình, hình ảnh đối tƣợng ta muốn hiển thị để nghiên cứu xây dựng Có hai phƣơng pháp để tạo điểm ảnhtrong kỹ thuật đồ họa điểm: - Dùng phần mềm để vẽ trực tiếp điểm ảnh một, dựa lý thuyết mô để xây dựng nên đối tƣợng hình ảnh thực vật - Rời rạc hóa (số hóa) hình ảnh thực đối tƣợng, sau sửa đổi xử lý mảng điểm ảnh thu đƣợc theo phƣơng pháp khác để thu đƣợc hình ảnh đặc trƣng đối tƣợng Hình 1.2 Ví dụ ảnh đồ họa điểm Đồ họa máy tính Hình 1.3 Kỹ thuật đồ họa điểm 1.2.2.Kỹ thuật đồ hoạ Vector Nguyên lý kỹ thuật xây dựng mô hình hình học (geometrical model) cho hình ảnh đối tƣợng, xác định thuộc tính mơ hình hình học, sau dựa mơ hình để thực q trình tơ trát (rendering) để hiển thị điểm mơ hình, hình ảnh đối tƣợng Mơ hình hình ảnh phải lột tả cách xác làm bật điểm hình ảnh Thơng thƣờng q trình mơ hình hóa sử dụng phƣơng pháp thiết kế từ xuống (top-down) kết thu đƣợc sơ đồ phân cấp Sơ đồ cần phải rõ thành phần sở đối tƣợng phƣơng thức kết nối thành phần Ở kỹ thuật này, ta lƣu trữ mơ hình tốn học thành phần mơ hình hình học với thuộc tính tƣơng ứng mà khơng cần lƣu lại tồn tất pixel hình ảnh đối tƣợng Các thành phần đƣợc mơ tả mơ hình hình học đối tƣợng đƣợc gọi thực thể sở hình học mơ hình hình học Hình ảnh đƣợc xây dựng từ thực thể sở sau đƣợc tơ trát theo điểm ảnh nhƣng điểm ảnh không đƣợc lƣu trữ nhƣ thành phần mơ hình Nhƣ hình ảnh đƣợc tơ trát từ nhiều điểm nhìn góc nhìn khác dựa mơ hình mẫu Đồ họa máy tính // kiểm tra trường hợp ánh sáng không màu if( s = ) begin r = g = b = v; end; h /= 60; i = floor( h ); f = h - i; p = v * ( - s ); q = v * ( - s * f ); t = v * ( - s * ( - f ) ); // Xác định giá trị r, g, b if (i= 0) begin r = v; g = t; b = p; end; if (i=1) begin r = q; g = v; b = p; end; if (i= 2) begin r = p; g = v; b = t; 207 Đồ họa máy tính end; if (i= 3) begin r = p; g = q; b = v; end; if (i= 4) begin r = t; g = p; b = v; end; if (i=5) begin // case 5: r = v; g = p; b = q; end; End Giải thuật chuyển đổi từ RGB sang HSV procedure rgb_to_hsv () Begin h: Sắc độ màu [0-360] với màu đỏ điểm s: Độ bão hòa [0-1] v: Giá trị cường độ sáng [0-1] Max: Hàm lấy giá trị maximum Min: Hàm lấy giá trị minimum 208 Đồ họa máy tính //Xác định giá trị cường độ sáng rc = r / 255.0; gc =g / 255.0; bc = b / 255.0; max = MAX(rc, MAX(gc, bc)); = MIN(rc, MIN(gc, bc)); delta = max - min; //xác định giá trị cường độ sáng V=max; //Xác định độ bão hòa if (max 0.0) s = delta / max; else s = 0.0; //xác định sắc độ màu if (s = 0.0) begin h = 0.0; end; else begin // Màu nằm khoảng vàng đỏ tía(magenta) if (rc = max) h = (gc - bc) / delta; else //Màu nằm Vàng(yellow) khoảng xanh tím if (gc = max) h = + (bc - rc) / delta; 209 (cyan) Đồ họa máy tính else //Màu nằm khoảng đỏ tươi (magenta) xanh ngọc(cyan) if (bc = max) begin h = + (rc - gc) / delta; h=60*h; end; // Các loại giá trị âm if (h < 0)h += 360.0; end; End Giải thuật chuyển đổi từ HLS sang RGB procedure HSL2RGB(real h, sl, l) Begin real v; real r, g, b; h = h/360; r = l; // default to gray g = l; b = l; v = (l 0) begin real m; real sv; integer sextant; real fract, vsf, mid1, mid2; 210 Đồ họa máy tính m = l + l - v; sv = (v - m) / v; h *= 6.0; sextant = (int)h; fract = h - sextant; vsf = v * sv * fract; mid1 = m + vsf; mid2 = v - vsf; switch (sextant) begin case 0: r = v; g = mid1; b = m; break; case 1: r = mid2; g = v; b = m; break; case 2: r = m; g = v; b = mid1; break; case 3: r = m; g = mid2; b = v; 211 Đồ họa máy tính break; case 4: r = mid1; g = m; b = v; break; case 5: r = v; g = m; b = mid2; break; end; end; r = r*255; g = g*255; b = b*255 ; write("HSL to RGB\nR = ",r) ; write(" G = ",g); write(" B = ",b); End Giải thuật chuyển đổi từ RGB sang HLS procedure RGB2HSL(real R, G, B) Begin real r = R / 255.0; real g = G / 255.0; real b = B / 255.0; real v,m,vm; real r2, g2, b2; real h,s,l; 212 Đồ họa máy tính h = 0; s = 0; l = 0; v = MAX(r,g); v = MAX(v, b); m = MIN(r, g); m = MIN(m, b); l = (m + v) / 2.0; if (l 0.0) s /= (l

Ngày đăng: 31/12/2021, 22:47

Xem thêm: