25/05/2018, 08:33

loại bỏ các đường bị che khuất

Khi chỉ các phác họa của một đối tượng được hiển thị, các phương pháp khử đường khuất được dùng đến để loại bỏ các viền của đối tượng, cái bị che khuất bởi các mặt ở gần mặt phẳng quan sát hơn. Các phương pháp để loại bỏ các đường khuất có ...

Khi chỉ các phác họa của một đối tượng được hiển thị, các phương pháp khử đường khuất được dùng đến để loại bỏ các viền của đối tượng, cái bị che khuất bởi các mặt ở gần mặt phẳng quan sát hơn. Các phương pháp để loại bỏ các đường khuất có thể được phát triển bằng cách xem xét các viền của đối tượng một cách trực tiếp hay bằng cách chỉnh sửa lại các phương pháp khử mặt khuất.

Một tiếp cận trực tiếp để loại bỏ các đường khuất là so sánh mỗi đường với mỗi mặt trong ảnh. Quá trình này tương tự như clipping các đường bởi một cửa sổ có hình dạng bất kỳ, chỉ khác ở chổ là bây giờ chúng ta muốn cắt bỏ các phần bị che khuất bởi các mặt. Đối với mỗi đường, các giá trị độ sâu được so sánh với các mặt để xác định xem phần đoạn thẳng nào không nhìn thấy được. Chúng ta có thể dùng các phương pháp cố kết để xác định các phần bị che khuất mà không cần kiểm tra toàn bộ các vị trí tọa độ. Nếu cả hai giao điểm của đường thẳng với hình chiếu của một biên bề mặt có độ sâu lớn hơn độ sâu của mặt ở các điểm này, đoạn thẳng giữa các giao điểm sẽ hoàn toàn bị che khuất, như hình 7-22 (a). Khi đường thẳng có độ sâu lớn hơn độ sâu ở một giao điểm với biên và có độ sâu nhỏ hơn độ sâu của mặt ở các giao điểm với biên còn lại, đường thẳng phải đi xuyên qua mặt như hình 7-22 (b). Trong trường hợp này, chúng ta tính tọa độ giao điểm của đường với mặt bằng cách dùng phương trình mặt và chỉ hiển thị các phần được nhìn thấy của đường thẳng.

Vài phương pháp khử mặt khuất dễ dàng được áp dụng để khử các đường khuất. Dùng phương pháp mặt sau (back-face), chúng ta có thể nhận biết được các mặt sau của một đối tượng và chỉ hiển thị các biên của các mặt nhìn thấy được. Với phương pháp sắp xếp theo độ sâu, các mặt được vẽ vào trong vùng đệm làm tươi để phần bên trong của mặt có độ sáng nền, trong khi đó các biên có độ sáng là độ sáng vẽ. Bằng cách xử lý các mặt từ sau đến trước, các đường khuất bị xóa bởi các mặt ở gần hơn. Phương pháp chia vùng có thể được áp dụng để khử các đường khuất bằng cách chỉ hiển thị các biên của các mặt nhìn thấy được. Các phương pháp scan-line có thể được dùng để hiển thị các đường nhìn thấy được bằng cách bố trí các điểm dọc theo các đường quét, các điểm này trùng với các biên của các mặt nhìn thấy được. Bất kỳ phương pháp khử mặt khuất nào dùng các đường quét đều có thể được thay đổi thành phương pháp khử đường khuất theo cách tương tự (xem hình 7-23).

0