Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
5,94 MB
Nội dung
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN ĐỒ HỌA MÁY TÍNH ĐỀ TÀI: Mô chuyển động Trái Đất Sinh viên thực : Nguyễn Văn Huy Giảng viên hướng dẫn : Thầy Ngô Trường Giang Chuyên ngành : CÔNG NGHỆ PHẦN MỀM Lớp : D14CNPM4 Hà Nội, tháng năm 2022 PHIẾU CHẤM ĐIỂM Sinh viên thực hiện: Họ tên Chữ ký Ghi Chữ ký Ghi Giảng viên chấm: Họ tên Giảng viên chấm : Giảng viên chấm : 1|Page 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 MỤC LỤC LỜI MỞ ĐẦU CHƯƠNG THUẬT TOÁN CƠ BẢN TRONG ĐỒ HỌA 2D 1.1 Thuật toán vẽ đoạn thẳng .2 1.1.1 Thuật toán DDA (Digital Defferencial Analyzer) hay thuật toán tăng dần (Basic Incremental Algorithm) .2 1.1.2 Thuật toán Bresenham vẽ đường thẳng 1.1.3 Thuật toán trung điểm vẽ đường thẳng .6 1.1.4 Thuật tốn vẽ đường trịn ,elip 1.1.4.1 Thuật tốn Bresenham vẽ đường trịn 10 1.1.4.2 Thuật tốn trung điểm vẽ đường trịn 11 1.1.4.3 Thuật toán trung điểm vẽ elip 13 CHƯƠNG PHÁT TRIỂN ỨNG DỤNG 3D .15 2.1 Mơ tả tốn 15 2.2 Mô tả chuyển động hành tinh .16 2.3 Kết thực nghiệm 16 KẾT LUẬN .17 0|Page 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 LỜI MỞ ĐẦU Đồ họa máy tính lĩnh vực khoa học máy tính nghiên cứu sở tốn học, thuật toán kĩ thuật phép tạo, hiển thị điều khiển hình ảnh hình máy tính Đồ họa máy tính ngày ứng dụng rộng rãi nhiều lĩnh vực khoa học, kĩ thuật, nghệ thuật, kinh doanh, quản lí, … Các ứng dụng đồ họa đa dạng, phong phú phát triển liên tục không ngừng Ngày nay, khơng có chương trình ứng dụng mà không sử dụng kĩ thuật đồ họa để làm tăng tính hấp dẫn Việc mơ tả liệu thơng qua hình ảnh màu sắc đa dạng nó, chương trình đồ họa thường thu hút người sử dụng tính thân thiện, dễ dùng,… kích thích khả sang tạo nâng cao suất làm việc Là sinh viên chúng em tìm hiểu làm quen với số kĩ thuật đồ họa máy tính thơng qua tài liệu, giảng thầy Ngô Trường Giang giảng dạy Với kiến thức học em định chọn đề tài: Xây dựng mơ hình mơ chuyển động hành tinh OpenGL đại 1|Page 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 CHƯƠNG THUẬT TỐN CƠ BẢN TRONG ĐỒ HỌA 2D 1.1 Thuật tốn vẽ đoạn thẳng 1.1.1 Thuật toán DDA (Digital Defferencial Analyzer) hay thuật toán tăng dần (Basic Incremental Algorithm) Input: Điểm đầu(x1,y1), điểm cuối(x2,y2), màu tô C Output: Đoạn thẳng nối điểm (x1,y1) (x2,y2) với màu C Phương trình đoạn thẳng qua điểm Chuyển đổi đường quét (Rasterization) Biến đổi đường liên tục thành rời rạc(Sampling) Scan conversion = Sampling Yêu cầu chất lượng đường vẽ 2|Page 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 -Hình dạng liên tục -Độ dày độ sáng -Các pixel gần đường”lí tưởng “ hiển thị -Vẽ nhanh DDA- Digital Differential Analyzer = Finite defferences Cho giá trị bước nhảy trục tính giá trị bước nhảy trục theo phương trình y=ax+b Với hệ số góc a nằm khoảng [0,1] -dy=a.dx -Nếu dx = y(i+1)=y(i)+a -Làm trịn số a -Ý tưởng thuật tốn: với bước tính số gia sở bước trước Nhận xét thuật tốn DDA: -Khơng có phép nhân -Có phép chia làm tròn số >chậm Qui tắc tổng quát vẽ đồ họa -Cộng trừ nhanh nhân -Nhân nhanh chia -Sử dụng bảng để đánh giá hàm rời rạc nhanh tính tốn -Tính tốn số nguyên nhanh số thực 3|Page Recommandé pour toi Suite du document ci-dessous 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 51 Life B1 Pre Intermediate W b trang 51 Marketing BỘ ĐỀ ĐỌC HIỂU - NLXH - Lecture notes 1BỘ ĐỀ ĐỌC HIỂU NLXH - Lecture notes mẫu đề cương NCKH Aucun Unit4BỘ ĐỀ ĐỌC HIỂU - NLXH - Lecture notes mẫu đề cương NCKH 100% (2) Aucun Unit3BỘ ĐỀ ĐỌC HIỂU - NLXH - Lecture notes mẫu đề cương NCKH 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 Aucun 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 -Tránh tính tốn khơng cần thiết nhờ nhận trường hợp đặc biệt đường vẽ 1.1.2 Thuật toán Bresenham vẽ đường thẳng Giả sử vừa vẽ điểm (xi,yi) phải xác định điểm vẽ thuộc pixel liền kề (xi+1,yi),(xi-1,yi),(xi,yi-1),(xi,yi+1), Hình dạng đoạn thẳng phụ thuộc vào giá trị dx dy -dx=0 đường thẳng song song trục y -dy=0 đường thẳng song song trục x -dx>0 tọa độ x biến thiên tăng dần -dxabs(dy) : y=f(x) 4|Page 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 Xét đoạn thẳng có hệ số góc 0≤m≤1 Điểm vừa chọn (x,y) -> điểm vẽ (x+1,y) hay (x+1, y+1) Việc lựa chọn phụ thuộc vào khoảng cách d: d=d1-d2 -Nếu d>0 ó d1>d2 chọn NE xi+1,yi -Nếu d dnewNE= d(xi+1,yi) =-2a(xi+1)+2yi-2b+1 -2a= d-2a=d+ ∆NE -Tìm dstart -Giả sử điểm khởi đầu xi,yi dstart= -2a(xi+1)+2yi-2b+1 -Mà ta có yi=axi+b => axi=yi-b dstart =-2a+1 Ta có a=dy/dx Nhân vế với dx ta có dstart=-2dy+dx ∆E= -2dy+2dx ∆NE= -2dy Chọn vị trí vẽ x1,y1 Tính tham số thứ d=-2dy+dx Nếu d >0 vị trí vẽ xi+1,yi Ngược lại vị trí vẽ xi+1,yi+1 Tiếp tục tăng x để tính d từ d trước Nếu trước di >0 di+1=di-2dy Ngược lại di+1=di-2dy+2dx n Nếu di+1 vị trí vẽ xi+2,yi Ngược lại vị trí vẽ xi+2,yi+2 Lặp lại bước x= x2 1.1.3 Thuật toán trung điểm vẽ đường thẳng Pitteway công bố năm 1967 , Van Aken cải tiến năm 1984 6|Page 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99 37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66 Giả sử ta chọn P để vẽ , xác định pixel N hay NE -Giao đường thẳng với Xp+1 Q, M trung điểm NE E Ý tưởng : M nằm phía đưởng thẳng ,nếu M phía đường thẳng chọn E,ngược lại chọn NE Nhiệm vụ : Xác định M đâu Phương trình đường thẳng F(x,y) = ax+by+c a = dy ,b=-dx,c=B.dx Giá trị hàm M: F(M) = F(xp+1,yp+1/2)=d Nếu d>0 ,M nằm đường thẳng chọn NE Nếu d