2013-02-05 3 views
18

Я использую Google Maps v2 в своем приложении. Когда пользователь нажимает или увеличивает масштаб экрана, я хотел бы получить область карты, на основе которой я хочу получить POI только в части экрана.
Я просмотрел документацию, но не нашел никакой помощи.Карты Google Maps Google имеют граничные координаты

ответ

50

Для того, чтобы получить видимый регион LatLng, необходимо использовать классы Projection и VisibleRegion.
Так что ваш код будет выглядеть примерно так:

LatLngBounds curScreen = googleMap.getProjection() 
    .getVisibleRegion().latLngBounds; 
+0

я попытался это я получаю только на северо-запад и юго-запад значение. любая идея, как получить два других значения? –

+1

На северо-востоке и юго-западе вы имеете в виду? Если это так - вот как выглядит ограничивающая рамка (верхний правый и нижний левый углы окна просмотра). Учитывая эти два момента, довольно просто вычислить остальные 2 балла. Правильно? Самый простой способ проверить, находится ли определенный POI (LatLng) внутри поля, - это вызов интерфейса «LatLngBounds.contains (LatLng point)». Тем не менее, отображение большого количества маркеров на карте - это отдельная история –

+0

как я могу получить две другие точки, извините, я запутался. Ant о том, чтобы показать много маркеров, есть ли оптимизированный способ сделать это? –

Смежные вопросы