Chương 1: Thuật toán vẽ đoạn thẳng

Chia sẻ: Lê Thị Nguyên An | Ngày: | Loại File: PPT | Số trang:33

0
184
lượt xem
44
download

Chương 1: Thuật toán vẽ đoạn thẳng

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Các thuật toán vẽ các đối tượng đồ hoạ cơ sở như: điểm, đường, đa giác, …, phụ thuộc nhiều vào thiết bị hiển thị. Hầu hết các ứng dụng đồ họa đều sử dụng các công cụ vẽ này làm nền tảng. Bút trong máy vẽ được di chuyển nhờ một motor bước, nên nó chỉ có thể di chuyển tới những vị trí rời rạc.

Chủ đề:
Lưu

Nội dung Text: Chương 1: Thuật toán vẽ đoạn thẳng

  1. Dẫn nhập • Các thuật toán vẽ các đối tượng đồ hoạ cơ sở như: điểm, đường, đa giác, …, phụ thuộc nhiều vào thiết bị hiển thị • Hầu hết các ứng dụng đồ họa đều sử dụng các công cụ vẽ này làm nền tảng • Bút trong máy vẽ được di chuyển nhờ một motor bước, nên nó chỉ có thể di chuyển tới những vị trí rời rạc. 2
  2. Cách biểu diễn tọa độ 3
  3. Vẽ đoạn thẳng • Trong đồ hoạ vector – 1. Di chuyển tới điểm đầu – 2. Bật chùm tia điệntử – 3. Di chuyển tới điểmcuối – 4. Tắt chùm tia điệntử • Trong đồ hoạ Raster-scan, vẽ đường chuyển thành vẽ nối từng điểm ảnh – Chùm điệntử di chuyển theo hướng xác định (trái qua phải, trên xuống dưới) – Vùng đệm màn hình lưutrữ thông tin của điểm ảnh tương ứng (cường độ sáng, màu, …) 4
  4. Yêu cầu • Đoạnthẳng lý tưởng Ideal line Rasterized line • Các điểm ảnh phải càng gần đoạn thẳng lý tưởng càng tốt • Độ dày, độ sáng đều nhau • Các điểm ảnh phải liên tục không ngắt discontinuities (gaps in the line) • Tốc độ vẽ nhanh nhất có thể, vì vẽ đoạn thẳng là thao tác cơ bản trong tất cả các hệ đồ họa 5
  5. Phương trình đoạn thẳng 6
  6. Thuật toán Slope-Intercept 7
  7. Trường hợp lỗi? • Thuật toán thực hiện lặp theo trục x, nên khi đoạn thẳng có hệ số góc lớn hơn 1 thì các điểm ảnh sẽ trở nên ngắt quãng • Sửa lỗi? • Kiểm tra hệ số góc m. Nếu m > 1 thì thực hiện lặp theo trục y (hoán đổivai trò x với y) 8
  8. Thuật toán Slope-Intercept 9
  9. Thuật toán Slope-Intercept (tt.) 10
  10. Đánh giá, cải tiến? 11
  11. 12
  12. Thuật toán DDA – Digita Differential Analyzer 13
  13. Yêu cầu khác • Tốc độ nhanh hơnnếu không sử dụng các phép toán trên số thực • Các điểm đầu, cuốicủa đoạnthẳng nằm ngoài khung nhìn? • Hạn chế sự lởm chởm răng cưa của đoạn thẳng • Độ dày của đoạn thẳng (>1)? • Kiểu đoạnthẳng? 14
  14. 15
  15. Ý tưởng của thuật toán 16
  16. Lưu đồ Thuật toán Bresenham 17
  17. Thuật toán Bresenham 18
  18. Thuật toán Bresenham (tt.) 19
  19. 20
Đồng bộ tài khoản