Octree

Bên trái: Chia đệ quy một khối lập phương ra làm tám. Bên phải: Cây octree tương ứng.

Cây octree là một cấu trúc dữ liệu dạng cây mà mỗi nút trong có chính xác tám con. Cây octree thường được sử dụng để phân chia không gian ba chiều bằng việc chia đệ quy không gian ra thành 8 phần. Cây octree là một cấu trúc trong không gian ba chiều tương tự như cây quadtree. Tên của cây octree được đặt bằng việc kết hợp giữa hai từ oct + tree, nhưng thông thường, chữ "octree" chỉ có một chữ "t". Cây octree thường được sử dụng trong đồ họa 3D và các game engine 3D.

Mô tả trong không gian

[sửa | sửa mã nguồn]

Mỗi nút trong một cây octree chia không gian ra thành 8 phần. Ở cây octree chia theo điểm, mỗi nút lưu một điểm ba chiều cụ thể và điểm này là "trung tâm" của phép chia không gian tại nút đó. Điểm này là một trong số 8 góc của tám con của nút đó. Ở cây octree dựa theo ma trận, điểm chia không gian được ngầm định là tâm của vùng không gian mà nút đó đại diện. Nút gốc của cây octree dựa theo ma trận có thể đại diện cho không gian vô hạn; nút gốc của cây octree chia theo điểm mô tả một vùng không gian hữu hạn có biên vì vậy trung tâm ngầm định là rõ ràng. Chú ý rằng cấu trúc octree không giống như cấu trúc k-d tree: k-d tree chia không gian dọc theo một chiều cụ thể nào đó còn octree chia không gian xung quanh một điểm cụ thể. Một điểm khác nữa đó là: k-d tree luôn là một cây nhị phân còn octree thì không phải. Nếu sử dụng thuật toán duyệt theo chiều sâu, các node được duyệt qua tương ứng với các phần bề mặt bên ngoài của khối lập phương.

Lịch sử

[sửa | sửa mã nguồn]

Việc sử dụng cấu trúc octree cho đồ họa 3D trên máy tính lần đầu tiên được thực hiện bởi Donald Meagher ở học viện Rensselaer Polytechnic. Quá trình sử dụng được mô tả trong một báo cáo năm 1980 với tên gọi "Octree Encoding: A New Technique for the Representation, Manipulation and Display of Arbitrary 3-D Objects by Computer". Từ đó, đến năm 1995, Donald đăng ký bằng sáng chế với công trình "High-speed image generation of complex solid objects using octree encoding". Bằng sáng chế này hết hạn vào năm 1984.

Các lĩnh vực thường dùng

[sửa | sửa mã nguồn]
  • Đồ họa 3D trên máy tính
  • Đánh chỉ mục không gian
  • Tìm kiếm hàng xóm gần nhất
  • Phát hiện xung đột trong không gian ba chiều
  • Xem xét chọn lọc hình cụt
  • Phương pháp Fast Multipole
  • Lưới bề mặt không cps cấu trúc
  • Phân tích phần tử hữu hạn
  • Cây octree voxel thưa
  • Ước lượng trạng thái[1]
  • Ước lượng tập[2]

Tham khảo

[sửa | sửa mã nguồn]
  1. ^ "Henning Eberhardt, Vesa Klumpp, Uwe D." (PDF). Bản gốc (PDF) lưu trữ ngày 3 tháng 3 năm 2016. Truy cập ngày 30 tháng 5 năm 2015.
  2. ^ V.
Chúng tôi bán
Bài viết liên quan
Tất tần tật về cuộc sụp đổ của Terra Luna
Tất tần tật về cuộc sụp đổ của Terra Luna
Một công nghệ mới xuất hiện có thể giúp cuộc sống của loài người dần trở nên dễ dàng hơn, nhưng đôi khi, nó cũng mang theo những thử thách, những đợt khủng hoảng mà chúng ta phải đương đầu
Tại sao bạn không cắt lỗ (theo tâm lý học)
Tại sao bạn không cắt lỗ (theo tâm lý học)
Đưa ra quyết định mua cổ phiếu là bạn đang bước vào 1 cuộc đặt cược, nếu đúng bạn sẽ có lời và nếu sai thì bạn chịu lỗ
Giới thiệu AG Mega Armor Mel - Giant Gospel Cannon
Giới thiệu AG Mega Armor Mel - Giant Gospel Cannon
Nhìn chung Mel bộ kỹ năng phù hợp trong những trận PVP với đội hình Cleaver, khả năng tạo shield
Gải mã các khái niệm cơ bản xoay quanh Jujutsu Kaisen - Chú thuật hồi chiến
Gải mã các khái niệm cơ bản xoay quanh Jujutsu Kaisen - Chú thuật hồi chiến
Điểm qua và giải mã các khái niệm về giới thuật sư một cách đơn giản nhất để mọi người không còn cảm thấy gượng gạo khi tiếp cận bộ truyện