Общая постановка задачи:
Дизайн механизма выбора формы на холсте
Дано:
Произвольные выпуклые формы на 2D-плоскости.(скажем, отправлено std :: vector , IShape имеет член getBBox ())
Вопрос:
Найти и вернуть коллекцию / подмножествоформы, которые находятся в данной прямоугольной области.
(в этом конкретном примере должны возвращаться формы A и B)
Я знаю эту типичную проблему range-seach / range-query, однако «классические» примеры относятся кпоиск точек в данном регионе, чтобы проиллюстрировать, как kdtree можно использовать для решения проблемы.
Я не могу понять, как «расширить» алгоритм для работы с фигурами.Я больше ищу идею, а не точную реализацию.
(я не рассматриваю тривиальное зацикливание для каждой фигуры, чтобы увидеть, находится ли данная область или нет)