Google Maps API Zoom and bounds

167
20 ноября 2017, 17:33

Добрый вечер! Как сделать фичу : получаю список меток с сервера и надо что бы камера перешла к ним. Например 2 метки - Москва и Питер и камера едет так что бы эти 2 метки было видно, а зум был не на всю планету, а аккурат что бы было видно эти 2 метки. Как такое называется хотя бы?

Нашёл вот такой пример в доках:

private GoogleMap mMap; 
private LatLngBounds AUSTRALIA = new LatLngBounds(   new LatLng(-44, 113), new LatLng(-10, 154));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(AUSTRALIA.getCenter(),
     10));

Но он мне не подходит потому что там Zoom постоянно 10, а мне нужно что бы он динамически менялся в зависимости от расстояния между крайними точками, так сказать. ну или есть формула какая что бы вычислить нужный зум в зависимости от расстояния между 2х точек?

Answer 1

Нашёл решение:

private static final int PADDING_RADIUS = 180;
private void animationForAllMarkers() {
    if (latLngList != null) {
        LatLngBounds.Builder builder = new LatLngBounds.Builder();
        for (LatLng latLng : latLngList) {
            builder.include(latLng);
        }
        LatLngBounds bounds = builder.build();
        CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, PADDING_RADIUS);
        googleMap.animateCamera(cu);
    }
}
READ ALSO
Задержка перед выполнением слушателя. Android

Задержка перед выполнением слушателя. Android

Необходимо немного оптимизировать запросы в приложении Android и разгрузить процессор

167
как добавить методы в HashMap (Phone Book

как добавить методы в HashMap (Phone Book

Пишу программу Телефонная книга и не получаются следующие методыHashMap у меня состоит из класса Юзер и сета Контактов (с номерами телефонов...

159
Циклическая зависимость maven модулей!

Циклическая зависимость maven модулей!

есть несколько модулей в maven

200
.split() не делит строку

.split() не делит строку

есть строка cbr-coa-dic:Osv_Dt_A_10501$dim-int:Nacz_Inostr_Valyuta_Axis/mem-int:Nacz_Valyuta_Rf_Member ее необходимо раздеить по символу $ пробовал делить String[] soch = fsplit( "$"); но деления...

143