LẬP TRÌNH ĐỒ HỌA ỨNG DỤNG THƯ VIỆN OPENGL TRÊN LINUX

Tài liệu đại học Toggle navigation
  • Miễn phí (current)
  • Danh mục
    • Khoa học kỹ thuật
    • Công nghệ thông tin
    • Kinh tế, Tài chính, Kế toán
    • Văn hóa, Xã hội
    • Ngoại ngữ
    • Văn học, Báo chí
    • Kiến trúc, xây dựng
    • Sư phạm
    • Khoa học Tự nhiên
    • Luật
    • Y Dược, Công nghệ thực phẩm
    • Nông Lâm Thủy sản
    • Ôn thi Đại học, THPT
    • Đại cương
    • Tài liệu khác
    • Luận văn tổng hợp
    • Nông Lâm
    • Nông nghiệp
    • Luận văn luận án
    • Văn mẫu
  • Luận văn tổng hợp
  1. Home
  2. Luận văn tổng hợp
  3. LẬP TRÌNH ĐỒ HỌA ỨNG DỤNG THƯ VIỆN OPENGL TRÊN LINUX
Trich dan LẬP TRÌNH ĐỒ HỌA ỨNG DỤNG THƯ VIỆN OPENGL TRÊN LINUX - Pdf 33

TRƯỜNG ĐẠI HỌC BÁCH KHOAKHOA CÔNG NGHỆ THÔNG TINBỘ MÔN MẠNG VÀ TRUYỀN THÔNGBÀI TẬP LỚN CHUYÊN ĐỀ IIĐỀ TÀI:LẬP TRÌNH ĐỒ HỌA ỨNG DỤNG THƯ VIỆN OPENGL TRÊN LINUXSinh viên : Lê Phương Tiến 07T2Hà Phước Việt 07T1Cán bộ hướng dẫn : Nguyễn Tấn KhôiĐà Nẵng 2010Lập trình đồ họa ứng dụng thư viện OpenGL trên Linux 2NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................3.1.1. Points, Lines and Polygons............................................................173.1.2. Vẽ các đối tượng không gian ( Drawing 3-D Objects )..................193.1.3. Các phép biến đổi ( Transformations )...........................................193.1.4. Danh sách hiển thị ( Display Lists )...............................................203.2. KHUNG HIỂN THỊ ( VIEWING )...............................................................223.2.1. Màu sắc ( Color )...........................................................................223.2.2. Độ bóng ( Shading ) ......................................................................233.2.3. Khung hình biến đổi ( Viewing Transformation )..........................233.2.4. Phép chiếu ( Projection )................................................................243.2.5. Thao tác ngăn xếp ma trận ( Manipulating the Matrix Stacks )......253.2.6. Ánh sáng ( Light )..........................................................................263.2.7. Khung quan sát biến đổi ( Viewport Transformation )...................27CHƯƠNG 4. CHƯƠNG TRÌNH DEMO............................................................274.1. CÁC KỸ THUẬT SỬ DỤNG CHO CHƯƠNG TRÌNH.......................................274.2. MÃ NGUỒN...........................................................................................284.3. KẾT QUẢ CHẠY.....................................................................................35GVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 4TỔNG QUAN VỀ ĐỀ TÀI1. Bối cảnh và lý do thực hiện đề tàiNgày nay đồ họa máy tính đóng một vai trò quan trong, quyết định không nhỏ đến sự thành công hay thất bại của một sản phẩm phần mềm. Sản phẩm làm ra ngoài tính năng đáp ứng được nhu cầu sử dụng thì mẫu giao diện đồ họa phải bắt mắt, than thiện với người sử dụng, có như thế thì sản phẩm mới có thể thành công. Ngoài các sản phẩm phần mềm thì một xu hướng mới nữa đó là các bộ phim hoạt hình 3D cũng đang rất được quan tâm.Nhận thấy tìm năng vả khả năng phát khiển mạnh của công nghiệp đồ họa, chúng em lựa chọn đề tài: Lập trình đồ họa ứng dụng thư viện OpenGL trên Linux. Đây là một thư viên hỗ trợ các công cụ mạnh mẽ để vẽ và xử lý các đối tượng đồ họa.2. Mục tiêu đề tàithừa thói quen cũng có thông số tương đối ít.GVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 61.2. Cách cài đặt1.2.1. Môi trường cài đặtQuá trình tìm hiểu và viết chương trình được thực hiện trên môi trường Linux phiên bản Ubuntu 10.10. OpenGL là một bộ thư viện mở có thể sử dụng ở môi cả môi trường Windows nhưng Ubuntu là một hệ điều hành mở, kho tài liệu phong phú, luôn có một cộng động sẵn sang giúp đỡ khi có vẫn đề khó khăn. Các gói thư viện của openGL : GLUT,AUX, XLIB…..1.2.2. Cài đặt• Cài đặt trình biên dịch C/C++ GNU: tại terminal gõSudo apt-get install gccSudo apt-get install g++Sau khi cài đặt kiểm tra lại thử đã có hay chưaGVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 7• Cài đặt bộ thư viện OpenglAdministrator->synaptic->search với từ khóa opengl: Lựa chọn và make các file cần thiết và apply1.2.3. Sử dụng thư viện openGL• Cách biên dịch 1 bài C đơn giản• Cách biên dịch C có sử dụng thư viện OpenGL Tại terminal gõ: gcc [filenam].c –o [filenam] –lglut –lGLU –lGL Dùng makefile : vào terminal đưa về thư mục chứa code và makefile  gõ make là xongChương 2. CƠ BẢN VỀ OPENGLGVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 82.1. Cấu trúc chương trình openGL đơn giảnGVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 9có giá trị độ sâu lớn hơn. Các bộ đệm thứ hai, bộ đệm stencil được sử dụng để hạn chế vẽ để phần nào đó của màn hình, chỉ như là một stencil tông có thể được sử dụng với một hộp sơn xịt để làm cho một hình ảnh in. Cuối cùng, bộ đệm tích lũy được sử dụng để tích lũy một loạt các hình ảnh vào một hình ảnh sáng tác cuối cùng. Không ai trong số này là các bộ đệm mặc định.Cần phải tạo ra các đặc tính của cửa sổ. Một tham số đến glutInitWindowSize () sẽ được sử dụng để xác định kích thước, trong ảnh, trong cửa sổ inital của bạn. Chiều cao và chiều rộng (bằng pixel) của cửa sổ yêu cầu. Tương tự như vậy, glutInitWindowPosition () được sử dụng để xác định vị trí màn hình cho góc trên bên trái của cửa sổ ban đầu. Những giá trị, x và y, cho biết vị trí của các cửa sổ liên quan đến toàn bộ màn hình hiển thị.2.1.2. Tạo của sổĐể thực sự tạo ra một cửa sổ, với các thiết lập đặc điểm trước đó (hiển thị chế độ, kích thước, vị trí, vv), sử dụng glutCreateWindow () để khởi tạo. Lệnh này có một chuỗi như một tham số mà có thể xuất hiện trong thanh tiêu đề nếu hệ thống cửa sổ bạn đang sử dụng hỗ trợ nó cửa sổ là không thực sự hiển thị cho đến khi glutMainLoop () được nhập vào.2.1.3. Chức năng hiển thịHàm glutDisplayFunc () làm thủ tục là sự kiện quan trọng đầu tiên của hầu hết các chức năng gọi lại và hiển thị . Một chức năng gọi lại là một trong những nơi hàm đã được định nghĩa ,ứng với mỗi hàm sẽ có một sự kiện phù hợp . Ví dụ, các đối số của glutDisplayFunc () là chức năng được GLUT xác định rằng nội dung của cửa sổ cần phải được hiển thị lại. Vì vậy, bạn nên đặt tất cả các hàm mà bạn cần hiển thị ra một cảnh trong chức năng gọi lại hiển thị.2.1.4. Chức năng định lại hìnhHàm glutReshapeFunc () là một chức năng gọi lại rằng quy định cụ thể chức năng đó được gọi là bất cứ khi nào cửa sổ được thu nhỏ hoặc di chuyển. Thông thường, các chức năng đó được gọi khi cần thiết cho thay đổi hình dáng chức năng hiển thị cửa sổ void drawScene() { }int main(int argc, char** argv) { //Khoi tao GLUT glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); glutInitWindowSize(400, 400); / // Tao cua so glutCreateWindow("Demo");GVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 11 initRendering(); //Khoi tao cac thuoc tinh lien qua // cac ham ve, lay ban phim va resize glutDisplayFunc(drawScene); glutKeyboardFunc(handleKeypress); glutReshapeFunc(handleResize); glutMainLoop(); //vong lap chinh de duy tri su ve return 0; }• Ví dụ chương trình đơn giản “Hello.c”#include <GL/glut.h>void display(void){ glClear (GL_COLOR_BUFFER_BIT); glColor3f (1.0, 1.0, 1.0); glBegin(GL_POLYGON);glClearColor (). Tương tự như vậy, OpenGL xác định hằng số bắt đầu bằng GL_, sử GVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 12dụng tất cả các chữ in hoa, và sử dụng gạch dưới những từ riêng biệt (như GL_COLOR_BUFFER_BIT).Bạn cũng có thể đã nhận thấy một số không liên quan thư dường như nối thêm vào một số tên lệnh (các 3f trong glColor3f ()). Sự thật là phần màu của tên lệnh là đủ để xác định các lệnh là một trong những bộ màu sắc hiện hành. Tuy nhiên, nhiều hơn một lệnh như vậy đã được xác định để bạn có thể sử dụng các loại khác nhau của các đối số;. Trong đó, 3 phần của hậu tố chỉ ra rằng ba đối số được đưa ra một phiên bản của lệnh màu có bốn tham số của. F Phần hậu tố cho thấy rằng các đối số là số điểm float. Một số các lệnh OpenGL chấp nhận có đến tám loại dữ liệu khác nhau cho các đối số của họ. Các chữ được sử dụng như là hậu tố để xác định các kiểu dữ liệu cho ANSI C triển khai thực hiện của OpenGL được thể hiện trong Bảng 1-1, cùng với các định nghĩa OpenGL loại tương ứng. Việc thực hiện cụ thể của OpenGL mà bạn đang sử dụng có thể không tuân theo sơ đồ chính xác, một thực hiện trong C + + hay Ada, ví dụ, không cần.Như vậy, hai lệnh glVertex2i(1, 3);glVertex2f(1.0, 3.0); là tương đương, trừ trường hợp đầu tiên xác định tọa độ của đỉnh là số nguyên 32-bit và lần thứ hai quy định chúng như là một điểm chính xác con số thực.GVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước ViệtLập trình đồ họa ứng dụng thư viện OpenGL trên Linux 132.2.2. Máy trạng tháiOpenGL là một máy trạng thái. Bạn đặt nó vào trạng thái khác nhau (hay chế độ) mà sau đó vẫn có hiệu lực cho đến khi thay đổi chúng. Như đã thấy, màu sắc hiện nay là một biến trạng thái. Có thể đặt màu hiện tại để trắng, đỏ, hoặc bất kỳ màu nào khác, và sau đó mỗi đối tượng được vẽ với màu sắc cho đến khi bạn thiết lập màu hiện tại để cái gì khác. Màu sắc hiện tại chỉ là một trong nhiều biến trạng thái OpenGL lưu trữ . Reference Manual. Glu sử dụng tiền tố Glu. The OpenGL Extension to the X Window System (GLX), cung cấp một phương tiện của việc tạo ra một bối cảnh OpenGL và liên kết nó với một cửa sổ drawable trên một máy có sử dụng X Window System. GLX được cung cấp như là một hỗ trợ cho OpenGL. Đó là mô tả chi tiết hơn trong cả hai D Phụ lục và OpenGL Reference Manual. Một trong những sử dụng GLX (cho framebuffer trao đổi) được mô tả trong "hoạt hình”. GLX sử dụng tiền tố glx. The OpenGL Programming Guide Auxiliary Library ( AUX ), Thư viện đã được viết riêng cho cuốn sách này để làm ví dụ lập trình đơn giản và chưa hoàn chỉnh hơn. Đó là chủ đề của phần tiếp theo, và đó là mô tả chi tiết tại Phụ lục E, sử dụng thư viện aux tiền tố. "Làm thế nào để Lấy mẫu mã" mô tả làm thế nào để có được những mã nguồn cho các thư viện phụ trợ. Open Inventor là một bộ công cụ định hướng đối tượng dựa trên OpenGL cung cấp các đối tượng và phương pháp để tạo chiều tương tác đồ họa ba ứng dụng. Có sẵn từ Silicon Graphics và viết bằng C + +, Open Inventor cung cấp xây dựng các đối tượng trước và tích hợp sẵn trong trường hợp mô hình cho tương tác người dùng, cao cấp thành phần ứng dụng cho việc tạo và ba chiều cảnh chỉnh sửa, và khả năng in ấn các đối tượng và trao đổi dữ liệu trong đồ họa khác định dạng.2.4. Hoạt cảnh (Animation )Một trong những điều thú vị nhất mà bạn có thể làm trên một máy tính đồ họa được vẽ hình ảnh chuyển động. Cho dù bạn là một kỹ sư đang cố gắng để xem tất cả các mặt của một phần cơ khí bạn đang thiết kế, một phi công học tập để bay một máy bay sử dụng một mô phỏng, hay chỉ đơn thuần là trò chơi máy tính một người đam mê, thì rõ ràng rằng hoạt hình là một phần quan trọng trong đồ họa máy tính . Để tạo ra một sử chuyển động của hình ảnh thì chỉ việc thay đổi các frame và kỹ thuật này được dùng để làm hoạt hình, các đồ họa khác. Nhưng với sự vẽ xóa liên tục GVHD: Nguyễn Tấn Khôi SVTH: Lê Phương Tiến – Hà Phước Việt Tải File Word Nhờ tải bản gốc Tài liệu, ebook tham khảo khác

  • đồ họa ứng dụng và tranh sơn khắc
  • Ngôn ngữ lập trình Fortran và ứng dụng trong khí tượng thủy văn
  • Đồ họa ứng dụng và tranh sơn khắc
  • nghiên cứu lập trình thread và ứng dụng
  • Chuyên đề đồ họa ứng dụng
  • Ứng Dụng Phương Pháp Luận-Phương Pháp Sáng Tạo Trong Lập Trình Phần Mềm Quản Lí Thư Viện
  • LẬP TRÌNH ĐỒ HỌA VỚI AWT
  • LẬP TRÌNH ĐỒ HỌA ỨNG DỤNG THƯ VIỆN OPENGL TRÊN LINUX
  • TÌM HIỂU NGÔN NGỮ lập TRÌNH MAPLE và ỨNG DỤNG GIẢI một số bài TOÁN HÌNH học GIẢI TÍCH
  • Tìm hiểu về Lập trình đồ họa trên Symbian
  • Các đề ôn thi tốt nghiệp THPT môn toán
  • Gần 400 đề thi trắc nghiệm kèm đáp án môn Vật Lý ôn thi Đại học
  • Đề cương ôn thi tốt nghiệp 12 và luyện thi đại học - Môn văn
  • Đề cương ôn thi tốt nghiệp Ngữ văn 12
  • Một số đề luyện tập và gợi ý làm bài - Môn văn 12
  • Ôn tập phần Tiếng Việt
  • Ôn thi tốt nghiệp 12 theo chủ đề - Môn văn
  • Ôn thi tốt nghiệp môn Toán theo từng chủ đề
  • Tài liệu ôn tập Ngữ văn 12
  • Đề ôn luyện thi tốt nghiệp THPT môn Tiếng Anh 12
Hệ thống tự động tổng hợp link tải tài liệu, ebook miễn phí cho các bạn sinh viên tham khảo.

Học thêm

  • Nhờ tải tài liệu
  • Từ điển Nhật Việt online
  • Từ điển Hàn Việt online
  • Văn mẫu tuyển chọn
  • Tài liệu Cao học
  • Tài liệu tham khảo
  • Truyện Tiếng Anh
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status

Top

Từ khóa » Thư Viện Opengl