Как у меня может быть гладкое анимированное перемещение между 2 местами Google Maps?

При нажатии от одного маркера до другого в Google Maps экран карты анимирует перемещение гладко, если обоими маркерами является в них начальное представление карты, но переходы, если один из маркеров от экрана.

Я пытаюсь настроить карту, которая имеет несколько местоположений в основной области карты, но имеет ту, которая является 'от экрана'. У меня есть значок указателя к более удаленному местоположению в начальной области карты, которую я хочу гладко прокрутить к от расположения на экране при нажатии (чтобы дать лучший смысл, он - относительное местоположение). Я ничего не могу найти в API Карт, который позволил бы мне сделать это как бы то ни было.

Я мог уменьшить масштаб, переместиться и затем увеличить масштаб снова, но это выглядит немного резким. Я пропускаю что-то в API, или у кого-либо есть какие-либо предложения?

25
задан pelms 21 January 2010 в 10:16
поделиться

2 ответа

К сожалению, я Не думайте, что это возможно (без изменения от Google). Из ссылки на API V3 Panto Panto :

меняет центр карты до данного LATLNG. Если изменение меньше, чем ширина, так и высота карты, переход будет плавно анимирован.

, который подразумевает, что если это изменение не меньше размеров карты, переход не будет плавно анимирован. Другие методы Pan аналогичны.

Вы можете попробовать переехать на несколько шагов, но это немного взлома, и я подозреваю, что результат будет бедным.

Извините, это не очень полезно (у меня такая же проблема).

29
ответ дан 28 November 2019 в 21:11
поделиться

Если вы используете Gmaps API V2, то вы можете реализовать плавное анимированное перемещение очень легко с помощью метода panBy(). Вы должны использовать метод fromLatLngToContainerPixel(), чтобы найти количество пикселей для панорамирования.

Вот фрагмент кода:

var newLoc = map.fromLatLngToContainerPixel(new GLatLng(lat, lng));
map.panBy(new GSize( newLoc.x, newLoc.y ));

Однако я пытаюсь сделать то же самое в maps API V3, но, к сожалению, метод fromLatLngToContainerPixel() больше не работает так, как раньше :(

1
ответ дан 28 November 2019 в 21:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: