Не знаю как правильно сформулировать вопрос, поэтому изображение должно помочь понять суть вопроса.
Опишу функционал который я хочу реализовать.
Дана прямоугольная карта размерами M на N. Поделенная на прямоугольные области. Об этих прямоугольниках известно все. Координаты точек, центр и т.д.
Так же дана окружность. Известен ее центр и радиус.
Необходимо рассчитать исходя из этих данных на какие области карты попадает окружность.
В результате расчетов исходя из рисунка должно получатся следующее.
Локальное событие затронет области 1, 2, 6, 7.
Глобальное событие затронет все области кроме 1 и 6.
Зачем это нужно.
Как можно понять из рисунка речь идет о событие которое должны узнать все объекты находящиеся в радиусе его действия. При этом объекты могут находится в разных областях и чтобы не проверять все подряд нужно сократить количество объектов узнав хотя бы области которые нужно проверять.
P.S. Посоветуйте толковые книги о математике необходимой для 2D игр.