Bài giảng Đồ họa 2D: Đường cong - Bùi Tiến Lên

Bài giảng Đồ họa 2D: Đường cong có nội dung trình bày phân loại đường cong theo quan điểm toán học và theo quan điểm thiết kế, Đường cong được biểu diễn bằng hàm số, Đường cong được biểu diễn bằng phương trình tham số, đường cong Cad, đường cong Hermite, đường cong phức, các đường cong Splines, đường cong B-Splines, đường cong Nurbs. | ĐỒ HỌA 2D ĐƯỜNG CONG Giảng viên : Bùi Tiến Lên Trang Phân loại Quan điểm toán học - Đường cong được biểu diễn bằng hàm số Đường cong được biểu diễn bằng phương trình tham số Quan điểm thiết kế - Đường cong CAD (Computer Aided Design) Đường cong được biểu diễn bằng hàm số Trang Bài toán Input Hàm số y = f(x) Miền đối số [xmin, xmax] Output Đồ thị hàm số xmax xmin y=f(x) Trang Thuật toán Bước 1 : Chia miền đối số ra N đoạn bằng nhau x0 x1 x2 xN-1 xN xmin xmax Trang Thuật toán Bước 2 : Tính y x0 x1 x2 xN-1 xN xmin xmax y0 y1 y2 yN-1 yN Trang Thuật toán Bước 3 : Kẻ đường gấp khúc đi qua N + 1 điểm. x0 x1 x2 xN-1 xN y0 y1 y2 yN-1 yN xmin xmax Trang Cài đặt // Hàm vẽ đường cong hàm số void DrawCurve2D(CDC *pDC, TFunc2D f, double xmin, double xmax) { double x, x, y; x = (xmax – xmin)/N; x = xmin; y = f(x); pDC->MoveTo(ConvertWorldToScreen2D(x, y)); for(int i=1; iLineTo(ConvertWorldToScreen2D(x, y)); } } Trang Cài đặt // Lớp . | ĐỒ HỌA 2D ĐƯỜNG CONG Giảng viên : Bùi Tiến Lên Trang Phân loại Quan điểm toán học - Đường cong được biểu diễn bằng hàm số Đường cong được biểu diễn bằng phương trình tham số Quan điểm thiết kế - Đường cong CAD (Computer Aided Design) Đường cong được biểu diễn bằng hàm số Trang Bài toán Input Hàm số y = f(x) Miền đối số [xmin, xmax] Output Đồ thị hàm số xmax xmin y=f(x) Trang Thuật toán Bước 1 : Chia miền đối số ra N đoạn bằng nhau x0 x1 x2 xN-1 xN xmin xmax Trang Thuật toán Bước 2 : Tính y x0 x1 x2 xN-1 xN xmin xmax y0 y1 y2 yN-1 yN Trang Thuật toán Bước 3 : Kẻ đường gấp khúc đi qua N + 1 điểm. x0 x1 x2 xN-1 xN y0 y1 y2 yN-1 yN xmin xmax Trang Cài đặt // Hàm vẽ đường cong hàm số void DrawCurve2D(CDC *pDC, TFunc2D f, double xmin, double xmax) { double x, x, y; x = (xmax – xmin)/N; x = xmin; y = f(x); pDC->MoveTo(ConvertWorldToScreen2D(x, y)); for(int i=1; iLineTo(ConvertWorldToScreen2D(x, y)); } } Trang Cài đặt // Lớp phương trình hàm class TFunc2D { virtual double operator () (double x) = 0; }; Trang Vấn đề phân đoạn Số phân đoạn N là bao nhiêu ? độ phân giải cột Trang Đồ thị đa thức bậc ba Cho y = ax3 + bx2 + cx + d x [xmin, xmax] Trang Vấn đề tính giá trị đa thức Cách tính thông thường a*x*x*x + b*x*x + c*x + d; Cần 6 phép nhân và 3 phép cộng Cách tính Horner ((a*x + b)*x + c)*x + d Cần 3 phép nhân và 3 phép cộng Cách tính cải tiến ? Trang Vấn đề tính giá trị đa thức Ña thöùc baäc nhaát y = ax + b Caùch tính thoâng thöôøng Caùch tính caûi tieán yi = axi + b y0 yi+1 = = ax0 + b yi + a x Tính Tính y0 = ax0 + b y0 = ax0 + b y1 = ax1 + b y1 = y0 + a x y2 = ax2 + b y2 = y1 + a x . . yi = axi + b yi = yi-1 + a x yi+1 = axi+1 + b yi+1 = yi + a x . . yN = axN+1 + b y0 = yi + a x Trang Vấn đề tính giá trị đa thức Ña thöùc baäc hai y = ax2 + bx + c Caùch tính thoâng thöôøng Caùch tính caûi tieán yi = axi2 + bxi + c y0 y0 yi+1 yi+1 = = = = ax02 + bx0 + c 2a xx0 + a x2 + b x yi

Không thể tạo bản xem trước, hãy bấm tải xuống
TỪ KHÓA LIÊN QUAN
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.