1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài 5 : Slide bài giảng vẽ Elip bressenham

13 196 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 2,35 MB

Nội dung

Bài 5 : Slide bài giảng vẽ Elip bressenham Sẽ giúp bạn thuyết trình bài giảng , học hỏi 1 cách nhanh hơn . Vẽ đường elip băng bresenham một cách chi tiết ,... Bài giảng này mong giúp ích cho mọi người . Trong kho của mình còn rất nhiều slide về các bài giảng mong các bạn ghé qua

Bài Thuyết Trình ĐỀ TÀI: THUẬT TỐN BRESENNHAM VẼ ĐƯỜNG ELLIPSE NHĨM NỢI DUNG I II III GIẢI THUẬT CODE MINH HỌA HÌNH ẢNH MINH HỌA I GIẢI THUẬT   Ý tưởng:Ta sử dụng thuật toán Bresenham để vẽ,ta cần vẽ ¼ elip ,sau lấy đối xứng qua trục tọa độ vẽ toàn bơ elip Phân tích: Phương trình Ellipse có dạng: Trong đó: a độ dài trục chính, b độ dài trục phụ Phương trình tiếp tuyến với Ellipse điểm (, ) (E):   + = Suy hệ số góc tiếp tuyến điểm là: Đầu tiên, theo ý tưởng tốn, tính khoảng cách từ điểm thực đến điểm vẽ được, xem khoảng cách ngắn hơn, sau ¼ cung Tiếp tuyến với ellipse có hệ số góc -1 elip Chúng ta lại phải vẽ theo hai nhánh khác Đó nhánh từ xuống, nhánh từ lên Hai nhánh cắt giao điểm mà hệ số góc tiếp tuyến với Elip -1 (như hình trên) (, ) I GIẢI THUẬT Thực chất việc tính khoảng cách chia hai nhánh vẽ elip tìm điểm theo hướng tính y theo x (hay tính x theo y) cho trước Nhìn vào hình đây, với giao điểm màu đỏ làm ranh giới, dễ dàng thấy nhánh vẽ từ xuống : x tăng lên đơn vị y tăng lên ; ngược lại với nhánh vẽ từ lên: y tăng lên đơn vị x tăng lên Nếu chọn cách vẽ liền mạch việc tăng lên không đồng tọa độ x y khiến đường elip không min, đứt gãy, xấu Do đó, muốn vẽ đường elip mịn nét, phải chia elip thành nhánh để vẽ I GIẢI THUẬT  Ta có phương trình Ellipse có tâm gốc tọa độ là: Ta viết lại: = + (*) Xét nhánh vẽ từ xuống Giả sử điểm( ,) vẽ Điểm cần chọn (+1,) (+1,-1) Thay (+1) vào (*): = + Đặt: == + = =+ ⇒ ⇒ = = 2.[ ] + 2.( ) +1 = 2.[ ()+1 Suy ra: = ) (**) I GIẢI THUẬT  *Nhận xét: • =.(2x+3) • 0: Chọn =, (**) => = (2x+3) • Với điểm (0,b), ta có: = 2b+1 I GIẢI THUẬT •   Tương tự ta có nhánh hai từ lên : • =.(2x+3) • 0: chọn xi+1 = xi – • Với điểm (a,0) ta có: = 2a+1 => = (2x+3) Begin   d1 = = = False 2 b /a *x

Ngày đăng: 08/01/2019, 22:22

TỪ KHÓA LIÊN QUAN

w