Có một thuật toán hợp lý về mặt tính toán để tạo ra một tập hợp đa giác từ một tập hợp các điểm 2d không?


7

Có một thuật toán đã biết / hiện có để lấy một khung vẽ 2D được bao phủ trong các điểm phân phối ngẫu nhiên / ngẫu nhiên và chia nó hoàn toàn thành một tập hợp các đa giác không chồng chéo không? Một ví dụ về loại kết quả mà tôi đang tìm kiếm:nhập mô tả hình ảnh ở đây


1
Điều quan trọng là thuật toán nên bắt đầu với tập hợp các điểm hay nó có ổn không nếu nó đạt được hiệu ứng theo cách khác? (Tôi không biết câu trả lời trong cả hai trường hợp, nhưng không có lý do gì để giới hạn câu trả lời nếu tập hợp các điểm được tạo ngẫu nhiên chỉ là khởi đầu của bạn tại một giải pháp chứ không phải là một phần nội tại của vấn đề.)
David Richerby

2
Bạn không nói điểm nào sẽ tạo ra sơ đồ trên. Câu trả lời "Voronoi" của DW là tuyệt vời, trừ khi bạn có nghĩa là các đỉnh được chia sẻ là các điểm được xác định ban đầu.
Vynce

Câu trả lời:


12

Bạn có thể đang tìm kiếm một sơ đồ Voronoi . Cho một tập của điểm, nó tạo ra một tế bào mỗi điểm, nơi mà các tế bào cho điểm chứa tất cả những gì là gần gũi hơn với hơn bất kỳ thời điểm nào trong . Có các thuật toán để tính toán sơ đồ Voronoi trong thời gian , trong đó là số điểm trong tập hợp của bạn.SppSO(nlgn)n


13

Có, thậm chí có các thuật toán có thể đáp ứng các ràng buộc bổ sung. Nó có thể xảy ra như một nhiệm vụ con trong quá trình tạo lưới . Thuật toán vanilla là tam giác Delaunay , liên quan chặt chẽ với sơ đồ Voronoi (trong trường hợp bạn tự hỏi tại sao DW nghĩ rằng biểu đồ Voronoi trả lời câu hỏi của bạn).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.