2. CÁC THUẬT TỐN VẼ ĐƯỜNG
1.4. Các thuật tốn xén hình
Thao tác loại bỏ các phần hình ảnh nằm ngồi một vùng cho trước được gọi là xén hình. Vùng được dùng để xén hình gọi là cửa sổ xén (clip window).
Tùy thuộc vào từng ứng dụng cụ thể mà cửa sổ xén cĩ thể cĩ dạng là đa giác hay là đường cong khép kín. Trong phần này chúng ta sẽ khảo sát các thuật tốn xén hình vào cửa sổ xén là hình chữ nhật trước, sau đĩ sẽ khảo sát các cửa sổ xén cĩ dạng khác. Để đơn giản, trong các thuật tốn xén hình, cửa sổ xén được gọi là cửa sổ.
4.2. Các thuật tốn xén đoạn thẳng.
Giả sử cửa sổ xén là cửa sổ hình chữ nhật cĩ tọa độ của các điểm dưới bên trái và điểm trên bên phải lần lượt là và .
Một điểm được coi là nằm bên trong cửa sổ nếu thỏa hệ bất phương trình :
Bây giờ, ta sẽ xét bài tốn xén đoạn thẳng được cho bởi hai điểm và vào cửa sổ hình chữ nhật trên.
Hình 4.6 – Minh họa thao tác xén các đoạn thẳng vào một cửa sổ hình chữ nhật.
Trước khi xén (a). Sau khi xén (b).
Thao tác xén hình là một trong những thao tác cơ bản của quá trình hiển thị đối tượng, do đĩ vấn đề tối ưu tốc độ luơn là đích cho các thuật tốn nhắm đến. Ý tưởng chung của các thuật tốn xén đoạn thẳng đĩ là loại bỏ phép tốn tìm giao điểm giữa đoạn thẳng với biên của cửa sổ một cách nhanh nhất đối với các đoạn thẳng đặc biệt như nằm hồn tồn trong hoặc hồn tồn
bên ngồi cửa sổ (ví dụ như đoạn P1P2 và P3P4 trong hình 4.6). Đối với các đoạn thẳng cĩ khả năng cắt cửa sổ, cần phải đưa ra cách tìm giao điểm thật nhanh.
Nhận xét rằng, các đoạn thẳng mà cĩ cả hai điểm nằm hồn tồn trong cửa sổ thì cả đoạn thẳng nằm trong cửa sổ, đây cũng chính là kết quả sau khi xén (ví dụ như đoạn thẳng P1P2), mặt khác đối với các đoạn thẳng mà cĩ hai điểm nằm về cùng một phía của cửa sổ thì luơn nằm ngồi cửa sổ và sẽ bị mất sau khi xén (ví dụ như đoạn thẳng P3P4). Với các đoạn thẳng cĩ khả năng cắt cửa sổ (ví dụ như đoạn thẳng P5P6 và P7P8) để việc tìm giao điểm nhanh cần rút gọn việc tìm giao điểm với những biên cửa sổ khơng cần thiết để xác định phần giao nếu cĩ của đoạn thẳng và cửa sổ.
Người ta thường sử dụng phương trình tham số của đoạn thẳng trong việc tìm giao điểm giữa đoạn thẳng với cửa sổ.
Nếu giao điểm ứng với giá trị t nằm ngồi đoạn thì giao điểm đĩ sẽ khơng thuộc về cửa sổ.