Установка уровня масштабирования автоматически на карте Google в Android - PullRequest
2 голосов
/ 25 апреля 2011

Привет Я использую карту Google в Android. Где я рисую линию между двумя GeoPoints. Мне нужно динамически устанавливать уровень масштабирования при увеличении или уменьшении расстояния между двумя точками.

Жду вашего ответа

Ответы [ 2 ]

3 голосов
/ 22 марта 2014

Я нашел подобное решение.Вы можете использовать CameraUpdateFactory.newLatLngBounds(LatLngBounds bounds, int padding)

Вот пример:

Builder boundsBuilder = LatLngBounds.builder();
ArrayList<LatLng> decodedPoints = (ArrayList<LatLng>) PolyUtil.decode(step);
for (LatLng point : decodedPoints) {
    boundsBuilder.include(point);
}
LatLngBounds bounds = boundsBuilder.build();
CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(bounds, 10);
map.moveCamera(cameraUpdate);
3 голосов
/ 26 апреля 2011

Используйте zoomToSpan() на MapController. Вычислить промежуток на основе расстояния между вашими точками. Если ваши точки не отцентрированы, либо примите это во внимание (увеличив желаемый промежуток), либо заново отцентрируйте карту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...