Bài giảng học phần đồ họa máy tính với C (đại học Hồng Đức) giảng viên Lê Thị Hồng CHƯƠNG 1: GIỚI THIỆU VỀ ĐỒ HỌA MÁY TÍNH 1.1. KHÁI NIỆM VỀ ĐỒ HỌA MÁY TÍNH Đồ họa máy tính là tất cả những gì liên quan đến việc sử dụng máy tính để phát sinh ra hình ảnh. Các vấn đề liên quan tới công việc này bao gồm: tạo, lưu trữ, thao tác trên các mô hình (các mô tả hình học của đối tượng) và các ảnh. Đồ họa máy tính bao gồm việc thiết kế phần cứng như thiết bị hiển thị, các thuật toán cần thiết để phát sinh các đường trên các thiết bị này, các phần mềm được sử dụng cho cả người lập trình hệ thống và người lập trình ứng dụng đồ họa và các chương trình ứng dụng tạo ảnh bằng máy tính. Đồ họa máy tính cung cấp một trong những phương cách tự nhiên nhất cho việc truyền đạt thông tin với máy tính. Ngày nay, trong nhiều quá trình thiết kế, cài đặt và xây dựng, thông tin mà hình ảnh mang lại là hầu như không thể thiếu được. Đồ họa máy tính tương tác là một trong những phương tiện mang lại thêm nhiều sự thuận lợi cho người dùng trong việc phát sinh hình ảnh kể từ khi có phát minh của máy ảnh và truyền hình. Có nhiều cách tiếp cận trong việc học môn đồ họa, trải rộng từ việc nghiên cứu phần cứng tới việc học để sử dụng đồ họa máy tính chỉ trong một lĩnh vực chuyên biệt nào đó như là thiết kế mạch tích hợp cao. Ở đây chúng ta tiếp cận từ góc độ của người lập trình ứng dụng, đó là người sử dụng tất cả các hỗ trợ của phần cứng, các công cụ phần mềm để xây dựng nên các ứng dụng. Tuy nhiên để có thể thiết kế và cài đặt các chương trình ứng dụng đồ họa được tốt, ngoài việc tìm hiểu các khả năng của công cụ lập trình, chúng ta cũng cần phải nắm vững các khái niệm về phần cứng; các vấn đề, các nguyên lí liên quan đến cài đặt phần mềm, các thuật toán, các ứng dụng,… 1.2. MỘT SỐ ỨNG DỤNG CỦA ĐỒ HỌA MÁY TÍNH Đồ họa máy tính được sử dụng trong rất nhiều lĩnh vực khác nhau như công nghiệp, thương mại, quản lí, giáo dục, giải trí, … Số lượng các chương trình đồ họa ứng dụng thật khổng lồ và phát triển liên tục, sau đây là một số ứng dụng tiêu biểu: 1.2.1. Hỗ trợ thiết kế (CAD Computer Aided Design): cao ốc, ô tô, máy bay, tàu thủy, tàu vũ trụ, máy tính, trang trí mẫu vải, và rất nhiều sản phẩm khác. Gồm 2 bước chính Phác thảo của phần khung, mà từ đó có thể thấy được toàn bộ hình dạng và các thành phần bên trong của các đối tượng. Sử dụng kĩ thuật này, người thiết kế sẽ dễ dàng nhận thấy ngay các thay đổi của đối tượng khi tiến hành hiệu chỉnh các chi tiết hay thay đổi góc nhìn,…. Kết hợp các mô hình chiếu sáng, tô màu và tạo bóng bề mặt sẽ được kết hợp để tạo ra kết quả cuối cùng rất gần với thế giới thực. 1.2.2. Biểu diễn thông tin Dùng để phát sinh các biểu đồ, đồ thị, … dùng minh họa mối quan hệ giữa nhiều đối tượng với nhau. Dùng để tóm lược các dữ liệu về tài chính, thống kê, kinh tế, khoa học, toán học, … giúp cho việc nghiên cứu, quản lí, … một cách có hiệu quả. 1.2.3. Giải trí, nghệ thuật Các chương trình máy tính như Paint Shop Pro, Adobe Photoshop, 3D Studio, … hỗ trợ rất đắc lực cho các họa sĩ, các nhà tạo mẫu trong việc thiết kế các hình ảnh sống động và rất thực. Giúp tạo ra các chương trình trò chơi, giải trí; hỗ trợ cho các kĩ xảo điện ảnh, cho các nhà làm phim. Có nhiều bộ phim rất nổi tiếng nhờ vào kĩ xảo điện ảnh như : Công viên Khủng long kỉ Jura (Jurassic Park), Titanic, Thế giới nước (Water World), …
TRƯỜNG ĐẠI HỌC HỒNG ĐỨC KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG BÀI GIẢNG HỌC PHẦN ĐỒ HOẠ MÁY TÍNH VỚI C (DÙNG CHO ĐẠI HỌC & CAO ĐẲNG CNTT) Giảng viên: Lê Thị Hồng CHƯƠNG 1: GIỚI THIỆU VỀ ĐỒ HỌA MÁY TÍNH 1.1 KHÁI NIỆM VỀ ĐỒ 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 Đồ họa máy tính bao gồm việc thiết kế phần cứng thiết bị hiển thị, thuật toán cần thiết để phát sinh đường thiết bị này, phần mềm sử dụng cho người lập trình hệ thống người lập trình ứng dụng đồ họa chương trình ứng dụng tạo ảnh máy tính Đồ họa máy tính cung cấp phương cách tự nhiên cho việc truyền đạt thông tin với máy tính Ngày nay, nhiều q trình thiết kế, cài đặt xây dựng, thơng tin mà hình ảnh mang lại thiếu Đồ họa máy tính tương tác phương tiện mang lại thêm nhiều thuận lợi cho người dùng việc phát sinh hình ảnh kể từ có phát minh máy ảnh truyền hình Có nhiều cách tiếp cận việc học mơn đồ họa, trải rộng từ việc nghiên cứu phần cứng tới việc học để sử dụng đồ họa máy tính lĩnh vực chuyên biệt thiết kế mạch tích hợp cao Ở tiếp cận từ góc độ người lập trình ứng dụng, người sử dụng tất hỗ trợ phần cứng, công cụ phần mềm để xây dựng nên ứng dụng Tuy nhiên để thiết kế cài đặt chương trình ứng dụng đồ họa tốt, ngồi việc tìm hiểu khả cơng cụ lập trình, cần phải nắm vững khái niệm phần cứng; vấn đề, nguyên lí liên quan đến cài đặt phần mềm, thuật toán, ứng dụng,… 1.2 MỘT SỐ ỨNG DỤNG CỦA ĐỒ HỌA MÁY TÍNH Đồ họa máy tính sử dụng nhiều lĩnh vực khác cơng nghiệp, thương mại, quản lí, giáo dục, giải trí, … Số lượng chương trình đồ họa ứng dụng thật khổng lồ phát triển liên tục, sau số ứng dụng tiêu biểu: 1.2.1 Hỗ trợ thiết kế (CAD - Computer Aided Design): cao ốc, ô tô, máy bay, tàu thủy, tàu vũ trụ, máy tính, trang trí mẫu vải, nhiều sản phẩm khác Gồm bước - Phác thảo phần khung, mà từ thấy tồn hình dạng thành phần bên đối tượng Sử dụng kĩ thuật này, người thiết kế dễ dàng nhận thấy thay đổi đối tượng tiến hành hiệu chỉnh chi tiết hay thay đổi góc nhìn,… - Kết hợp mơ hình chiếu sáng, tơ màu tạo bóng bề mặt kết hợp để tạo kết cuối gần với giới thực 1.2.2 Biểu diễn thông tin - Dùng để phát sinh biểu đồ, đồ thị, … dùng minh họa mối quan hệ nhiều đối tượng với - Dùng để tóm lược liệu tài chính, thống kê, kinh tế, khoa học, toán học, … giúp cho việc nghiên cứu, quản lí, … cách có hiệu 1.2.3 Giải trí, nghệ thuật - Các chương trình máy tính Paint Shop Pro, Adobe Photoshop, 3D Studio, … hỗ trợ đắc lực cho họa sĩ, nhà tạo mẫu việc thiết kế hình ảnh sống động thực - Giúp tạo chương trình trị chơi, giải trí; hỗ trợ cho kĩ xảo điện ảnh, cho nhà làm phim Có nhiều phim tiếng nhờ vào kĩ xảo điện ảnh : Công viên Khủng long kỉ Jura (Jurassic Park), Titanic, Thế giới nước (Water World), … 1.2.4 Giáo dục đào tạo - Hiện chương trình mơ cấu trúc vật thể, tiến trình phản ứng hóa học, hoạt động gói tin mạng máy tính, … dùng nhiều việc hỗ trợ giảng dạy - Trong đào tạo, ứng dụng mô dùng để kiểm tra trình độ người lái, huấn luyện phi công, điều khiển giao thông, … 1.2.5 Giao tiếp người máy - Mọi ứng dụng phải có giao diện giao tiếp với người dùng Giao diện đồ họa thực cách mạng mang lại thuận tiện thoải mái cho người dùng ứng dụng Các ứng dụng dựa hệ điều hành MS Windows minh họa trực quan giao diện đồ họa 1.3 TỔNG QUAN VỀ MỘT HỆ ĐỒ HỌA: Một hệ đồ họa có hai thành phần chính: - Phần cứng: thiết bị hiển thị (màn hình, máy in,…) nhập liệu (bàn phím, chuột,…) - Phần mềm: cơng cụ lập trình trình ứng dụng đồ họa 1.3.1 Phần cứng a) Thiết bị hiển thị Màn hình thiết bị hiển thị 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) Màn hình CRT (cathode ray tube) Một chùm tia điện tử (tia âm cực) phát từ súng điện tử, vượt qua cuộn lái tia dẫn đến vị trí xác định hình phủ lớp phosphor Tại vị trí tương tác với tia điện tử hạt phosphor phát lên chấm sáng nhỏ Nhưng chấm sáng mờ dần nhanh nên cần có cách trì ảnh hình Một cách là: lặp lặp lại nhiều lần việc vẽ lại ảnh thật nhanh cách hướng tia điện tử trở lại ví trí cũ (làm tươi) Số lượng tối đa điểm hiển thị CRT gọi độ phân giải Cuộn lái tia ngang Hệ điều chỉnh tiêu điểm Màn hình(phủ photpho) Tia điện tử Súng điện tử Cuộn lái tia dọc Hình 1.1.: Cơng nghệ hình CRT Hình 1.2: Màn hình CRT màu Nhận xét: Ưu điểm: Đáp ứng nhanh (có độ phân giải cao) Nhược điểm: - Màu sắc đa dạng (Có độ sâu rộng) - Lớn nặng (typ 70x70 cm, 15 kg) - Màu sắc bão hoà tự nhiên - Tiêu tốn nguồn điện cao (typ 40W) - Công nghệ không đắt hồn thiện - Có hại cho sức khoẻ trường điện từ từ tính - Góc nhìn rộng, tương phản độ sáng cao - Màn hình nhấp nháy (at 50-80Hz) - Hình hay bị méo góc Màn hình dạng điểm (Raster Display): m cột pixel n dịng Hình 1.3 Màn hình raster Thường gặp số dạng hình sử dụng CRT cơng nghệ truyền hình Mỗi điểm hình gọi pixel Các thông tin ảnh hiển thị hình lưu trữ vùng nhớ gọi vùng đệm làm tươi vùng đệm khung Vùng lưu trữ tập giá trị cường độ sáng toàn điểm hình ln tồn cách song ánh điểm hình phần tử vùng Khi hiển thị ảnh hình, tia điện tử quét hàng (scan line) từ xuống từ trái qua phải với tần xuất 30 lần/s Trong trường hợp này, khoảng thời gian lần làm tươi lại vùng hình lớn Do gây tượng nhấp nháy Để khắc phục tượng trên, người ta chia dòng qt thành nhóm: - Các dịng qt chẳn - Các dịng qt lẻ Và qt ln phiên nhóm chẳn lẻ để tạo ảnh đan chéo Hình 1.4 Phối hợp dòng chẳn lẻ Để tạo hình ảnh đen trắng, đơn giản cần lưu thơng tin Pixel bít (0,1) Trong trường hợp ảnh nhiều màu cần nhiều bít hơn, thơng tin pixel lưu b bít ta có 2b giá trị mầu phân biệt cho pixel Trong hình màu, người ta định nghĩa tập màu làm việc bảng tra (LookUp Table - LUT) Mỗi phần tử LUT định nghĩa ba giá trị (RGB) mô tả màu Khi cần sử dụng màu, ta cần định số thứ tự tương ứng màu LUT, số phần tử bảng LUT số màu hiển thị lúc hình Việc làm tươi hình dạng thực tốc độ 60 - 80 frame/giây Đôi tốc độ làm tươi biểu diễn đơn vị Hertz (Hz - số chu kỳ trên/giây), chu kỳ tương ứng với frame Vậy tốc độ làm tươi 60 frame/giây đơn giản 60 Hz Khi đạt đến cuối dòng quét, tia điện tử quay trở lại bên trái hình để bắt đầu dịng qt Việc quay trở bên trái hình sau làm tươi dòng quét gọi tia hồi ngang (Horizontal retrace) Và tới cuối frame, tia điện tử (tia hồi dọc - Vertical retrace) quay trở lại góc bên trái hình để chuẩn bị bắt đầu frame * Màn hình tinh thể lỏng (Liquid Crystal Display – LCD) Dựa vào công nghệ truyền ánh sáng qua điện cực mà đặt cuộn dây xoắn Khi chưa có từ trường (chưa có dịng điện) cuộn dây ánh sáng truyền thẳng, có từ trường ánh sáng truyền đổi chiều Hình 1.5 Cơng nghệ truyền ánh sáng hình tinh thể lỏng Nhận xét: Ưu điểm: Nhược điểm: - Hình dáng nhỏ, trọng lượng nhẹ (approx 1/6 of - Giá thành cao (presently 3x CRT) CRT, typ 1/5 of CRT) - Tiêu tốn nguồn thấp (typ 1/4 of CRT) - Góc nhìn hẹp (typ +/- 50 degrees) - Độ tương phản thấp (typ 1:100) - Màn hình phẳng tuyệt đối nên khơng méo - Độ chói (độ ngời) thấp (typ 200 cd/m2) góc - Màu sắc đều, ảnh sinh động - Khơng bị hiệu ứng điện từ trường - Có thể hình vừa lớn vừa rộng (>20 inch) * CÁC HỆ MÀU Trong tin học, vấn đề cần quan tâm mối tương tác qua lại cảm nhận màu sắc người với phận phần cứng hiển thị màu sắc hình máy tính với phần mềm thiết kế Bảng trình bày mối quan hệ này: Khơng gian màu đưa để định màu hiển thị máy tính chúng làm đơn giản hóa 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 (ví dụ không gian RGB) dựa cảm nhận màu sắc mắt (như không gian HSL) Với ứng dụng, việc chọn không gian màu để sử dụng tùy thuộc vào số nhân tố sau: độ xác mà nhà thiết kế cần kiểm sốt màu sắc, yêu cầu tương tác màu sắc tốc độ tính tốn cho ứng dụng Khơng gian RGB Khơng gian RGB mơ tả màu sắc ba thành phần Red, Green, Blue Không gian minh họa khối lập phương với trục R, G, B Mỗi màu không gian RGB biểu diễn vector thông qua ba vector sở Red, Green, Blue Do đó, ứng với tổ hợp khác ba màu cho ta màu Hình 1.6 - Mơ hình khơng gian RGB Sự cảm nhận người Đặc điểm phần cứng Đặc điểm phần mềm Màu sắc Các màu hiển thị gốc Thuật tốn khơng gian màu Sắc độ màu (Hue) Bước sóng (WaveLength) Độ bão hịa (Saturation) Sự màu Độ sáng hay độ chói Cường độ sáng Sự "rung" hình Tốc độ làm tươi (refresh) Hiệu chỉnh gamma Một số thuận lợi dùng 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ác thao tác màu sắc tính tốn không gian màu khác cuối cần phải chuyển khơng gian RGB để hiển thị hình (do thiết kế phần cứng dựa mơ hình RGB) - Có thể chuyển đổi qua lại không gian RGB với không gian màu khác CIE, CMY, HSL, HSV, - Các thao tác tính tốn khơng gian RGB thường đơn giản Một số bất lợi : - Các giá trị RGB màu khác hình khác nghĩa giá trị RGB màu tìm hình màu khơng sinh màu hình khác - Sự mô tả màu giới thực khơng gian RGB cịn nhiều hạn chế khơng gian RGB khơng hồn tồn phù hợp với cảm nhận màu sắc người Hai điểm phân biệt khơng gian RGB, với mắt người thể hai màu khác Chính điều mà khơng gian RGB ánh xạ trực tiếp đến chiều cảm nhận khác (như hue, saturation, lightness) hue (sắc độ) Khơng gian HSL Khơng gian có trọng không gian RGB đến thành phần cảm nhận màu sắc mắt (Hue, Saturation, Lightness) Tuy nhiên, không gian HSL thực phép biến đổi gần không gian RGB mà Không giống không gian màu khác xây dựng cảm nhận màu sắc mắt, khơng gian HSL cịn bị lệ thuộc vào phần cứng CRT Không gian HSL biểu diễn hệ tọa độ trụ, hình minh họa hai hình nón úp vào H (Hue) toạ độ ứng với góc quay, S (Saturation) tọa độ gốc, L trục thẳng đứng Hầu hết màu đạt bão hòa S = L = 0.5 • Phép quay quanh trục y Một cách tương tự ta có: Biểu diễn dạng ma trận: z' = z cosθ − x sin θ x' = z sin θ + x cosθ y' = y cosθ − sin θ 0 0 cosθ 0 1 sin θ 0 Ma trận chuyển đổi tương ứng là: − sin θ 0 cosθ 0 Ry = sin θ 0 0 cosθ 0 1 Hình 6.8 - Phép quay quanh trục y • Phép quay quanh trục x Tương tự: y' = y cosθ − z sin θ z' = y sin θ + z cosθ x' = x Biểu diễn dạng ma trận: 0 cosθ [x' y' z' 1] = [x y z 1] 0 − sin θ 0 Ma trận chuyển đổi tương ứng là: 1 0 cosθ Rx = 0 − sin θ 0 sin θ cosθ 0 sin θ 0 0 cosθ 0 1 0 0 0 1 Hình 6.8 - Phép quay quanh trục x d) Phép lấy đối xứng * Lấy đối xứng qua mặt phẳng xy + Biến đổi làm thay đổi trục z giữ nguyên trục x, y + Biểu diễn ma trận phản chiếu điểm so với mặt phẳng xy sau - Lấy đối xứng qua mặt phẳng xy 1 0 RFz = 0 0 0 0 10 − 0 00 - Lấy đối xứng qua mặt phẳng yz −1 0 RFx = 0 0 0 0 0 0 0 1 - Lấy đối xứng qua mặt phẳng xz 1 0 0 - Lấy đối xứng qua gốc tọa độ (0, 0, 0) − 0 0 0 − RFy = 0 0 0 0 1 0 RFo = 0 0 −1 0 −1 0 0 1 33 [x' y' z' 1] = [x y z 1] 0 1 0 0 1 0 3.2.4 Các phép chuyển đổi kết hợp Phép co dãn đối tượng theo điểm cố định làm tương tự 2D • Phép quay quanh trục Có thể thiết lập phép quay theo năm bước sau: Tịnh tiến trục quay cho trục quay qua gốc tọa độ Quay trục quay trùng với trục tọa độ Thực xoay đối tượng góc θ Áp dụng phép quay ngược để đưa trục quay trở hướng ban đầu Áp dụng phép tịnh tiến ngược để đưa trục quay trở vị trí ban đầu Có thể chuyển đổi trục quay thành ba trục tọa độ Chẳng hạn chọn trục z làm ví dụ, bước sau cho ta biết cách xây dựng ma trận chuyển đổi để đưa trục quay trục z đưa trục quay vị trí ban đầu Trục quay xác định hai điểm tọa độ điểm hướng góc quay (hoặc hướng cosine) trục quay ba trục tọa độ Giả thiết trục quay xác định hai điểm hướng quay hướng ngược chiều kim đồng hồ nhìn dọc theo trục từ P tới P1 Vector trục xác định hai điểm sau: y V = ( x2 − x1 , y2 − y1 , z2 − z1 ) P2(x2,y2,z2) u Một vector đơn vị u xác định dọc theo trục quay sau: u= a= P1(x1,y1,z1) V = (a, b, c) V x − x1 V , b =2 x z , c =2 |V| |V| Bước 1: Xác định lại vị trí trục quay cho qua gốc tọa độ Để xác định hướng quay phù hợp, di chuyển cho P1 trùng với gốc Ma trận tịnh tiến xác định sau: 1 0 0 y 0 T= 0 − x1 − y1 0 − z1 1 u z x Bước 2: Đưa trục quay trục z Sử dụng phép quay quanh trục tọa độ để đưa trục xoay trục z theo hai bước B2.1 Xoay quanh trục x cho véc tơ u mặt phẳng xz B2.2 Xoay quanh trục y để đem u trục z B2.1.Tìm ma trận xoay quanh x để đưa u mặt phẳng xz - Góc xoay góc ánh xạ véctơ u vào mặt yz (là u’) trục dương z - Tìm góc quay α: Để tính ma trận xoay ta khơng cần tìm cụ thể α mà cần tìm sin cos α Việc tìm sin, cos dựa vào tích có hướng tích vơ hướng hai vector u’ uz + Tính cos(α): cosα = = , u' u z d u' = + b + c = b + c = d 34 y − y1 z − z1 0 u'.u z c uz = u'.uz = 0.0 + b.0 + c.1 = c + Tính sin(α): Ta có: Mặt khác: u ' u z = u x u' u z sin α = u x b + c sin α = u x d sin α ux u' xu z = uy b b0 sin α = uz c = u xb Do vậy: d Từ suy ma trận xoay quanh trục x là: 0 1 0 cos α Rx(α ) = 0 − sin α Trong đó: b=2 |V| , c =2 sin α cosα 0 1 0 c / d = 0 0 − b / d 1 0 0 b / d 0 c / d 0 1 d = b2 + c2 |V| 2 B2.2 Xoay quanh trục y để đem u trục z: nghĩa tìm ma trận xoay véctơ đơn vị u’’ mặt xz quanh trục y vào trục dương z - Các thành phần u”: + Xoay quanh trục x nên thành phần x véctơ có giá trị a + Vì xoay u’ vào trục z thành phần z u” có giá trị d + Thành phần y u” có giá trị - Góc cần xoay góc β theo chiều kim đồng hồ Sin cos β tính dựa tích có hướng tích vơ hướng u’’ uz + Tính cos( β ): cos β = u".u z u" u z =d u" = a + b + c Trong đó: |uz| =1 Theo tính chất cosine hướng: a2+b2+c2 =1 -> |u"|=1 + Tính sin( β ): Ta có: u" xu z = −u y u" u z sin β = −u y 1.1.sin β = −u y sin β Mặt khác: ux " uy uz d = u y (−a) 0 35 0 0 y − y1 0 z − z1 V = V.V = ((x − x1 ) + ( y − y1 ) + (z − z1 ) ) u xu z = a d 0 Ry(β ) = - Vì ta xoay quanh trục y với góc âm (- β ) nên: − a Bước 3: thực xoay đối tượng 0 - Góc quay θ, trục quay trục z dương Ma trận quay là: Do vậy: sin (β ) = a sin θ cosθ − sin θ cosθ Rz(θ ) = 0 0 a 0 0 d 0 0 1 0 0 0 1 Bước 4&5: Để hoàn chỉnh phép quay quanh trục cho trước, cần phải chuyển trục quay vị trí ban đầu cách áp dụng phép chuyển đổi ngược Do ma trận chuyển đổi cuối là: R(θ)=T.Rx(α).Ry(β).Rz(θ) R −1 ( β ) R −1 (α ) T-1 BÀI TẬP Tìm ma trận biến đổi để biến tam giác ABC (A(3,3), B(5,5), C(7,2)) thành tam giác A’B’C’ hình vẽ Biết rằng: C’(1,1),A’C’=2AC, góc tạo AC trục dương Ox góc tạo C' A' trục dương Ox Tìm ma trận biến đổi để biến tam giác ABC (A(2,5), B(3,8), C(6,4)) thành tam giác A’B’C’ hình vẽ Biết rằng: C’(3,-3), C’B’=2CB, C’B’//Ox Tìm ma trận biến đổi để biến tam giác ABC (A(2,2), B(3,4), C(6,1)) thành tam giác A’B’C’ hình vẽ Biết rằng: C’(5,10), B'C ' = CB y x 36 Tìm ma trận biến đổi tổng quát để thực liên tiếp phép biến đổi sau không gian 3D: - Phép lấy đối xứng qua mặt phẳng (P) biết mặt phẳng (P) qua điểm M(7,-4,2) có vector pháp tuyến n(1,1,0) - Phép co dãn S(1,3,1) với tâm co dãn điểm N(2,9,7) - Phép xoay quanh đường thẳng d góc 900 biết đường thẳng d qua điểm N(-5,5,7) có vector phương v(0,1,0) Tìm ma trận biến đổi tổng quát để thực liên tiếp phép biến đổi sau không gian 3D: - Phép lấy đối xứng qua mặt phẳng (P) biết mặt phẳng (P) qua điểm A(0,1,-2), B(0,4,-2), C(-4,1,2) - Phép lấy đối xứng qua điểm N(8,-3,-1) - Phép xoay quanh đường thẳng d góc 900 biết đường thẳng d qua điểm N(2,-4,2) có vector phương v(1,0,0) Tìm ma trận biến đổi tổng quát để thực liên tiếp phép biến đổi sau không gian 3D: - Phép lấy đối xứng qua mặt phẳng (P) biết mặt phẳng (P) qua điểm A(8,-2,5) có vector pháp tuyến n(1,0,0) - Phép co dãn S(2,3,1) với tâm co dãn điểm B(-2,1,1) - Phép xoay quanh đường thẳng d góc 900 biết đường thẳng d qua điểm N(-2,5,-1) điểm M(-2,10,-6) 37 ... loại: c? ?ng c? ?? lập trình trình ứng dụng đồ họa ph? ?c vụ cho m? ?c đích C? ?c cơng c? ?? lập trình cung c? ??p tập hàm đồ họa dùng ngơn ngữ lập trình c? ??p cao C, Pascal, Ví dụ thư viện đồ họa ngôn ngữ C, Pascal... vi? ?c nghiên c? ??u phần c? ??ng tới vi? ?c h? ?c để sử dụng đồ họa máy tính lĩnh v? ?c chuyên biệt thiết kế mạch tích hợp cao Ở tiếp c? ??n từ g? ?c độ người lập trình ứng dụng, người sử dụng tất hỗ trợ phần c? ??ng,...CHƯƠNG 1: GIỚI THIỆU VỀ ĐỒ HỌA MÁY TÍNH 1.1 KHÁI NIỆM VỀ ĐỒ 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