Phương pháp mặt sau

Một phần của tài liệu bài giảng đồ hoạ máy tính (Trang 80 - 87)

Một phương pháp không gian đối tượng đơn giản là phương pháp mặt sau, dựa vào các phương trình mặt phẳng:

Ax + By + Cz + D = 0

Bất kỳ điểm (x’, y’, z’) trên hệ tọa độ bân tay trái sẽ ở “phìa trong” mặt này nếu nó thỏa bất phương trình:

Ax’ + By’ + Cz’ + D < 0

Nếu điểm (x’, y’, z’) là vị trì quan sát, khi đó bất kỳ mặt phẳng nào làm cho bất phương trình đúng phải là một mặt ở đằng sau. Tức là, nó là mặt ta không thể nhìn thấy từ vị trí quan sát.

Hình 6.6 Một mặt phẳng với tham số C < 0

Chúng ta có thể thực hiện một cách kiểm tra mặt đằng sau đơn giản hơn bằng cách nhìn ở vector pháp tuyến của mặt có phương trính 7-1, vector này có tọa độ Descartes (A, B, C). Trong hệ tọa độ bân tay phải với hướng quan sát cùng chiều với trục z

âm (xem hình 6.6), vector có tham số C song song với hướng quan sát. Nếu C<0, vector chỉ ra xa khỏi vị trí quan sát, và mặt phải là mặt ở đằng sau. Các tham số A, B, C, và D có thể được tính từ tọa độ các đỉnh được xét theo chiều kim đồng hồ (thay vì hướng ngược chiều kim đồng hồ được dùngtrong hệ tọa độ bân tay phải). Bất phương trình 6-10 sau đó cho một kiểm tra hợp lệ đối với các điểm nằm phìa trong. Cũng như vậy, các mặt ở đằng sau có các vector chỉ ra xa khỏi vị trí quan sát và được xác định bởi C>0 khi hướng quan sát cùng hướng với trục z dương. Trong tất cả các thảo luận sau này trong chương, chúng ta giả sử rằng hệ quan sát bân tay trái được dùng.

Hình 6.7 Trong hệ quan sát bân tay trái, khi hƣớng quan sát cùng chiều với trục zv dƣơng, một mặt ở đằng sau là mặt

với tham số C>0.

Bằng việc kiểm tra tham số C ở mỗi mặt của đối tượng, ta có thể xác định được ngay tất cả các mặt ở đằng sau. Đối với một khối đa diện lồi đơn lẻ, như hính kim tự tháp trong hình 6.10, việc kiểm tra này xác định tất cả các mặt bị che khuất trên đối tượng, bởi vì mỗi mặt thí là hoàn toàn được nhìn thấy hoặc hoàn toàn bị che khuất. Đối với các đối tượng khác, các kiểm tra phức tạp hơn cần được thực hiện để xác định xem các mặt là bị che khuất hoàn toàn hay chỉ bị che khuất một phần.

Hình 6.8 Ảnh một đối tƣợng với một mặt bị che khuất một phần

Tương tự, chúng ta cần xác định xem các đối tượng là có một phần hay toàn bộ bị che khuất bởi các đối tượng khác. Một cách tổng quát, việc khử mặt khuất sẽ loại bỏ khoảng một nửa số mặt trong một ảnh khi thực hiện các phép kiểm tra.

MỤC LỤC

Trang Lời nói đầu 1

Chƣơng 1. Tổng quan về đồ họa máy tính ... 2

1.1. Giới thiệu tổng quan ... 2

1.1.1. Lịch sử phát triển của đồ họa máy tình ... 2

1.2. Các ứng dụng tiêu biểu của kỹ thuật đồ họa máy tình ... 4

1.2.1. Ứng dụng CAD/CAM ... 4

1.2.2. Ứng dụng biểu diễn thông tin ... 6

1.2.3. Ứng dụng hoạt hính và nghệ thuật ... 7

1.2.4. Ứng dụng đào tạo ... 8

1.2.5. Ứng dụng xây dựng giao diện người dùng ... 9

1.2.6. Ứng dụng xây dựng bản đồ ... 10

1.2.7. Ứng dụng trong y tế ... 11

1.3. Tổng quan về một hệ tọa độ ... 12

1.3.1. Phần cứng đồ họa ... 13

1.3.2. Phần mềm đồ họa ... 14

1.3.3. Hệ tọa độ thực, hệ tọa độ thiết bị và hệ tọa độ chuẩn ... 15

1.3.4. Hệ màu ... 17 (adsbygoogle = window.adsbygoogle || []).push({});

Chƣơng 2. Các thuật toán cơ sở ... 20

2.1. Giới thiệu ... 20

2.1.1. Các đối tượng đồ họa cơ sở ... 20

2.1.2. Các thuộc tình của các đối tượng đồ họa cơ sở ... 21

2.2. Các thuật toán vẽ đường thẳng ... 22

2.2.1. Thuật toán vẽ đường thẳng ... 22

2.2.2. Thuật toán DDA ... 22

2.2.4. Thuật toán MidPoint ... 29

2.3. Thuật toán vẽ đường tròn, elip ... 33

2.3.1. Thuật toán MidPoint ... 35

2.3.2. Thuật toán Bresenham ... 38

2.3.3. Thuật toán vẽ Elip ... 41

Chƣơng 3. Biến đổi trong không gian hai chiều ... 42

3.1. Các phép biến đổi cơ bản ... 42

3.1.1. Phép tịnh tiến ... 42 3.1.2. Phép biến đổi tỷ lệ ... 43 3.1.3 Phép đối xứng ... 43 3.1.4 Phép quay ... 44 3.2. Kết hợp các phép biến đổi ... 45 3.2.1. Kết hợp các phép tịnh tiến ... 45 3.2.2. Kết hợp các phép biến đổi tỷ lệ ... 45 3.2.3. Kết hợp các phép quay ... 46 3.2.4. Một số phép biến đổi khác ... 46

3.3. Phép biến đổi giữa các hệ tọa độ ... 47

Chƣơng 4. Phép quan sát hai chiều ... 48

4.1. Cửa sổ và vùng quan sát ... 48

4.2. Phép biến đổi cửa sổ - Vùng quan sát ... 50

4.3. Phép cắt xén hai chiều (Clipping) ... 50

4.3.1. Giải thuật Cohen – Suntherland ... 53

4.3.2. Giải thuật chia tại trung điểm ... 56

4.3.3. Giải thuật Liang – Basky ... 57

Chƣơng 5. Đồ họa ba chiều ... 60

5.1. Tổng quan về đồ họa ba chiều ... 60

5.1.1. Quy trính hiển thị đồ họa ba chiều ... 60

5.2. Biểu diễn đối tượng ba chiều ... 62

5.2.1. Biểu diễn mặt đa giác ... 62

5.2.2. Đường cong và mặt cong, đường cong và mặt cong Bezier, B-spline ... 63

5.3. Các phép biến đổi hính học ba chiều ... 64 (adsbygoogle = window.adsbygoogle || []).push({});

5.3.1. Phép biến đổi tỷ lệ ... 65

5.3.2. Phép biến dạng ... 66

5.3.3. Phép tịnh tiến ... 68

5.3.4. Phép quay hình ... 68

Chƣơng 6. Quan sát trong không gian ba chiều ... 71

6.1. Các phép chiếu ... 71

6.1.1. Phép chiếu song song ... 73

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

6.2. Điểm tụ ... 77

6.3. Loại bỏ mặt khuất ... 79

TÀI LIỆU THAM KHẢO

[1] Đặng Văn Đức

Kỹ thuật đồ họa máy tình, Viện Công nghệ thông tin, 2002 [2] Phan Hữu Phúc

Cơ sở đồ họa máy vi tình, NXB Giáo dục, 2000

Một phần của tài liệu bài giảng đồ hoạ máy tính (Trang 80 - 87)