Ответ 1
Доступные уровни масштабирования
Уровень масштабирования 0 - это самый масштабируемый уровень масштабирования, и каждый целочисленный шаг в уровне масштабирования уменьшает X и Y экстенты представления и удваивает линейное разрешение.
Карты Google были построены на системе с 256x256 пиксельными плитками, где уровень масштабирования 0 был 256x256 пиксельным изображением всей земли. Плитка 256x256 для уровня масштабирования 1 увеличивает область пикселя 128x128 от уровня масштабирования 0.
Как правильно указано bkaid, доступный диапазон масштабирования зависит от того, где вы смотрите, и вида карты, которую вы используете:
- Дорожные карты - по всей видимости, приближаются к уровню 22 повсюду.
- Гибридные и спутниковые карты - максимальный уровень масштабирования зависит от местоположения. Вот некоторые примеры:
- Удаленные области Антарктиды: 13
- Пустыня Гоби: 17
- Большая часть США и Европы: 21
- "Глубокий зум": 22-23 (см. ссылка bkaid)
Обратите внимание, что эти значения относятся к Google Static Maps API, который, кажется, дает еще один уровень масштабирования, чем Javascript API. Похоже, что дополнительный уровень масштабирования, доступный для статических карт, - это просто расширенная версия изображения максимального разрешения из API Javascript.
Масштаб карты при различных уровнях масштабирования
Google Maps использует проекцию Меркатора, поэтому масштаб значительно меняется с широтой. Формула для расчета правильной шкалы на основе широты:
meters_per_pixel = 156543.03392 * Math.cos(latLng.lat() * Math.PI / 180) / Math.pow(2, zoom)
Формула от комментарий Криса Бродфут.