Giáo Trình Đồ Họa Máy Tính: Hướng Dẫn Chi Tiết và Thực Hành

Khám phá giáo trình đồ họa máy tính, cung cấp kiến thức cơ bản và nâng cao về thiết kế, lập trình và ứng dụng đồ họa trong công nghệ.

Trường đại học

Đại Học Huế

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Giáo Trình

2017

265
20
0

Phí lưu trữ

55 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: Các khái niệm cơ bản

1.1. Thiết bị đồ họa và điểm ảnh

1.2. Điểm và đoạn thẳng trong mặt phẳng

1.3. Các giải thuật vẽ đoạn thẳng

1.3.1. Vẽ đoạn thẳng dựa vào phương trình

1.3.2. Vẽ đoạn thẳng dựa vào giải thuật Bresenham

1.4. Môi trường thực nghiệm và các bước thiết lập cơ bản

1.5. So sánh đánh giá hai giải thuật dựng đường thẳng

1.6. Các giải thuật vẽ đường tròn

1.6.1. Giải thuật vẽ đường tròn MidPoint

1.6.2. Giải thuật vẽ đường tròn Bresenham

1.7. So sánh đánh giá hai giải thuật dựng đường tròn

1.8. Giải thuật vẽ Ellipse

1.8.1. Giải thuật Bresenham cho vẽ hình Ellipse

1.8.2. Tóm tắt giải thuật Bresenham cho vẽ Ellipse

1.9. Cài đặt giải thuật

1.10. Bài tập cuối chương

2. CHƯƠNG 2: Các hệ màu và cơ chế tổ chức bộ nhớ màn hình

2.1. Đôi nét về cấu trúc màn hình màu

2.2. Hệ màu CMY

2.3. Hệ màu HSV

2.4. Cơ chế tổ chức bộ nhớ màn hình

2.5. Cơ chế hoạt động của chế độ màn hình độ phân giải 320 × 200 với 256 màu

2.6. Cơ chế hoạt động của màn hình theo chuẩn Vesa

2.7. Kỹ thuật thực hiện vẽ đồ họa ở hậu trường (Off-screen Rendering)

3. CHƯƠNG 3: Các phép xén hình và tô màu

3.1. Phạm vi và ứng dụng của bài toán xén hình

3.2. Giải thuật xén đoạn thẳng vào hình chữ nhật

3.3. Giải thuật xén đa giác vào hình chữ nhật

3.4. Bài toán tô màu và ứng dụng

3.5. Giải thuật vết dầu loang (Flood fill)

3.6. Giải thuật tô đa giác theo dòng quét (Scan-line)

3.7. Bài tập cuối chương

4. CHƯƠNG 4: Các phép biến đổi hình học

4.1. Biến đổi hình học affine 2D

4.2. Phép tịnh tiến

4.3. Phép đồng dạng

4.4. Phép đối xứng

4.5. Phép quay quanh gốc tọa độ

4.6. Phép biến dạng (Twist Transformation)

4.7. Tọa độ thuần nhất (Homogeneous Coordinates)

4.8. Tổng hợp các phép biến đổi Affine

4.9. Phép quay quanh điểm bất kỳ

4.10. Các ví dụ minh họa

4.11. Biến đổi hệ trục tọa độ (hay biến đổi ngược)

4.12. Các phép biến đổi Affine 3D

4.13. Các hệ trục tọa độ

4.14. Các công thức biến đổi

4.15. Các phép chiếu vật thể trong không gian lên mặt phẳng

4.16. Phép chiếu phối cảnh (Perspective)

4.17. Phép chiếu song song

4.18. Quan sát vật thể 3 chiều và quay hệ quan sát

4.19. Biến đổi từ hệ trục cục bộ sang hệ trục người quan sát

4.20. Phép chiếu phối cảnh

4.21. Phép chiếu song song

4.22. Bài tập cuối chương

5. CHƯƠNG 5: Mô hình WireFrame

5.1. Mô hình Wireframe và cách thức tổ chức lưu trữ thông tin

5.2. Xây dựng ứng dụng mô phỏng quan sát vật thể 3 chiều theo mô hình Wireframe

5.3. Bài thực nghiệm số 3

5.4. Bài tập cuối chương

6. CHƯƠNG 6: Mô hình các mặt đa giác và vấn đề khử mặt khuất

6.1. Mô hình các mặt đa giác, ưu và nhược điểm, cách thức tổ chức lưu trữ thông tin

6.2. Bài toán khử mặt khuất

6.3. Giải thuật sắp xếp theo độ sâu (Depth-Sorting)

6.4. Giải thuật chọn lọc mặt sau (Back-Face Detection)

6.5. Cài đặt minh họa giải thuật chọn lọc mặt sau

6.6. Giải thuật vùng đệm độ sâu (Z-Buffer)

6.7. Cài đặt minh họa giải thuật vùng đệm độ sâu

6.8. Bài tập cuối chương

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Giáo Trình Đồ Họa Máy Tính Kiến Thức Cơ Bản và Nâng Cao

Giáo trình Đồ họa Máy tính cung cấp cho sinh viên ngành Công nghệ Thông tin những kiến thức nền tảng và nâng cao trong lĩnh vực này. Nội dung giáo trình được thiết kế để giúp sinh viên phát triển kỹ năng lập trình và thực hành trong đồ họa máy tính. Với 6 chương và nhiều bài thực nghiệm, giáo trình này không chỉ giúp sinh viên nắm vững lý thuyết mà còn áp dụng vào thực tiễn.

1.1. Mục tiêu của giáo trình Đồ họa Máy tính

Giáo trình nhằm trang bị cho sinh viên những kiến thức cơ bản về đồ họa máy tính, từ thiết bị đồ họa đến các giải thuật vẽ hình. Mục tiêu là giúp sinh viên có thể tự tin lập trình và thực hiện các ứng dụng đồ họa.

1.2. Cấu trúc và nội dung chính của giáo trình

Nội dung giáo trình được chia thành 6 chương, mỗi chương tập trung vào một khía cạnh khác nhau của đồ họa máy tính, từ các yếu tố cơ bản đến các kỹ thuật nâng cao.

II. Những Thách Thức Trong Lĩnh Vực Đồ Họa Máy Tính

Đồ họa máy tính là một lĩnh vực đầy thách thức với nhiều vấn đề cần giải quyết. Các sinh viên thường gặp khó khăn trong việc hiểu và áp dụng các lý thuyết phức tạp. Ngoài ra, việc làm quen với các phần mềm đồ họa cũng là một thách thức lớn.

2.1. Khó khăn trong việc nắm bắt lý thuyết

Nhiều sinh viên gặp khó khăn trong việc hiểu các khái niệm như hệ màu, giải thuật vẽ hình và các phép biến đổi hình học. Điều này đòi hỏi sự kiên nhẫn và thực hành thường xuyên.

2.2. Thách thức trong việc sử dụng phần mềm đồ họa

Việc làm quen với các phần mềm đồ họa như VC++ và MFC có thể gây khó khăn cho sinh viên. Họ cần thời gian để làm quen với giao diện và các công cụ hỗ trợ.

III. Phương Pháp Học Đồ Họa Máy Tính Hiệu Quả

Để học đồ họa máy tính hiệu quả, sinh viên cần áp dụng các phương pháp học tập tích cực. Việc thực hành thường xuyên và tham gia các bài thực nghiệm là rất quan trọng. Ngoài ra, việc tìm hiểu thêm tài liệu và tham gia các khóa học trực tuyến cũng giúp nâng cao kiến thức.

3.1. Thực hành qua các bài thực nghiệm

Các bài thực nghiệm trong giáo trình giúp sinh viên áp dụng lý thuyết vào thực tế. Điều này không chỉ giúp củng cố kiến thức mà còn phát triển kỹ năng lập trình.

3.2. Tìm hiểu tài liệu bổ sung

Ngoài giáo trình, sinh viên nên tìm hiểu thêm các tài liệu khác như sách, video hướng dẫn và các khóa học trực tuyến để mở rộng kiến thức.

IV. Ứng Dụng Thực Tiễn Của Đồ Họa Máy Tính

Đồ họa máy tính có nhiều ứng dụng trong thực tiễn, từ thiết kế game đến mô phỏng 3D. Các kỹ thuật đồ họa được sử dụng rộng rãi trong ngành công nghiệp giải trí, giáo dục và y tế.

4.1. Ứng dụng trong thiết kế game

Đồ họa máy tính là yếu tố quan trọng trong việc phát triển game. Các kỹ thuật như mô hình hóa 3D và ánh sáng giúp tạo ra trải nghiệm sống động cho người chơi.

4.2. Mô phỏng trong y tế

Trong y tế, đồ họa máy tính được sử dụng để mô phỏng các quy trình phẫu thuật và hình ảnh hóa dữ liệu y tế, giúp bác sĩ đưa ra quyết định chính xác hơn.

V. Kết Luận và Tương Lai Của Đồ Họa Máy Tính

Đồ họa máy tính đang phát triển nhanh chóng với nhiều công nghệ mới. Tương lai của lĩnh vực này hứa hẹn sẽ mang lại nhiều cơ hội cho sinh viên và các chuyên gia. Việc nắm vững kiến thức và kỹ năng trong đồ họa máy tính sẽ giúp sinh viên có lợi thế cạnh tranh trong thị trường lao động.

5.1. Xu hướng phát triển công nghệ đồ họa

Công nghệ đồ họa đang tiến bộ với sự phát triển của AI và VR. Những công nghệ này mở ra nhiều khả năng mới cho việc tạo ra các ứng dụng đồ họa.

5.2. Cơ hội nghề nghiệp trong lĩnh vực đồ họa

Sinh viên có thể tìm thấy nhiều cơ hội nghề nghiệp trong các lĩnh vực như thiết kế game, phát triển phần mềm và nghiên cứu đồ họa máy tính.

17/07/2025

Trích đoạn nội dung tài liệu

Chương 1 CÁC YẾU TỐ CƠ SỞ CỦA ĐỒ HỌA Trong chương này sẽ trình bày các khái niệm về điểm ảnh, tọa độ điểm ảnh và ma trận điểm ảnh trên thiết bị đồ họa. Trình bày các giải thuật giúp dựng hình một cách hiệu quả đối với các đối tượng cơ bản như đoạn thẳng, hình tròn, hình ellipse. CÁC KHÁI NIỆM CƠ BẢN 1. Thiết bị đồ họa và điểm ảnh Thiết bị đồ họa được hiểu là những phương tiện giúp chúng ta thể hiện được các hình ảnh thông qua sự điều khiển của máy tính.

Từ đó, chúng ta có thể liệt kê một số thiết bị quen thuộc như màn hình máy tính, máy in, máy vẽ,… Hình 1.1 cho thấy khả năng hiển thị sinh động hình vẽ, chữ, hình ảnh thu được từ camera trên một màn hình máy tính của hãng Dell. Để có thể điều khiển được quá trình hiển thị thông tin (hình vẽ, chữ viết, hình ảnh,…) trên thiết bị đồ họa, chúng ta cần hiểu được tính chất cấu tạo của chúng. Trong chương này, chúng ta cần tìm hiểu một số khái niệm cơ bản liên quan đến quá trình dựng hình. Giao diện đồ họa windows 8 thể hiện trên màn hình của hãng Dell 1 Chương 1 - Các yếu tố cơ sở của đồ họa Nguyễn Hữu Tài Mỗi thiết bị đồ họa có một mặt phẳng (hai chiều) được phân chia thành các dòng (rows) và các cột (columns).

Giao của các dòng và các cột tạo nên các điểm ảnh, thuật ngữ tiếng Anh là Pixel. Kích thước của điểm ảnh phụ thuộc vào diện tích của bề mặt hiển thị và số điểm ảnh tối đa mà thiết bị điều khiển và hiện được trên bề mặt đó. Độ phân giải của thiết bị màn hình thường được biểu diễn bởi khả năng phân chia với số cột và số dòng cực đại. Ví dụ, màn hình LCD Full HD sẽ cho khả năng phân chia được 1920 cột và 1080 dòng, từ đó tạo nên hơn 2 triệu điểm ảnh.

Các cột và các dòng được đánh chỉ số bắt đầu từ 0 tại vị trí góc trên bên trái như minh họa trong Hình 1. Từ đó, mỗi điểm ảnh được định danh thông qua một cặp chỉ số (x,y), trong đó x và y lần lượt là chỉ số cột và chỉ số dòng tạo nên điểm ảnh, cặp chỉ số này còn được gọi là tọa độ điểm ảnh trên thiết bị đồ họa. Dễ thấy rằng, tọa độ điểm ảnh trên thiết bị đồ họa luôn luôn phải là một cặp số nguyên dương hoặc bằng không. Các cặp giá trị tọa độ thực (không nguyên) hoặc âm không được chấp nhận, vì nó không giúp hệ thống xác định được điểm ảnh cần điều khiển.

Minh họa việc hiển thị hình ảnh đồ họa trên thiết bị 1. Điểm và đoạn thẳng trong mặt phẳng Về mặt toán học, một đoạn thẳng bao gồm một tập vô hạn các điểm trong mặt phẳng với cặp tọa độ thực và không có kích thước (hay kích thước vô cùng bé). Khái niệm này có nhiều khác biệt với khái niệm Pixel trên thiết bị đồ họa mà người học cần nắm vững trước khi bắt đầu tìm hiểu bài toán dựng hình trong lĩnh vực đồ họa máy tính.2 2 Chương 1 - Các yếu tố cơ sở của đồ họa Nguyễn Hữu Tài chúng ta có thể hiểu rằng quá trình dựng hình trên thiết bị đồ họa chính là quá trình xác định một tập các điểm ảnh (pixel) sao cho chúng có thể thể hiện được hình ảnh mà chúng ta mong muốn ở mức tốt nhất (tối ưu nhất) có thể. Ví dụ, đoạn thẳng màu đen được thể hiện bằng một tập 6 pixel liên tiếp nhau như minh họa trong Hình 1.2, mỗi pixel có một kích thước cụ thể phụ thuộc vào kích thước và độ phân giải của thiết bị.

CÁC GIẢI THUẬT VẼ ĐOẠN THẲNG Phương trình tổng quát của một đường thẳng được viết dưới dạng: y  ax  b Trong đó: - a là hệ số góc hay còn gọi là độ dốc, nó phản ánh mối tương quan giữa 2 biến số x và y. - b là khoảng chắn trên trục hoành. Phương trình đường thẳng đi qua 2 điểm A(xa, ya) và B(xb, yb) được viết dưới dạng: y  ya x  xa  (1.1) yb  ya xb  xa Trong đó xa ≠ xb và ya ≠ yb. (Khi xa = xb thì phương trình là x = xa, còn khi ya = yb thì phương trình là y = ya) Đặt x  xb  xa và y  yb  ya thì (1.1) trở thành y y y x xa  ya x x  y a   y  ax  b với  x (1.

Vẽ đoạn thẳng dựa vào phương trình Khi biết phương trình của một đường, chúng ta hoàn toàn có thể vẽ được đường biểu diễn nhờ vào các tính toán trên phương trình. Ở đây, 3 Chương 1 - Các yếu tố cơ sở của đồ họa Nguyễn Hữu Tài đường mà chúng ta cần biểu diễn là một đoạn thẳng AB với A(x a,ya) và B(xb,yb). Phương trình biểu diễn được cho bởi (1.2) với x xa, xb , y  ya , yb  Quy trình dựng hình có thể tóm tắt như sau:  Nếu y  x , nghĩa là biến số x biến thiên nhanh hơn biến số y, lúc này để đảm bảo tính liên tục của các điểm vẽ chúng ta cho biến số x thay đổi tuần tự và tính biến số y qua phương trình. Cụ thể như sau: Cho x nhận các giá trị nguyên lần lượt từ xa đến xb, với mỗi giá trị x chúng ta thực hiện:  Tính y  ax  b thông qua phương trình.

Ở đây điểm trên đoạn thẳng có tọa độ là (x, y). Song chúng ta không thể vẽ điểm đó bởi giá trị y là một giá trị thực trong khi các hệ thống biểu diễn đồ họa chỉ có hữu hạn điểm và mỗi điểm có tọa độ nguyên. Từ đó chúng ta buộc phải minh họa cho điểm (x, y) thuộc đoạn thẳng thực bởi một điểm trên hệ thống thiết bị đồ họa gần với nó nhất, đó chính là điểm có tọa độ cột là x và dòng là giá trị làm tròn về số nguyên của y.  Ngược lại, nghĩa là biến số y biến thiên nhanh hơn biến số x, lúc này để đảm bảo tính liên tục của các điểm vẽ chúng ta cho biến số y thay đổi tuần tự và tính biến số x qua phương trình.

Cụ thể như sau: Cho y nhận các giá trị nguyên lần lượt từ ya đến yb, với mỗi giá trị y chúng ta thực hiện: y b x x  Tính x  (hay x  y  ya  xa ) a y y  Vẽ điểm (round(x), y) Ví dụ: Cho A(5, 4) đến B(10, 7) để vẽ đoạn thẳng AB chúng ta thực hiện các bước sau: Tính: x  xb  xa  10  5  5; y  yb  ya  7  4  3 4 Chương 1 - Các yếu tố cơ sở của đồ họa Nguyễn Hữu Tài  y 3 a    x 5 b   ax a  y a  1  Vì y  x , nên chúng ta cho x nhận các giá trị nguyên lần lượt từ xa đến xb, với mỗi giá trị x chúng ta cần thực hiện:  Tính y  ax  b thông qua phương trình. Ảnh minh họa một đoạn thẳng từ A(5,4) đến B(10,7) Cụ thể như sau: Khi x = xa = 5: y = ax+b = 4; Vẽ điểm (5,4) Khi x = 6: y = 23/5 = 4.6; Vẽ điểm (6,5) Khi x = 7: y = 26/5 = 5.2; Vẽ điểm (7,5) Khi x = 8: y = 29/5 = 5.8; Vẽ điểm (8,6) Khi x = 9: y = 32/5 = 6.4; Vẽ điểm (9,6) Khi x = 10: y = 7; Vẽ điểm (10,7) Kết quả chúng ta có hình vẽ đoạn thẳng AB có thể minh họa như trong Hình 1. 5 Chương 1 - Các yếu tố cơ sở của đồ họa Nguyễn Hữu Tài 2. Vẽ đoạn thẳng dựa vào giải thuật Bresenham Mục 2.1 đã đưa ra quy trình để vẽ một đoạn thẳng AB bất kỳ trên thiết bị đồ họa.

Tuy nhiên, phương pháp tính toán còn chưa thật sự hiệu quả. Cụ thể, tại mỗi bước lặp để tìm ra được tọa độ của một điểm vẽ, chúng ta cần phải tính 1 phép nhân và 1 phép cộng trên trường số thực, cùng với một phép tính làm tròn (round) số thực về số nguyên. Cũng với cách tiếp cận trên, song giải thuật Bresenham hướng tới một sự phân tích bài toán sâu sắc hơn để đi đến một quy trình ít tính toán hơn. Giả thiết đầu tiên mà giải thuật Bresenham đặt ra là hệ số góc của đoạn thẳng a  [0, 1] , các trường hợp còn lại của hệ số góc như a  (1,   ); a  [1, 0) ; hay a  (  ;  1) có thể được quy về trường hợp đoạn thẳng có hệ số góc a  [0, 1] thông qua các phép lấy đối xứng, quy trình xử lý cụ thể đối với các đoạn thẳng có hệ số góc a  [0, 1] sẽ được bàn thảo và hướng dẫn tại mục 2.

Từ giả thiết đặt ra là hệ số góc của đoạn thẳng a  [0, 1] , chúng ta có thể suy ra rằng, trên toàn bộ đoạn thẳng tham số x luôn luôn biến thiên nhanh hơn tham số y. Từ đó, đưa đến quy trình: Cho x nhận các giá trị nguyên lần lượt từ xa đến xb, với mỗi giá trị x chúng ta cần phải tìm ra một giá trị y nguyên để (x,y) chính là tọa độ của điểm cần minh họa trên thiết bị. Và điểm mấu chốt ở đây là việc tìm ra giá trị y phải thông qua ít phép tính toán hơn quy trình đã trình bày ở mục 2. Giả thiết với hai điểm đầu mút A(xa, ya) và B(xb, yb) có tọa độ nguyên và xa < xb (nếu cần thì hoán đổi hai đầu mút A và B để thỏa mãn giải thiết xa < xb ).

Rõ ràng, điểm ảnh đầu tiên cần biểu diễn trên thiết bị chính là điểm A có tọa độ (xa, ya). Nếu gọi điểm ảnh được lựa chọn đầu tiên trong quy trình là (x0, y0) thì: (x0, y0) = (xa, ya) Theo lập luận quy nạp:  Giả thiết rằng đến bước thứ i chúng ta đã chọn được điểm ảnh thứ i, hay nói cách khác là điểm ảnh được chọn ở bước thứ i với tên gọi là (xi, yi) đã được xác định giá trị. 6 Chương 1 - Các yếu tố cơ sở của đồ họa Nguyễn Hữu Tài  Vậy đến bước tiếp theo, bước thứ i+1, chúng ta sẽ chọn điểm ảnh nào? Nói cách khác là điểm ảnh được chọn ở bước thứ (i+1) với tên gọi (xi+1, yi+1) sẽ được xác định các giá trị ra sao?

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Giáo Trình Đồ Họa Máy Tính: Kiến Thức Cơ Bản và Nâng Cao là một tài liệu quý giá dành cho những ai muốn tìm hiểu sâu về lĩnh vực đồ họa máy tính. Tài liệu này không chỉ cung cấp những kiến thức cơ bản mà còn mở rộng đến các khía cạnh nâng cao, giúp người đọc nắm vững các nguyên lý và kỹ thuật trong thiết kế đồ họa. Đặc biệt, nó giúp người học phát triển kỹ năng thực hành thông qua các bài tập và ví dụ minh họa cụ thể.

Để mở rộng thêm kiến thức của bạn về lý thuyết đồ họa, bạn có thể tham khảo tài liệu Giáo trình lý thuyết đồ họa. Tài liệu này sẽ cung cấp cho bạn cái nhìn sâu sắc hơn về các khái niệm lý thuyết, từ đó hỗ trợ bạn trong việc áp dụng vào thực tiễn. Hãy khám phá thêm để nâng cao hiểu biết và kỹ năng của bạn trong lĩnh vực này!