tailieunhanh - Bài giảng Đồ họa máy tính: Bài 2 - Lê Tấn Hùng

Bài 2 - Các giải thuật sinh các thực thể cơ sở. Bài này gồm có những nội dung chính sau: Giải thuật xây dựng các thực thể cơ sở, biểu diễn đoạn thẳng, giải thuật Bresenham, sinh đường tròn, cấu trúc font chữ, giải thuật đường quét đa giác. . | Bài 2: Các giải thuật sinh các thực thể cơ sở Le Tan Hung hunglt@ (c) SE/FIT/HUT 2002 Giải thuật xây dựng các thực thể cơ sở Giải thuật sinh đường thẳng – Line Giải thuật sinh đường tròn - Circle Giải thuật VanAken sinh Ellipse Giải thuật sinh đa giác Giải thuật sinh ký tự (c) SE/FIT/HUT 2002 2 Rời rạc hoá điểm ảnh (Scan Conversion rasterization) Scan Conversion rasterization Tính chất các đối tượng cần đảm bảo : smooth continuous pass through specified points uniform brightness efficient (c) SE/FIT/HUT 2002 3 Biểu diễn đoạn thẳng Biểu diễn tường minh P(x2 , y2) (y-y1)/( x-x1) = ( y2-y1)/( x2-x1)1 y = kx + m Biểu diễn không tường minh u (y2-y1)x - (x2-x1)y + x2y1 - x1y2 = 0 hay rx + sy + t = 0 Biểu diễn tham biến P(x1, y1) P(u) = P1 + u(P2 - P1) u [0,1] m (c) SE/FIT/HUT 2002 4 Thuật toán DDA (Digital Differential Analizer) Giải thuật thông thường DrawLine(int x1,int y1, int x2,int y2, int color) { float y; int x; for (x=x1; x<=x2; x++) { y = y1 + (x-x1)*(y2-y1)/(x2-x1) WritePixel(x, Round(y), color ); }} Giải thuật DDA Với 0 < k < 1 xi+1 = xi + 1 yi+1 = yi + k với i=1,2,3 (c) SE/FIT/HUT .