Маркеры пределов в Google Maps API V3 - PullRequest
0 голосов
/ 10 февраля 2012

У меня есть много маркеров в моей базе данных, и я хотел бы отображать на карте только маркеры между границами карты.

ЕСЛИ я перетаскиваю карту или изменяю уровень масштабирования, я хотел бы показывать только ограниченные маркеры по SQL.

Кто-нибудь знает, как я могу это сделать? Как я могу выполнить команду SQL?

примечание: я не хочу группировать маркеры по регионам.

1 Ответ

0 голосов
/ 11 февраля 2012

Эта статья о создании локатора магазина дает хорошее представление о том, как делать SQL. Это базовая формула Haversine для вычисления расстояния на земном шаре. Статья содержит версию SQL этого. На стороне JavaScript вы должны использовать map.getCenter() и map.getBounds(), чтобы выяснить, где находятся центр и границы карты, чтобы вы могли рассчитать расстояние.

Другой подход, если вы храните широту и долготу раздельно, вы просто получаете границы карты, что даст вам юго-западный и северо-восточный ограничивающие углы. Тогда вы можете получить все, где широта находится между двумя широтами, а долгота - между двумя долготами границ.

...