решение проблемы: найти в радиусе d все обьекты, заданные координатам (широтой и долготой)
PostgreSQL и его Geo-модуль могут быстро (используя индекс по полю с координатами) определить, попадает ли точка в заданный многоугольник.
Для простоты используем первое приближение: многоугольник - это описанный около окружности на сфере квадрат со сторонами - параллелями и меридианами.
Нужно найти координаты сторон квадрата.
Идем по азимуту ноль (на север) из исходной точки.
долгота не изменится, широта будет
:
если бы мы шли на юг -
далее идем либо на восток (азимут +90 градусов) либо на запад (азимут -90 градусов):
широта углов "квадрата" будет
долгота углов "квадрата" будет
покритикуйте и по возможности исправьте схему.
самое главное условие: чобы в этот квадрат попадали ВСЕ точки указанной окружности