Thiết kế hệ thống kiểm tra các quan hệ hình học trong 2D và 3D - Lê Quốc Thái

ppt 24 trang huongle 5490
Bạn đang xem 20 trang mẫu của tài liệu "Thiết kế hệ thống kiểm tra các quan hệ hình học trong 2D và 3D - Lê Quốc Thái", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptthiet_ke_he_thong_kiem_tra_cac_quan_he_hinh_hoc_trong_2d_va.ppt

Nội dung text: Thiết kế hệ thống kiểm tra các quan hệ hình học trong 2D và 3D - Lê Quốc Thái

  1. Đề tài :
  2. I. GIỚI THIỆU II. NỘI DUNG III. THIẾT KẾ VÀ CÀI ĐẶT End
  3. Phần I: Giới thiệu I. SƠ LƯỢC VỀ CHƯƠNG TRÌNH Đề tài thực hiện chức năng kiểm tra các mối quan hệ trong:  Không gian 2 chiều (2D)  Không gian 3 chiều (3D) Các thuật toán kiểm tra trong chương trình được xây dựng dựa trên cơ sở toán học và không gian vector trong đồ hoạ máy tính. Next
  4. Phần I: Giới thiệu II. SƠ LƯỢC NGÔN NGỮ THỂ HIỆN ĐỀ TÀI  Chương trình được thể hiện trên môi trường ngôn ngữ Visual C++  Trong Visual C++ phần đồ họa được thể hiện trong lớp CDC (Class Device Context) với nhiều hàm thành viên hỗ trợ cho việc vẽ điểm, đường, đa giác, tô màu  Bộ thư viện OPENGL được sử dụng trong phần kiểm tra 3D. Back Next
  5. Phần I: Giới thiệu III. GIỚI THIỆU CÁC HÀM A. Các hàm của lớp CDC (Class Device Context)  Vẽ điểm (Point)  Vẽ đường thẳng (Line)  Vẽ hình chữ nhật (Rectangle)  Vẽ hình ellipse (Ellipse)  Hàm loan vùng kín (FloodFill)  Hàm tạo các đường vẽ (CreatePen) Back Next
  6. Phần I: Giới thiệu III. GIỚI THIỆU CÁC HÀM (tt) B. Các hàm trong bộ thư viện OpenGL  Hàm vẽ điểm, đường, đa giác.  Hàm chỉ ra tọa độ của điểm, đường, đa giác.  Hàm biến đổi tọa độ.  Các hàm liên quan đến màu.  Các hàm liên quan đến ánh sáng. Back Home
  7. Phần II: Nội dung I. CƠ SỞ TOÁN HỌC Các lý thuyết cơ sở toán học được sử dụng cho các thuật toán trong đề tài bao gồm :  Hình học giải tích trong mặt phẳng.  Hình học giải tích trong không gian. Không gian vector là cơ sở lý thuyết toán học tất yếu để xây dựng các cấu trúc đồ họa máy tính. Next
  8. Phần II: Nội dung I. CƠ SỞ TOÁN HỌC (tt) A. Giới thiệu về vector. B. Các phép tính vector. C. Ưùng dụng các phép tính vector. D. Các dạng phương trình của đường thẳng và mặt phẳng Back Next
  9. Phần II: Nội dung II. CÁC ĐỐI TƯỢNG HÌNH HỌC VÀ SỰ TƯƠNG QUAN A. CÁC QUAN HỆ HÌNH HỌC TRONG 2D 1. Các đối tượng hình học cơ bản  Điểm.  Đường thẳng.  Đa giác. Back Next
  10. Phần II: Nội dung II. CÁC ĐỐI TƯỢNG HÌNH HỌC VÀ SỰ TƯƠNG QUAN (tt) 2. Sự tương quan giữa các đối tượng hình học  Điểm - Đường thẳng.  Điểm - Đa giác.  Đường thẳng - Đa giác.  Đường thẳng - Đường thẳng.  Đa giác - Đa giác. Back Next
  11. Phần II: Nội dung II. CÁC ĐỐI TƯỢNG HÌNH HỌC VÀ SỰ TƯƠNG QUAN (tt) B. CÁC QUAN HỆ HÌNH HỌC TRONG 3D 1. Các đối tượng hình học cơ bản  Điểm.  Đường thẳng.  Mặt phẳng. Back Next
  12. Phần II: Nội dung II. CÁC ĐỐI TƯỢNG HÌNH HỌC VÀ SỰ TƯƠNG QUAN (tt) 2. Sự tương quan giữa các đối tượng hình học  Điểm - Đường thẳng.  Điểm - Mặt phẳng.  Đường thẳng - Mặt phẳng.  Đường thẳng - Đường thẳng.  Mặt phẳng - Mặt phẳng. Back Next
  13. Phần II: Nội dung III. CÁC THUẬT TOÁN KIỂM TRA A. TRONG MẶT PHẲNG (2D)  Tính góc giữa hai đường thẳng.  Tìm hình chiếu của đoạn thẳng.  Xác định giao điểm giữa hai đoạn thẳng.  Vẽ đa giác.  Tô màu đa giác. Back Next
  14. Phần II: Nội dung III. CÁC THUẬT TOÁN KIỂM TRA (tt) A. TRONG MẶT PHẲNG (2D) (tt)  Xác định diểm bên trong/bên ngoài đa giác.  Kiểm tra quan hệ giữa đoạn thẳng và đa giác.  Kiểm tra quan hệ hai đa giác.  Kiểm tra tính lồi của đa giác. Back Next  Tính diện tích đa giác.
  15. Phần II: Nội dung III. CÁC THUẬT TOÁN KIỂM TRA (tt) B. TRONG KHÔNG GIAN (3D)  Các phép biến hình 3 chiều.  Biểu diễn đối tượng 3 chiều.  Quan sát vật thể 3D qua hệ toạ độ quan sát.  Kiểm tra quan hệ điểm - đường thẳng. Back Next
  16. Phần II: Nội dung III. CÁC THUẬT TOÁN KIỂM TRA (tt) B. TRONG KHÔNG GIAN (3D)  Kiểm tra quan hệ điểm - mặt phẳng.  Kiểm tra quan hệ đường thẳng - đường thẳng.  Kiểm tra quan hệ đường thẳng - mặt phẳng. Back  Kiểm tra quan hệ mặt phẳng - mặt phẳng.Home
  17. Phần III: Thiết kế và cài đặt A. THIẾT KẾ GIAO DIỆN Cập nhật các thông số về kích thước vùng của vùng Client:  Lớp CMainFrame : Có chức năng tạo màn hình vùng Client.  Lớp CApp : Có chức năng thực hiện ứng dụng kiểu đơn tài liệu (SDI). Next
  18. Phần III: Thiết kế và cài đặt A. THIẾT KẾ GIAO DIỆN (tt)  Lớp CView : Có chức năng hiển thị những hiện thực cuả chương trình.  Lớp CDoc : Có chức năng xử lý việc lưu trữ dữ liệu.  Lớp CDialog : Có chức năng nhập, xuất dữ kiện. Back Next
  19. Phần III: Thiết kế và cài đặt B. CÁCH TỔ CHỨC DỮ LIỆU 1. ĐA GIÁC PHẲNG: Các đỉnh của đa giác P phẳng được lưu trữ lần lượt trong danh sách kiểu CPoint như P[0].x, P[0].y; P[1].x,P[1].y; Với đỉnh cuối được nhận biết bởi chỉ số đa giác kèm theo. Back Next
  20. Phần III: Thiết kế cài đặt B. CÁCH TỔ CHỨC DỮ LIỆU (tt) 2. ĐIỂM: Lưu trữ các điểm, có kèm theo cờ để phân biệt các loại điểm khác nhau, dùng trong thủ tục kiểm tra quan hệ hai đa giác, được khai báo như sau: typedef struct { CPoint P; int CFlag; Back } ListPoint; Next
  21. Phần III: Thiết kế và cài đặt B. CÁCH TỔ CHỨC DỮ LIỆU (tt) 2. ĐIỂM (tt) : Trong không gian ba chiều (3D), được khai báo như sau: typedef struct { long x; long y; long z; } point3d ; Back Next
  22. Phần III: Thiết kế và cài đặt B. CÁCH TỔ CHỨC DỮ LIỆU (tt) 3. Wireframe:  Danh sách đỉnh.  Danh sách cạnh: typedef struct { int NumV; int NumE; point3d vert[20]; int edge[30][2]; Back } Wireframe; Next
  23. Phần III: Thiết kế và cài đặt C. CÁCH TỔ CHỨC CÁC HÀM 1. Trong 2D Các hàm và thủ tục chủ yếu được sử dụng trong lớp CKiemTra2DView.cpp :  Các hàm phục vụ vẽ các đối tượng hình học.  Nhóm các hàm liên quan đến mouse.  Nhóm các hàm kiểm tra các mối quan hệ.  Nhóm các hàm liên quan đến các phép chiếu.  Nhóm các hàm liên quan đến các hình thể. Back Next
  24. Phần III: Thiết kế và cài đặt C. CÁCH TỔ CHỨC CÁC HÀM (tt) 2. Trong 3D Các hàm kiểm tra sử dụng bộ thư viện OPenGL và chủ yếu được sử dụng trong lớp CKiemTra3DView.cpp :  Hàm tạo ngữ cảnh.  Hàm liên quan đến các thao tác bàn phím.  Nhóm hàm điều chỉnh kích thước, tạo màu nền.  Nhóm hàm nhập tọa độ cho các đối tượng.  Nhóm các hàm kiểm tra và tính toán. Back Home  Nhóm hàm vẽ, demo các vật thể.