Как плавно приближать в гугл картах

от admin

Как плавно увеличить маркер в Картах Google?

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

Увеличение только на один уровень, превышающий текущий уровень, Карты Google показывают приятный плавный переход. Таким образом, должно быть возможно плавное масштабирование для более чем одного уровня, но как?

6 ответов

Как повезло, я хотел добиться такого же эффекта в последнее время и нашел решение, которое я сделал сообщение. В принципе, просто установить тайм-аут для каждого перехода недостаточно, потому что это может легко привести к увеличению масштаба «старт-стоп», если эффект масштабирования Google еще не закончен или долго заканчивается.

Как упоминал Мартин, есть некоторые недостатки, которые я не буду повторять. Используете ли вы это в конце, это ваш выбор и во многом зависит от мощности вашего компьютера и/или браузера. Это приятный эффект, хотя и, несомненно, впечатляет некоторых, когда они используются с умом.

Мое решение было следующим:

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

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

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

Как плавно увеличить маркер в Картах Google?

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

Увеличивая только один уровень дальше текущего уровня, Google Maps показывает хороший плавный переход. Таким образом, должно быть возможно плавное увеличение для более чем одного уровня, но как?

6 ответов

По счастливой случайности, я недавно хотел добиться того же эффекта и нашел решение, которое я сделал пост о. По сути, просто установить тайм-аут для каждого перехода недостаточно, потому что это может легко привести к увеличению масштаба «старт-стоп», если эффект масштабирования Google еще не закончен или уже давно завершен.

Как отметил Мартин, в этом есть некоторые недостатки, которые я не буду повторять. Используете ли вы это в конце концов, ваш выбор, и во многом зависит от мощности процессора вашего пользователя и / или браузера. Тем не менее, это хороший эффект, который наверняка впечатлит, если использовать его с умом.

Мое решение было следующее:

В основном это сводится к тому, чтобы регулировать уровень масштабирования по одному, прослушивать событие zoom_changed , ждать 80 мс, прежде чем снова регулировать уровень масштабирования по одному, и т. Д. Что приятно, так это то, что zoom_changed Кажется, событие вызывается после плавного перехода, предоставляемого Google Maps, но до загружаются фактические изображения, поэтому он не слишком много тратит пропускную способность.

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

Читать:
Twain что это такое

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

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

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

Вместо того, чтобы использовать фиксированный период ожидания, я установил первый тайм-аут на 0, а затем последующие тайм-ауты на следующее быстрое и грязное уравнение

В коде я принял максимальное увеличение 18, но вы можете использовать maxZoom, чтобы узнать, какой уровень масштабирования для данного широты / долготы. Мой код:

Как плавно увеличивать масштаб маркера в Google Maps?

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

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

6 ответы

Как назло, я недавно хотел добиться такого же эффекта и нашел решение, которое я сделал. сообщение о. По сути, просто установить тайм-аут для каждого перехода недостаточно, потому что это может легко привести к масштабированию типа «старт-стоп», если эффект масштабирования Google еще не завершен или уже давно завершен.

Как сказал Мартин, у этого есть некоторые недостатки, которые я не буду повторять. Независимо от того, будете ли вы использовать это в конечном итоге, это ваш выбор, и он во многом зависит от мощности процессора и / или браузера ваших пользователей. Тем не менее, это хороший эффект, и при разумном использовании он обязательно впечатлит некоторых.

Мое решение было следующим:

В основном все сводится к регулировке уровня масштабирования на единицу, прислушиваясь к zoom_changed событие, ожидая 80 мс перед повторной настройкой уровня масштабирования на единицу и т. д. Что хорошо в этом, так это то, что zoom_changed кажется, что событие вызывается после плавного перехода, обеспечиваемого Google Maps, но до фактические изображения загружаются, поэтому пропускная способность не тратится слишком сильно.

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

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

Как максимально приблизить спутниковое изображение на Google Maps

Один из пользователей Reddit выложил в сеть ссылку на «убийство», которое случилось рядом с его домом и было снято спутником для Google Maps. Тут же появился рецепт как увеличить максимально картинку. Ну что кроме трупа может заставить интернетчиков искать решение проблемы ограниченного зума на картах?

Если вам нужно приблизить спутниковый снимок той или иной территории, но вы достигли ограничения ползунка, то идите в колонку слева. Там есть вот такая кнопочка для шаринга фрагмента: . В нем копируйте ссылку и замените в URL часть с z=22 на z=23 — так вы получите максимальный зум.

Похожие статьи