Trong thời gian được học tập và thực hành dưới sự hướng dẫn của thầy, em không những thu được rất nhiều kiến thức bổ ích, mà còn được truyền sự say mê và thích thú đối với bộ môn “đồ họa
Trang 1TRƯỜ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: VẼ Ô TÔ
Sinh viên thực hiện : VŨ XUÂN LINH
PHẠM HUY HOÀNG PHẠM NGỌC MINH Giảng viên hướng dẫn : NGÔ QUỐC TẠO
Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : CÔNG NGHỆ PHẦN MỀM Lớp : TÍN CHỈ D14CNPM3
Hà Nội, tháng 10 năm 2022
Trang 2LỜI CẢM ƠN
Trên thực tế, không có sự thành công nào mà không gắn liền với những sự hỗ trợ, sự trợ giúp đỡ ít hay nhiều, dù là trực tiếp hay gián tiếp của người khác Trong suốt thời gian từ khi bắt đầu học tập ở giảng đường Đại học đến nay em đã nhận được rất nhiều sự quan tâm, giúp đỡ của thầy cô, gia đình và bạn bè
Với lòng biết ơn sâu sắc nhất, em xin gửi đến thầy cô ở Khoa Công Nghệ Thông Tin – Trường đại học Điện Lực đã cùng với tri thức và tâm huyết của mình
để tuyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường và đặc biệt, trong kỳ này, em được tiếp cận với môn học rất hữu ích đối với
sinh viên ngành Công Nghệ Thông Tin Đó là môn: “Đồ họa máy tính”
Em xin chân thành cảm ơn thầy Ngô Quộc Tạo đã tận tâm hướng dẫn chúng
em qua từng buổi học trên lớp cũng như những buổi nói chuyện, thảo luận về môn học Trong thời gian được học tập và thực hành dưới sự hướng dẫn của thầy, em không những thu được rất nhiều kiến thức bổ ích, mà còn được truyền sự say mê
và thích thú đối với bộ môn “đồ họa máy tính” Nếu không có những lời hướng
dẫn, dạy bảo của thầy thì em nghĩ báo cáo này rất khó có thể hoàn thành được
Xin gửi lời cảm ơn chân thành đến gia đình, bạn bè là nguồn động viên to lớn, giúp em vượt qua những khó khăn trong quá trình học tập và thực hiện báo cáo Mặc dù đã rất cố gắng hoàn thiện báo cáo với tất cả sự nỗ lực, tuy nhiên, do bước đầu đi vào thực tế, tìm hiểu và xây dựng báo cáo trong thời gian có hạn, và
kiến thức còn hạn chế, nhiều bỡ ngỡ, nên báo cáo “Vẽ Ô tô” chắc chắn sẽ không
thể tránh khỏi những thiếu sót Em rất mong nhận được sự quan tâm, thông cảm và những đóng góp quý báu của các thầy cô và các bạn để báo cáo này được hoàn thiện hơn
Một lần nữa, em xin chân thành cảm ơn và luôn mong nhận được sự đóng góp của mọi người
Trân trọng
Trang 3LỜI NÓI ĐẦU
Sự phát triển của khoa học, kĩ thuật, nghệ thuật, kinh doanh và công nghệ luôn luôn phụ thuộc vào khả năng truyền đạt thông tin của chúng ta, hoặc thông qua các bit dữ liệu lưu trữ trong microchip hoặc thông qua giao tiếp bằng tiếng nói Câu châm ngôn từ xa xưa “một hình ảnh có giá trị hơn cả vạn lời” hay “trăm nghe không bằng một thấy” cho thấy ý nghĩa rất lớn của hình ảnh trong việc truyền tải thông tin Hình ảnh bao giờ cũng được cảm nhận nhanh và dễ dàng hơn, đặc biệt là trong trường hợp bất đồng về ngôn ngữ Do đó không có gì ngạc nhiên khi mà ngay từ khi xuất hiện máy tính, các nhà nghiên cứu đã cố gắng sử dụng nó để phát sinh các hình ảnh trên màn hình Trong suốt gần 50 năm phát triển của máy tính, khả năng phát sinh hình ảnh bằng máy tính của chúng ta đã đạt tới mức mà bây giờ hầu như tất cả các máy tính đều có khả năng đồ họa
Đồ họa máy tính là một lĩnh vực của khoa học máy tính nghiên cứu về cơ sở toán học, các thuật toán cũng như các kĩ thuật cho phép tạo, hiển thị và điều khiển hình ảnh trên máy tính Đồ họa máy tính lien quan ít nhiều đến một số lĩnh vực như đại số, hình học giải tích và hình học họa hình, quang học… kỹ thuật máy tính và đặc biệt là chế tạo phần cứng (các loại màn hình, các thiết bị nhập xuất, các
vi mạch đồ họa)
Chúng ta có thể vẽ ra những hình ảnh không chỉ là ảnh tĩnh mà còn có thể biến đổi thành những hình ảnh sinh động qua phép tịnh tiến, phép biến đổi, Do vậy,
qua thời gian tìm hiểu nhóm em đã quyết định chọn đề tài “Vẽ Ô tô” nhằm giúp
mọi người có thể hiểu rõ hơn về môn học này
Trang 4CHƯƠNG I: TỔNG QUAN
Ưu điểm của đồ họa máy tính là cho phép dễ dàng thao tác lên các đối tượng được tạo ra Một nhà quản lý có nhu cầu thu nhỏ các biểu đồ trong một báo cáo, một kiến trúc sư muốn nhìn toàn nhà ở những góc nhìn khác nhau, một nhà thiết kế muốn quan sát và chỉnh sửa các mẫu đối tượng trong quá trình thiết kế, Tất cả các thao tác này có thể được hỗ trợ một cách dễ dàng nhờ vào các phép biến đổi hình học Các phép biến đổi hình học sẽ làm thay đổi mô tả về tọa độ của các đối tượng, từ đó làm cho đối tượng bị thay đổi về hướng, kích thước, hình dạng Các phép biến đổi hình học cơ sở bao gồm: tịnh tiến, biến đổi tỷ lệ, phép quay Ngoài ra một số phép biến đổi khác cũng thường được áp dụng đó là: phéo đối xứng và biến dạng
I Phép tịnh tiến
Ảnh của phép tịnh tiến theo vector (a,b) của điểm P(x,y) là điểm Q(x*,y*)
Vector tịnh tiến (a,b) còn gọi là “vector độ dời” Chúng ta có thể áp dụng quy tắc trên mọi điểm của đối tượng để dịch chuyển nó Đơn giản hơn, để tịnh tiến một
đa giác chỉ cần tịnh tiến các đỉnh của nó rồi vẽ lại đa giác mới Tương tự, đối với đường tròn elip ta tịnh tiến tâm của chúng tới vị trí mới rồi vẽ lại
Hình 1.1: minh họa phép tịnh tiến
Nếu gọi ttx và tty lần lượt là độ dời theo trục hoành và trục tung thì tọa độ của điểm mới Q(x’,y’) sau khi tịnh tiến P(x,y) sẽ là:
Khi đó (ttx, tty) được gọi là vector tịnh tiến hay độ dời
Trang 5- Ma trận biến đổi:
*cài đặt thuật toán:
Void Tinhtien(float &x, float&y, float ttx, float tty)
{
x = x + ttx;
y = y +tty;
}
II phép biến đổi tỉ lệ
Phép biến đổi tỉ lệ làm thay đổi kích thước của đối tượng Để co hay dãn tọa độ của một điểm P(x,y) theo trục hoành và trục tung lần lượt là tlx, tly ta nhân lần lượt tlx và tly vào các tọa độ của P
- Ma trận biến đổi:
*cài đặt thuật toán:
Void biendoi(float &x, float&y, float ttx, float tty)
{
x = x * tlx;
y = y * tly;
}
III kết hợp phép biến đổi hình
III.1 kết hợp các phép tịnh tiến.
Nếu ta thực hiện các phép tịnh tiến lên P(x, y) được p’ rồi lại thực hiện một phép tịnh tiến khác lên P’ ta được Q’(x’, y’) Như vậy Q’ là ảnh của hai phép tịnh tiến liên tiếp V(ttx1, tty1) và V’(ttx2, tty2)
Trang 6Ta có:
Vậy kết hợp hai phép tịnh tiến là một phép tịnh tiến Từ đó ta có thể kết hợp của nhiều phép tịnh tiến cũng là một phép tịnh tiến Và nó giống như mô phỏng lại chuyển động của đối tượng là ta tịnh tiến
- thuật toán:
Void TinhTien2LanDaGiac(int n, float ttx1, float tty1, float ttx2, float tty2)
{
For( int i = 0; i<=n; i++)
{
TinhTien(X[i], Y[i], ttx1+ttx2, tty1+tty2) }
}
III.2 kết hợp các phép biến đổi tỉ lệ
Tương tự như phép tịnh tiến, ta có tọa độ điểm Q(x’, y’) là điểm có được sau khi kết hợp hai phép tỉ lệ M’1(t1x1, tly2) và M’2(tlx2, tly2)
Ta có:
M’1(t1x1, tly2), M’2(tlx2, tly2)
Vậy kết hợp 2 phép tỉ lệ là một phép tỉ lệ: như vậy dễ dàng mở rộng ra cho kết quả kết hợp nhiều phép tỉ lệ cũng là một phép tỉ lệ:
Trang 7CHƯƠNG II.CÀI ĐẶT THUẬT TOÁN
I Vẽ ô tô
Trang 8II Phép tịnh tiến
Trang 9III Phép biến đổi tỉ lệ
Trang 10IV Chuyển động của ô tô
Trang 11V Biến to ô tô
Trang 12CHƯƠNG III CHƯƠNG TRÌNH MINH HỌA
I Vẽ ô tô
Downloaded by v? ngoc (vuchinhhp10@gmail.com)
Trang 13II phép tịnh tiến
Downloaded by v? ngoc (vuchinhhp10@gmail.com)
Trang 14III Phép biến đổi tỉ lệ
Downloaded by v? ngoc (vuchinhhp10@gmail.com)