Phương pháp cơ bản (nếu bạn có một số lượng nhỏ đa giác) là lưu trữ tất cả các đa giác trong một tập hợp và lặp qua các phần tử để kiểm tra xem một điểm có nằm trong một đa giác hay không.
Mặt khác, nếu bạn có một số lượng đa giác đáng kể, tôi khuyên bạn nên sử dụng cấu trúc dữ liệu cây R, cấu trúc này không có sẵn trong thư viện chuẩn. Bạn nên kiểm tra dự án này, nếu bạn muốn sử dụng tùy chọn R-tree: http://sourceforge.net / project / jsi / .
R-tree cho phép bạn lập chỉ mục các hình chữ nhật (hộp giới hạn của các đa giác trong trường hợp này). Vì vậy, bạn có thể tìm thấy một số lượng nhỏ đa giác ứng viên rất nhanh bằng cách sử dụng R-tree. Sau đó, bạn có thể lặp lại danh sách ứng viên để nhận được kết quả cuối cùng.