Thuật Toán Sutherland Hodgeman

Một phần của tài liệu slide chương 4: hiển thị đối tượng hai chiều (Trang 42 - 45)

Hodgeman

Trong phần này chúng ta sẽ khảo sát một trong các thuật toán xén đa giác đó thuật toán Sutherland-Hodgeman.

ThS.GVC Tô Oai Hùng 43

Thut Toán Sutherland-Hodgeman Hodgeman

Với mỗi lần xén đa giác dọc theo một biên nào đó của cửa sổ, nếu gọi Vi, Vi+1 là hai đỉnh kề của cạnh ViVi+1, ta có 4 trường hợp có thể xảy ra khi xét từng cặp đỉnh của đa giác ban đầu với biên của cửa sổ như sau:

- Nếu Vi nằm ngoài, Vi+1 nằm trong, ta sẽ lưu giao điểm I (của ViVi+1 với biên của cửa sổ) và Vi+1.

- Nếu Vi, Vi+1 đều nằm trong, ta sẽ lưu cả hai Vi Vi+1.

- Nếu Vi nằm trong, Vi+1 nằm ngoài, ta sẽ lưu giao điểm I và Vi.

- Nếu cả Vi, Vi+1 đều nằm ngoài, ta không lưu gì cả.

ThS.GVC Tô Oai Hùng 44

Thut Toán Sutherland-Hodgeman Hodgeman

Thuật toán Sutherland-Hodgeman cho kết quả rất chính xác khi làm việc với các đa giác lồi.

Tuy nhiên với các đa giác lõm kết quả

hiển thị thể sẽ có đoạn thừa.

Điều này xảy ra khi đa giác sau khi xén bị tách thành hai hay nhiều vùng. Do

ThS.GVC Tô Oai Hùng 45

Thut Toán Sutherland-Hodgeman Hodgeman

chúng ta chỉ lưu kết quả xuất trong một danh sách các đỉnh, nên đỉnh cuối của danh sách ứng với đa giác trước sẽ nối với đỉnh đầu của danh sách ứng với đa giác sau.

Một trong nhiều cách để khắc phục

điểm này là phân đa giác lõm thành hai hay nhiều đa giác lồi và xử mỗi đa giác lồi riêng.

Một phần của tài liệu slide chương 4: hiển thị đối tượng hai chiều (Trang 42 - 45)

Tải bản đầy đủ (PDF)

(45 trang)