Tài liệu Đề tài Chương trình thiết kế hệ thống kiểm tra các quan hệ hình học trong 2d và 3d: Đề tài : I. GIỚI THIỆU II. NỘI DUNG III. THIẾT KẾ VÀ CÀI ĐẶT End 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. Phần I: Giới thiệu Next 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. Phần I: Giới thiệu Next Back 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 lo...
24 trang |
Chia sẻ: haohao | Lượt xem: 1231 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Chương trình thiết kế hệ thống kiểm tra các quan hệ hình học trong 2d và 3d, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Đề tài : I. GIỚI THIỆU II. NỘI DUNG III. THIẾT KẾ VÀ CÀI ĐẶT End 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. Phần I: Giới thiệu Next 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. Phần I: Giới thiệu Next Back 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) Phần I: Giới thiệu Next Back 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. Phần I: Giới thiệu Home Back 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. Phần II: Nội dung Next 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 Next Back 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. Next Back 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. Phần II: Nội dung Back Next 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. Phần II: Nội dung Next Back 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. Phần II: Nội dung Back Next 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. Phần II: Nội dung Next Back 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. Tính diện tích đa giác. Phần II: Nội dung Next Back 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. Phần II: Nội dung Next Back 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. Kiểm tra quan hệ mặt phẳng - mặt phẳng. Phần II: Nội dung Home Back 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). Phần III: Thiết kế và cài đặt Next 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. Phần III: Thiết kế và cài đặt Next Back 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. Phần III: Thiết kế và cài đặt Next Back 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; } ListPoint; Phần III: Thiết kế cài đặt Next Back 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 ; Phần III: Thiết kế và cài đặt Next Back 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]; } Wireframe; Phần III: Thiết kế và cài đặt Back Next 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ể. Phần III: Thiết kế và cài đặt Back Next 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. Nhóm hàm vẽ, demo các vật thể. Back Home Phần III: Thiết kế và cài đặt
Các file đính kèm theo tài liệu này:
- BC-THAI1.ppt