Tôi đang làm việc trên một công cụ vật lý hoàn toàn liên tục và tôi cần chọn các thuật toán để phát hiện va chạm pha rộng và hẹp. "Hoàn toàn liên tục" có nghĩa là tôi không bao giờ thực hiện các bài kiểm tra giao nhau, mà thay vào đó, tôi muốn tìm mọi cách để bắt mọi va chạm trước khi nó xảy ra, và đặt từng thứ vào ngăn xếp "va chạm theo kế hoạch" được TOI yêu cầu.
Pha rộng Phương pháp pha rộng liên tục duy nhất tôi có thể nghĩ đến là bọc từng cơ thể trong một vòng tròn và kiểm tra xem mỗi vòng tròn có bao giờ trùng nhau không. Điều này có vẻ không hiệu quả khủng khiếp, và thiếu bất kỳ loại thải nào.
Tôi không biết những gì tương tự liên tục có thể tồn tại cho các phương pháp loại bỏ va chạm rời rạc ngày nay, chẳng hạn như cây bốn lá. Làm thế nào tôi có thể đi về việc ngăn chặn các thử nghiệm rộng rãi không phù hợp và vô nghĩa như một động cơ rời rạc? Tôi cũng muốn có thể nhìn thấy va chạm nhiều hơn 1 khung hình phía trước.
Giai đoạn hẹp
Tôi đã xoay sở để điều chỉnh SAT hẹp thành một kiểm tra liên tục thay vì rời rạc, nhưng tôi chắc chắn có những thuật toán khác tốt hơn trên các bài báo hoặc trang web mà các bạn có thể đã gặp.
Những thuật toán nhanh hay chính xác nào mà bạn đề nghị tôi sử dụng và những ưu điểm / nhược điểm của mỗi thuật toán là gì?
Lưu ý cuối cùng:
Tôi nói các kỹ thuật và không phải là thuật toán vì tôi chưa quyết định về cách tôi sẽ lưu trữ các đa giác khác nhau có thể lõm, lồi, tròn hoặc thậm chí có lỗ. Tôi dự định đưa ra quyết định về điều này dựa trên những gì thuật toán yêu cầu (ví dụ nếu tôi chọn thuật toán chia đa giác thành hình tam giác hoặc hình lồi, tôi sẽ chỉ lưu trữ dữ liệu đa giác ở dạng này).