Tìm kiếm
Latest topics
Thuật toán DDA (Digital Differential Analizer)
bkiz :: Giáo Trình :: Đồ Họa Máy Tính
Trang 1 trong tổng số 1 trang
Thuật toán DDA (Digital Differential Analizer)
Tiến hành tính tại mỗi bước vốn sử dụng kết quả từ bước trước đó. Giả sử bước i đã tính
(xi,yi), bước tiếp (xi+1,yi+1) sẽ nghiệm đúng với Δy/Δx=k.
Δy = yi+1 -yi Δx = xi+1-xi
Vậy:yi+1 =yi +kΔxvà xi+1 =xi + Δy/k
- 0 < k < 1 (đảm bảo sự thay đổi của x trên trục toạ độ sẽ lớn hơn y)
- Bắt đầu x=x1 (x1<x2) và y=y1
xi+1 = xi + 1 đặt Δx=1 (gia số theo x)
yi+1= yi + k cứ như thế đến x2
- Khi k>1 bắt đầu y=y1 (y1<y2) và x=x1
- đặt Δy =1 (gia số theo y)
xi+1 =xi + 1/k tiếp tục đến y2
giải thuật:
void ddaline (int x1,int y1,int x2,int y2,int c)
{ int x=x1;
float y=y1;
float k=(float)(y2-y1)/(x2-x1);
putpixel(x,round(y),c);
for(int i=x1;i<=x2;i++)
{
x++;
y=y+k;
putpixel(x,round(y),c);
}
}
(xi,yi), bước tiếp (xi+1,yi+1) sẽ nghiệm đúng với Δy/Δx=k.
Δy = yi+1 -yi Δx = xi+1-xi
Vậy:yi+1 =yi +kΔxvà xi+1 =xi + Δy/k
- 0 < k < 1 (đảm bảo sự thay đổi của x trên trục toạ độ sẽ lớn hơn y)
- Bắt đầu x=x1 (x1<x2) và y=y1
xi+1 = xi + 1 đặt Δx=1 (gia số theo x)
yi+1= yi + k cứ như thế đến x2
- Khi k>1 bắt đầu y=y1 (y1<y2) và x=x1
- đặt Δy =1 (gia số theo y)
xi+1 =xi + 1/k tiếp tục đến y2
giải thuật:
void ddaline (int x1,int y1,int x2,int y2,int c)
{ int x=x1;
float y=y1;
float k=(float)(y2-y1)/(x2-x1);
putpixel(x,round(y),c);
for(int i=x1;i<=x2;i++)
{
x++;
y=y+k;
putpixel(x,round(y),c);
}
}
bkiz :: Giáo Trình :: Đồ Họa Máy Tính
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
|
|
Mon Jun 24, 2013 11:27 pm by hangme
» host facebook
Mon Apr 02, 2012 2:26 pm by Admin
» Cyberlink PowerDirector 9 key full
Thu Mar 29, 2012 5:00 pm by Admin
» PowerDirector 10 Ultra
Fri Mar 23, 2012 6:15 pm by Admin
» Mảng - Nhập mảng số nguyên, tính tổng phần tử dương, tìm số hoàn hảo, tìm max, min, sắp xếp từ lớn đến nhỏ, từ nhỏ đến lớn
Sun Mar 18, 2012 9:17 pm by Admin
» HTML+CSS Form đăng nhập
Tue Sep 13, 2011 10:38 pm by Admin
» HTML+javascript : Lịch Dương
Thu Sep 08, 2011 5:15 pm by Admin
» HTML+javascript : Đòng hồ điện tử
Thu Sep 08, 2011 5:06 pm by Admin
» HTML: Form Đăng nhập
Thu Sep 08, 2011 4:42 pm by Admin