1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thuật toán midpoint đưa ra cách chọn yi

13 514 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 583,5 KB

Nội dung

MỤC LỤC I CƠ SỞ LÝ THUYẾT Thuật toán Midpoint vẽ đoạn thẳng qua điểm 2 Các trường hợp .4 2.1 Trường hợp 1: |Dy||Dx| 2.2.3 Cài đặt thuật toán Midpoint trường hợp 10 Mở rộng thuật toán Midpoint trường hợp vẽ đường thẳng với m 11 II BÀI TẬP THỰC HÀNH 12 Đề .12 Bài làm 12 THUẬT TOÁN MIDPOINT VẼ ĐƯỜNG ĐOẠN THẲNG QUA ĐIỂM I CƠ SỞ LÝ THUYẾT Thuật toán Midpoint vẽ đoạn thẳng qua điểm Thuật toán MidPoint đưa cách chọn yi+1 yi hay yi +1 cách so sánh điểm thực Q với điểm MidPoint trung điểm S P Ta có : - Nếu điểm Q nằm điểm MidPoint, ta chọn S - Ngược lại điểm Q nằm điểm MidPoint ta chọn P Ta có dạng tổng quát phương trình đường thẳng : Ax + By + C = Với A = y2 –y1; B = - (x2 – x1) ; C = x2y1 -x1y2 Xây dựng pi trường hợp 00)? 1:-1; int dy=(Dy>0)? 1:-1; Bước 2: Xác định điểm Lặp y!=y2 ; Nếu p=0: p+=const2; x+=dx; y+=dy; Putpixel(x,y,color); 2.2.2 Lưu đồ thuật toán Midpoint trường hợp 2: |Dy|>|Dx| 2.2.3 Cài đặt thuật toán Midpoint trường hợp #include #include #include using namespace std; Void Bresenham_line (int x1,int y1, int x2, int y2, Color color) { int Dx = x2 – x1, Dy = y2 – y1; int x = x1, y = y1; int p = * Dx – Dy ; int const1 = * Dx , const2 = * (Dx-Dy); putpixel(x, y, color) ; int dx =(Dx>0)? 1:-1 ,dy=(Dy>0)? 1:-1; if(abs(Dy) > abs(Dx)) { while(y != y2) { if ( p < 0) p+=const1; else { p+=const2; x += dx; } y += dy; putpixel(x,y,color); } } } Mở rộng thuật toán Midpoint trường hợp vẽ đường thẳng với m • ***Trường hợp đặc biệt m = giản vẽ • ***Trường hợp -1 dx=1, Dy=-4 => dy =-1; Lặp Do x1=1 != x2=3: Vì p1=6>=0 nên { p2=p1+c2=6+4=10; yA=y1+dy= 5-1 =4; } XA=x1+dx= 1+1 =2; => Vẽ điểm A (2,4) Lặp 2: xA=2 != x2=3 Do P2=10>0 { P3=p2+c2=10+4=14; YB=yA+dy= 4-1 =3; } xB=xA+dx = 2+1 =3; => Vẽ điểm B(3,3) xB=3 =x2=3 => Dừng! => Vây ta vẽ điểm M1(1,5), A(2,4) B(3,3) y x ...THUẬT TOÁN MIDPOINT VẼ ĐƯỜNG ĐOẠN THẲNG QUA ĐIỂM I CƠ SỞ LÝ THUYẾT Thuật toán Midpoint vẽ đoạn thẳng qua điểm Thuật toán MidPoint đưa cách chọn yi+ 1 yi hay yi +1 cách so sánh điểm... =2Dy-Dx Tóm tắt thuật toán: p0=2Dy-Dx yi+ 1 = yi pi =0 pi+1= pi+2Dy pi =0 Các trường hợp 2.1 Trường hợp 1: |Dy|

Ngày đăng: 29/08/2017, 10:58

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w