Giới thiệu về đồ họa máy tính 1.1 Khái niệm Đồ họa máy tính computer graphics là một lĩnh vực khoa học máy tính nghiên cứu về cơ sở toán học, các thuật toán cũng như các kĩ thuật để cho
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO MÔN HỌC
ĐỒ HỌA MÁY TÍNH XÂY DỰNG HÌNH ẢNH XE ĐẠP CHUYỂN ĐỘNG
Hà Nội, tháng 5 năm 2024
PHIẾU CHẤM ĐIỂM
Sinh viên thực hiện : NGUYỄN THỊ TRÀ GIANG
NGUYỄN THỊ NGỌC ANH Giảng viên hướng dẫn
Ngành
: TS NGÔ NGỌC THÀNH : CÔNG NGHỆ THÔNG TIN
Trang 2Sinh viên thực hiện:
Nguyễn Thị Trà
Giang
Nguyễn Thị Ngọc
Anh
Giảng viên chấm:
Giảng viên 1:
Giảng viên 2:
Trang 3MỤC LỤC
Trang 4LỜI NÓI ĐẦU
Trang 5DANH MỤC HÌNH ẢNH
Trang 6DANH MỤC BẢNG BIỂU
Trang 7CHƯƠNG 1: TÌM HIỂU VỀ ĐỒ HỌA MÁY TÍNH
1 Giới thiệu về đồ họa máy tính
1.1 Khái niệm
Đồ họa máy tính (computer graphics) là một lĩnh vực khoa học máy tính nghiên cứu về cơ sở toán học, các thuật toán cũng như các kĩ thuật để cho phép tạo, hiển thị và điều khiển hình ảnh trên màn hình máy tính Đồ họa máy tính có liên quan ít nhiều đến một số lĩnh vực như đại số, hình học giải tích, hình học họa hình, quang học, và kĩ thuật máy tính, đặc biệt là chế tạo phần cứng (các loại màn hình, các thiết bị xuất, nhập, các vỉ mạch
đồ họa )
Theo nghĩa rộng hơn, đồ họa máy tính là phương pháp và công nghệ dùng trong việc chuyển đổi qua lại giữa dữ liệu và hình ảnh trên màn hình bằng máy tính Đồ họa máy tính hay kĩ thuật đồ họa máy tính còn được hiểu dưới dạng phương pháp và kĩ thuật tạo hình ảnh từ các mô hình toán học mô tả các đối tượng hay dữ liệu lấy được từ các đối tượng trong thực
tế Thuật ngữ "đồ họa máy tính" được đề xuất bởi một chuyên gia người Mỹ tên là William Fetter vào năm 1960 Khi đó ông đang nghiên cứu xây dựng mô hình buồng lái máy bay cho hãng Boeing William Fetter đã dựa trên các hình ảnh 3 chiều của mô hình người phi công trong buồng lái để xây dựng nên mô hình buồng lái tối ưu cho máy bay Boeing Đây là phương pháp nghiên cứu rất mới vào thời kì đó Phương pháp này cho phép các nhà thiết kế quan sát một cách trực quan vị trí của người lái trong khoang buồng lái William Fetter đã đặt tên cho phương pháp của mình là "đồ họa máy tính."
1.2 Lịch sử
Graphics những năm 1950-1960:
- Năm 1959: Thiết bị đồ hoạ đầu tiên là màn hình xuất hiện tại Đức
- Năm 1960: SAGE (Semi-Automatic Ground Environment System) xuất
Trang 8hiện bút sáng thao tác với màn hình William Fetter nhà khoa học người
Mỹ, ông đang nghiên cứu xây dựng mô hình buồng lái máy bay cho hãng Boeing của Mỹ Ông đã dựa trên hình ảnh 3 chiều của mô hình người phi công trong buồng lái máy bay để xây dựng nên một mô hình tối ưu cho buồng lái máy bay Phương pháp này cho phép các nhà thiết kế quan sát một cách trực quan vị trí của người lái trong khoang Ông đặt tên cho phương pháp này là đồ hoạ máy tính (Computer Graphics)
- Màn hình là thiết bị thông dụng nhất trong hệ đồ hoạ, các thao tác của hầu hết các màn hình đều dựa trên thiết kế ống tia âm cực CRT (Cothode raytube) Khi đó giá để làm tươi màn hình là rất cao, máy tính xử lý chậm, đắt và không chắc chắn (không đáng tin cậy)
Graphics: 1960 – 1970
- Năm 1963: Ivan Sutherland (hội nghị Fall Joint Computer – lần đầu tiên
có khả năng tạo mới, hiển thị và thay đổi được thực hiện trong thời gian thực lên màn CRT)
- Hệ thống này được dùng để thiết kế mạch điện: CRT, LightPen (bút sáng), computer (chứa chương trình xử lý thông tin) Người sử dụng có thể vẽ mạch điện trực tiếp lên màn hình thông qua bút sáng
Graphics: 1970 – 1980
- Raster Graphics (đồ họa điểm): Bắt đầu chuẩn bị đồ hoạ, ví dụ như: GKS (Graphics Kernel System): European effort (kết quả của châu âu), Becomes ISO 2D standard
Graphics: 1980 – 1990
- Mục đích đặc biệt về phần cứng thiết bị hình học đồ hoạ Silicon Xuất hiện các chuẩn công nghiệp: PHIGS (Programmers Hierachical
Interactive Graphics Standard) xác định các phương pháp chuẩn cho các
mô hình thời gian thực và lập trình hướng đối tượng
- Giao diện người máy Human – Computer Interface (HCI)
Computer Graphics: 1990 – 2000
Trang 9- OpenGL API I (Application Program Interface – giao diện chương trình ứng dụng)
- Completely computer - sinh ra ngành điện ảnh phim truyện (Toy Story) rất
thành công Các tiền tàng phần cứng mới: Text mapping (dán các ảnh của cảnh thật lên bề mặt của đối tượng), blending (trộn màu)…
Computer Graphics: 2000 – nay
- Ảnh hiện thực, các card đồ hoạ cho máy tính (Graphics cards for PCs), game boxes and game players
- Công nghiệp phim ảnh nhờ vào đồ hoạ máy tính (Computer graphics becoming routine in movie industry): Maya (thế giới vật chất tri giác được)…
1.3 Phân loại đồ họa máy tính
- Đồ họa máy tính tương tác: tính và người dùng Có nghĩa là, người dùng được cung cấp một số quyền điều khiển hình ảnh bằng thiết bị đầu vào của họ như chuột, bàn phím hay bộ điều khiển trò chơi,… Khi máy tính nhận được tín hiệu từ thiết bị đầu vào có thể thay đổi hình ảnh được hiển thị trên màn hình một cách thích hợp, đáp ứng các lệnh mà người dùng đưa ra Người dùng có thể đưa ra một loạt các lệnh, mỗi lệnh tạo ra một phản ứng từ đồ hoạ máy tính Đây được coi là cách tương tác giữa người dùng và máy tính
- Đồ họa máy tính không tương tác: Đồ hoạ máy tính không tương tác hay còn gọi là đồ họa máy tính thụ động,
là kiểu đồ hoạ máy tính mà trong đó người dùng không có bất kỳ quyền điều khiển với hình ảnh Hình ảnh ở đây chỉ là sản phẩm của chương trình lưu trữ tĩnh và sẽ hoạt động theo hướng dẫn được lập trình sẵn một cách tuyến tính Một ví dụ về đồ hoạ máy tính không tương tác là trình bảo vệ màn hình, đây là các chương trình được máy tính thiết kế sẵn để
Trang 10làm trống màn hình hoặc hiển thị một số hình ảnh chuyển động khi bạn không sử dụng nó
1.4 Các ứng dụng của đồ họa máy tính
Đồ họa máy tính có rất nhiều ứng dụng trong máy tính vì ước tính 80% thông tin xử lý là hình ảnh Một số ứng dụng tiêu biểu của đồ họa máy tính như:
Trong biểu diễn thông tin
- Sử dụng đồ họa máy tính để 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
- Thường được 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ả
Trong lĩnh vực giải trí và nghệ thuật:
- Trong lĩnh vực 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 Với các chương trình này, người họa sĩ được máy tính tạo cho cảm giác
y như đang làm việc ngoài đời thực bằng cách cung cấp các công cụ như khung vẽ, giá vẽ, bảng pha màu, các hiệu ứng ba chiều, làm cho họ cảm thấy rất thoải mái và tiện lợi
- Đồ họa máy tính còn 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) - Giáo dục và đào tạo
- Hiện nay các chương trình mô phỏng cấu trúc của các vật thể, tiến trình của các phản ứng hóa học, hoạt động của các gói tin trên mạng máy tính,… được dùng rất nhiều trong việc hỗ trợ giảng dạy
- Trong đào tạo, các ứng dụng mô phỏng được dùng để kiểm tra trình độ
Trang 11người lái, huấn luyện phi công, điều khiển giao thông - Hỗ trợ thiết kế
- Một trong những ứng dụng lớn nhất của đồ họa máy tính là hỗ trợ thiết
kế (CAD – computer-aided design) Ngày nay CAD đã được sử dụng hầu hết trong việc thiết kế các 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
- Sử dụng các chương trình này, đầu tiên các đối tượng được hiển thị dưới dạng các phác thảo của phần khung (wireframe outline), 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,…
Giao tiếp giữa máy tính và người dùng:
- Các ứng dụng dựa trên hệ điều hành MS Windows là một minh họa rất trực quan của giao diện đồ họa Các chức năng của các ứng dụng này được thiết kế cho người dùng làm việc thông qua các biểu tượng mô tả chức năng đó Ví dụ, chức năng lưu tập tin được hiểu thông qua biểu tượng đĩa mềm, chức năng in ấn được hiểu thông qua biểu tượng máy in,…
- Để chọn các chức năng, người dùng sử dụng chuột trỏ đến và nhấn vào các biểu tượng tương ứng Điểm thuận lợi chính khi dùng biểu tượng là kích thước không gian mà nó chiếm ít hơn nhiều so với dùng văn bản
để mô tả cho cùng một chức năng, ngoài ra việc nắm bắt các chức năng qua các biểu tượng sẽ dễ dàng hơn rất nhiều khi người dùng gặp trở ngại
về mặt ngôn ngữ
- Các ứng dụng có giao diện đồ họa còn cho phép người dùng khả năng làm việc dễ dàng với nhiều cửa sổ với nhiều dạng tài liệu khác nhau cùng một lúc
Trang 12CHƯƠNG 2: GIỚI THIỆU VÀ CÀI ĐẶT THƯ VIỆN 2.1 Giới thiệu về thư viện graphics.h
Graphic.h (tên đầy đủ là Borland Graphics Interface (GBI)) là một thư viện đồ họa rất phổ biến trên DOS và các máy tính chạy hệ điều hành Windows thời kì đầu như Windows 95, Windows 98
Thư viện cung cấp cho người dùng 2 file: graphics.h và graphics.lib để
có thể sử dụng được với C/C++ cũng như module graph nếu người dùng
sử dụng ngôn ngữ Pascal Bộ thư viện này đi kèm với IDE Borland C++ 3.1 (1992)
Một trong những điểm mạnh của thư viện này là việc khởi tạo cũng như
sử dụng rất đơn giản, vì vậy dù ra đời rất lâu nhưng hiện tại vẫn có rất nhiều trường đại học sử dụng cho mục đích giảng dạy
2.2 Cài đặt thư viện graphics.h
2.2.1 File cài đặt thư viện graphics.h
<paste ảnh của file trong thư viện graphics.h>
2.2.2 Cài đặt thư viện đồ họa
Với Windows 32 bit: Path=”C:\Program Files\Dev-Cpp”
- Bước 1: Copy 2 file “graphics.h” và “winbgim.h” vào thư mục (Path)\ MinGV32\include
- Bước 2: Copy file “libbgi.a” vào thư mục “(Path)\MinGV32\lib”
- Bước 3: Copy 2 file “6-ConsoleAppGraphics.template” và
“ConsoleApp_cpp_graph.txt” vào thư mục “(Path)\Templates”
- Với Windows 64 bit: Path=”C:\Program Files (x86)\Dev-Cpp”
- Bước 1: Copy 2 file “graphics.h” và “winbgim.h” vào thư mục “(Path)\ MinGW64\x86_64-w64-mingw32\include”
- Bước 2: Copy file “libbgi.a” vào thư mục “(Path)\MinGW64\x86_64-w64-mingw32\lib”
Trang 13- Bước 3: Copy 2 file “6-ConsoleAppGraphics.template” và
“ConsoleApp_cpp_graph.txt” vào thư mục “(Path)\Templates”
Trang 142.2.3 Hướng dẫn sử dụng
Sau khi cài xong những bước trên, chúng ta mở Dev C++ :
- Bước 1: Nếu bạn cài Dev C++ 32 bit thì bỏ qua bước này, còn nếu là 64 bit thì các bạn chọn trình biên dịch là TDM-GCC 32 bit ứng với phiên bản Dev C++ bạn cài đặt (Đây là bước bắt buộc và phải làm từ đầu, nếu không thì sẽ không chạy được đồ họa)
- Bước 2: Tạo một Project mới bằng cách chọn File -> New -> Project… + Chọn Console Graphics Application
+ Tick vào ô C++ Project
+ Gõ tên Project vào ô Name
+ Click Ok và chọn vị trí lưu
Trang 15- Bước 3: Tiến hành lập trình đồ họa và chạy thử.
2.2.4 Lỗi cài đặt và sử dụng
- Lỗi Access is denied : Cấu hình lại Dev C++ và phân quyền cho thư
mục (sử dụng quyền Admin)
- Lỗi Makefile.win: Do chưa cài đặt compiler TDM GCC 32bit
Trang 16CHƯƠNG 3: XÂY DỰNG HÌNH ẢNH XE ĐẠP CHUYỂN ĐỘNG 3.1 Các bước cài đặt
Bước 1: Khai báo các thư viện cần thiết và thư viện đồ họa graphics.h Bước 2: Khởi tạo các biến cần sử dụng
Bước 3: Viết hàm vẽ bánh xe (bao gồm cả vẽ nan hoa cho bánh xe) Bước 4: Viết hàm main
3.2 Code chương trình chạy
Trang 173.3 Kết quả
Trang 18KẾT LUẬN