Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 57 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
57
Dung lượng
795,44 KB
Nội dung
Tr-ờng đại học vinh Khoa công nghệ thông tin === === phạm thị thơm số vấn đề ®å häa hai chiỊu khãa ln tèt nghiƯp ®¹i häc Vinh, 2008 = = Tr-ờng đại học vinh Khoa c«ng nghƯ th«ng tin === === mét sè vÊn ®Ị ®å häa hai chiỊu khãa ln tèt nghiƯp đại học GV h-ớng dẫn: ts Phan lê na SV thực hiện: Phạm Thị Thơm Lớp: 45A3 - CNTT Vinh, 2008 = = MỤC LỤC Lời nói đầu Chƣơng 1: Giới thiệu đồ họa máy tính I Tổng quan đồ họa máy tính II Một số ứng dụng đồ hoạ máy tính 1 Hỗ trợ thiết kế (CDA- Computer Aided Design) Biểu diễn thông tin Lĩnh vực giải trí nghệ thuật Giáo dục đào tạo Tạo giao diện (User Interfaces) III Tổng quan hệ tọa độ Phần cứng 1.1 Thiết bị hiển thị 1.2 Các thiết bị nhập Phần mềm IV Các đối tượng đồ hoạ sở Hệ tọa độ giới thực hệ tọa độ thiết bị 1.1 Hệ tọa độ giới thực 1.2 Hệ tọa độ thiết bị Điểm Đoạn thẳng, đường gấp khúc Chƣơng 2: Các phép biến đổi đồ hoạ hai chiều I Tổng quan II Phép biến đổi đối tượng Phép tịnh tiến Phép biến đổi tỉ lệ 10 Phép quay 11 III Biến đổi tọa độ 12 Giới thiệu hệ tọa độ 12 Biểu diễn phép biến đổi dạng tọa độ nhất: 13 Kết hợp phép biến đổi 13 IV Cửa sổ đồ hoạ 15 Viewport 15 Xoá viewport 16 Tọa độ âm dương 16 V Chương trình minh hoạ phép biến đổi 17 Chƣơng 3: Hiển thị đối tƣợng hai chiều 27 I Quy trình hiển thị đối tượng hai chiều 27 Một số khái niệm 27 Hệ tọa độ quan sát hệ tọa độ thiết bị chuẩn 29 2.1 Hệ tọa độ quan sát 29 2.2 Hệ tọa độ thiết bị chuẩn 30 Chuyển đổi từ cửa sổ sang vùng quan sát 31 Các thuật tốn xén hình 32 II Các thuật toán xén điểm, đoạn thẳng 33 Thuật toán Cohen-Sutherland 34 Thuật toán Liang-Barsky 41 III Thuật toán xén đa giác 47 Kết luận 55 Tài liệu tham khảo 56 C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an LỜI NÓI ĐẦU Chúng ta sống thời đại mới, thời đại ngành công nghệ thông tin đỉnh cao phát triển Có thể nói cơng nghệ thơng tin đóng vai trị quan trọng đời sống Đất nước phát triển địi hỏi đóng góp ngành cơng nghệ thơng tin cao Ngành cơng nghệ thơng tin đóng góp lớn vào ngành kinh tế, khoa học, giáo dục,… nhằm giúp người ngày chinh phục đỉnh cao giới Chúng ta sống thời đại kinh tế cơng nghiệp hố đại hoá Đời sống người ngày nâng cao Như nhu cầu ứng dụng đồ họa ngày đòi hỏi Và ứng dụng đồ họa máy tính sống hàng ngày phát triển để đáp ứng nhu cầu thiết thực người Vì lý tơi mạnh dạn chọn đề tài “Một số vấn đề đồ họa hai chiều” làm khố luận tốt nghiệp đại học Để hồn thành khố luận, tơi nhận hướng dẫn nhiệt tình Cơ giáo - Tiến sĩ Phan Lê Na thầy khoa CNTT để hồn thành khố luận Nhân dịp cho phép tơi bày tỏ lịng biết ơn sâu sắc đến giáo Phan Lê Na Đồng thời xin cảm ơn đến thầy cô giáo khoa CNTT bạn sinh viên lớp giúp đỡ nhiều thời gian làm khoá luận Vinh, tháng 5/2008 Tác giả Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ị ®å häa hai chiỊu CHƢƠNG GIỚI THIỆU VỀ ĐỒ HỌA MÁY TÍNH I TỔNG QUAN VỀ ĐỒ HỌA MÁY TÍNH Đồ họa máy tính lãnh vực phát triển nhanh tin học, áp dụng rộng rãi nhiều lãnh vực khác thuộc khoa học, kỹ nghệ, y khoa, kiến trúc giải trí + Thuật ngữ đồ họa máy tính (Computer Graphics) đề xuất nhà khoa học người Mỹ tên William Fetter vào năm 1960 + Đồ họa máy tính ngành khoa học Tin học chuyên nghiên cứu phương pháp kỹ thuật để mơ tả thao tác đối tượng giới thực máy tính Với việc mơ tả liệu thơng qua hình ảnh màu sắc đa dạng nó, chương trình đồ họa thường thu hút người sử dụng tính thân thiện, dễ dùng, kích thích khả sáng tạo nâng cao suất làm việc II MỘT SỐ ỨNG DỤNG CỦA ĐỒ HỌA MÁY TÍNH Hỗ trợ thiết kế (CDA- Computer Aided Design) Một lợi ích lớn máy tính trợ giúp người việc thiết kế Các ứng dụng đồ họa cho phép thiết kế thiết bị khí, điện, điện tử, tơ, máy bay, phần mềm AUTOCAD Biểu diễn thông tin Đây ứng dụng sử dụng đồ họa máy tính để tạo biểu đồ, đồ thị… dùng để minh hoạ mối quan hệ nhiều đối tượng với Các ứng dụng thường sử dụng để tóm lược liệu tài chính, thống kê, khoa học… hỗ trợ đắc lực cho việc phân tích thụng tin v tr giỳp quyt nh Phạm Thị Th¬m - 45A CNTT Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ị ®å häa hai chiỊu Lĩnh vực giải trí nghệ thuật + Cho phép họa sĩ tạo hình ảnh hình máy tính Người họa sĩ tự pha màu, trộn màu, thực số thao tác: cắt, dán, tẩy, xóa, phóng to, thu nhỏ phần mềm PAINTBRUSH, CORELDRAW, + Ngoài đồ họa máy tính cịn giúp tạo chương trình trị chơi, giải trí, hỗ trợ cho kỹ xảo điện ảnh Giáo dục đào tạo Các chương trình mơ cấu trúc vật thể, tiến trình phản ứng hố học, hoạt động gói tin máy tính hỗ trợ nhiều việc giảng dạy Tạo giao diện (User Interfaces) Như chương trình ứng dụng WINDOWS, WINWORD, EXCEL đa số người sử dụng ưa chuộng nhờ tính thân thiện, dể sử dụng III TỔNG QUAN VỀ MỘT HỆ ĐỒ HỌA Phần cứng + Thiết bị hiển thị + Thiết bị nhập 1.1 Thiết bị hiển thị Màn hình thiết bị thơng dụng hệ đồ họa Các thao tác hầu hết hình dựa thiết kế ống tia âm cực (CRT- Cathode Ray Tube) Cấu tạo CRT Súng điện tử (Electron Gun) bắn chùm tia điện tử vượt qua hệ thống hội tụ (focusing) dẫn hướng (deflection) hướng tới vị trí xác định hình phủ bi mt lp phosphor Ti mi v trớ Phạm Thị Th¬m - 45A CNTT Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ị ®å häa hai chiÒu tương tác với hạt điện tử hạt phosphor phát chấm sáng nhỏ Nhưng chấm sáng mờ dần nhanh phải lặp lặp lại nhiều lần việc vẽ lại hình ảnh thật nhanh cách hướng tia điện tử trở lại vị trí cũ (Refesh CRT) Một số thuộc tính hình + Độ phân giải (resolution) số lượng điểm centimet mà vẽ theo chiều ngang chiều dọc + Kích thước vật lý hình từ độ dài đường chéo hình, dao động từ 12-17 inch lớn + Tỉ số phương (aspect ratio) tỉ lệ điểm dọc điểm ngang cần để phát sinh đoạn thẳng có độ dài đơn vị theo hướng hình Màn hình dạng điểm (Raster- Scan Display) Chùm tia điện tử quét ngang qua hình lần dịng qt từ xuống Sự bật tắt điểm sáng hình phụ thuộc vào cường độ tia điện tử Mỗi điểm hình gọi pixel Các thơng tin hình ảnh hiển thị hình vùng nhớ gọi refresh buffer frame buffer Đối với hình đen trắng vùng đệm khung gọi bitmap, với hình khác gọi pixmap Khi tạo ảnh đen trắng pixel lưu bit, giá trị 0,1 tượng trưng cho việc tắt, bật pixel hình Cịn trường hợp ảnh nhiều màu pixel lưu b bit ta có b giá trị màu cho pixel Trong hình màu người ta định nghĩa tập màu làm việc thông qua bảng tra (Lookup-Table) LUT Mỗi phần tử ca LUT nh Phạm Thị Thơm - 45A CNTT Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ò ®å häa hai chiÒu nghĩa giá trị R (Red),G (Green),B (Blue) mô tả màu Số phần tử LUT xác định từ số lượng bits/pixel VD: Nếu phần tử vùng frame buffer dùng b bit để lưu thông tin pixel LUT có 2b phần tử Tốc độ làm tươi hình dạng từ 60-80 frame/giây Đôi tốc độ làm tươi biểu diễn Hertz (Hz) Các hệ màu Không gian màu (Color space) đưa để định màu hiển thị máy tính Chúng làm đơn giản hố thao tác tính tốn cần thiết cho việc chuyển đổi màu sắc Không gian màu thiết kế dựa sở phát sinh màu phần cứng dựa cảm nhận màu sắc mắt Không gian RGB Mắt cảm nhận ba màu rõ Red (đỏ), Green (lục), Blue (xanh) Vì vậy, người ta xây dựng khơng gian màu RGB (Red,Green, Blue) tập tất màu xác định thông qua ba màu vừa nêu Hệ xem khối ba chiều với màu Red trục X, màu Green trục Y màu Blue trục Z Mỗi màu hệ xác định theo ba thành phần RGB Ví dụ: Màu Red (1, 0, 0) Màu Blue (0, 0, 1) Red + Green = Yellow Red + Green + Blue = White Ƣu điểm không gian RGB + Không gian RGB chuẩn cơng nghiệp cho thao tác đồ họa máy tính + Có thể chuyển đổi qua lại khơng gian RGB với không gian màu khác HSL, HSV, CMY Phạm Thị Thơm - 45A CNTT Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ị ®å häa hai chiỊu + Các thao tác tính tốn không gian RGB thường đơn giản Nhƣợc điểm không gian RGB + Các giá trị RGB màu khác hình khác + Sự mơ tả màu sắc giới thực không gian RGB cịn nhiều hạn chế khơng gian RGB khơng hồn toàn phù hợp với cảm nhận màu sắc người 1.2 Các thiết bị nhập + Bàn phím Xuất hầu hết máy tính, thiết bị nhập liệu vào dạng văn số + Chuột Người ta dùng chuột để trỏ chọn chức phù hợp với yêu cầu => giao tiếp người máy ngày thân thiện dễ dàng Phần mềm Phần mềm đồ họa phân làm loại: + Các cơng cụ lập trình: Cung cấp hàm đồ họa dùng ngơn ngữ lập trình bậc cao ngơn ngữ C, Pascal + Các ứng dụng đồ họa thiết kế cho người dùng khơng phải lập trình viên, cho phép người dùng tạo đối tượng hình ảnh mà khơng cần quan tâm tới việc chúng tạo VD Photoshop hay AutoCAD,… Các hàm đồ họa + Tập công cụ tạo ảnh gốc (output primitives): Cung cấp công cụ cho việc xây dựng hình ảnh Các ảnh gốc bao gồm chuỗi ký tự, thực thể hình học điểm, đường thẳng, đa giác, đường trịn, Ph¹m Thị Thơm - 45A CNTT Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ị ®å häa hai chiÒu Bit 3: (TOP) Bit 4: (BOTTOM) Giá trị tương ứng với vị trí bit mã vùng điểm vị trí tương ứng, ngược lại bit đặt Ví dụ vùng có mã 1001, nằm phía (bit 1), bên trái (bit 1) so với cửa sổ, vùng có mã 0000 cửa sổ 0101 0100 0110 0001 0000 Window 0010 1001 1000 TOP LEFT LEFT RIGHT TOP BOTTOM 1010 RIGHT BOTTOM Hình 3.7 Mã vùng quy định vị trí tng i ca vựng so vi ca s Đ-ờng thẳng Màn hình cửa sổ Giả sử đối t-ợng quan sát nằm vùng nhìn thấy, có ảnh mặt phẳng chiếu Nếu thu nhỏ mặt phẳng chiếu, hÃy xác định phần hình ảnh đối t-ợng có mặt phẳng chiếu, ý vấn đề phù hợp với yêu cầu đặt mô tả đối t-ợng máy tính Nếu coi hình mặt phẳng chiếu hay vòng hình chữ nhật (cửa sổ) hình mặt phẳng chiếu (Trong Pascal, C ta gọi vùng chiếu ViewPort) Phạm Thị Thơm - 45A CNTT Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn 38 C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Mét sè vÊn ®Ị ®å häa hai chiỊu Không giảm tổng quát ta giả sử cửa sổ mặt phẳng chiếu có kích th-ớc [Xmin, Xmax] x [Ymin,Ymax] Thuật toán Cohen Sutherland Thuật toán Cohen Sutherland giải toán làm để xác định phần đoạn thẳng có mặt phẳng chiếu Nói cách khác làm để xác định phần đ-ờng thẳng cho tr-íc cã Viewport Theo Cohen Sutherland mét cưa sỉ chia hình thành phần phần ứng víi mét m· sè gåm bit O Xmin Xmax X Ymin Ymax Y Mét ®iĨm P bÊt kú thc mặt phẳng chiếu ứng với mà gọi Kod(P) Kod(P)=b4b3b2b1 Trong bi đ-ợc xác định nh- sau: b1 = nÕu P n»m ë bª n tr¸i cđa cưa sỉ b = nÕu P nằm bê n phả i cửa sổ (1) b = nÕu P n»m ë phần bê n d-ới cửa sổ b = P nằm phần bê n trê n cửa sổ Nếu không thoả mÃn điều kiện th× b i 0, i 1, Mét điểm P(x,y) Kod(P)đ-ợc xác định theo (1) nh- sau: b1=1 nÕu xxmax b3=1 nÕu y>ymax b4=1 y