Ответ 1
Это была ошибка с API Javascript Google Maps и была разрешена Google, согласно https://issuetracker.google.com/issues/71715009
Сегодня я заметил, что самый близкий доступный уровень масштабирования спутниковых изображений был удален в определенной области (это может затронуть другие области, но я просто сосредоточен на одной области, которая определенно затронута). Два дня назад был доступен уровень 20, теперь только уровень 19.
MaxZoomService все еще говорит, что ближайший доступный масштаб в этом месте равен 20. Но когда карта находится на уровне 19, нажатие кнопки + zoom не увеличивает масштаб до уровня 20.
Есть ли причина, по которой я не могу увеличить до уровня 20, когда он говорит, что он доступен?
Некоторые теоретические объяснения (все неподтвержденные) включают:
(Я не думаю, что есть путаница с доступной глубиной для сверху вниз против Oblique, потому что оба зафиксированы до уровня 19).
Обновление:
См. живой пример: https://jsfiddle.net/3qojzt76/
<!DOCTYPE html>
<html>
<head>
<title>Simple Map</title>
<meta name="viewport" content="initial-scale=1.0">
<meta charset="utf-8">
<style>
/* Always set the map height explicitly to define the size of the div
* element that contains the map. */
#map {
height: 100%;
}
/* Optional: Makes the sample page fill the window. */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<div id="map"></div>
<script>
var map;
var latlng = {lat: 37.8768101, lng: -122.2813413}
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.SATELLITE,
tilt: 0,
center: latlng,
zoom: 19
});
var mapZoomService = new google.maps.MaxZoomService()
mapZoomService.getMaxZoomAtLatLng(latlng, function(MaxZoomResult){
if(google.maps.MaxZoomStatus.OK){
alert('map.getZoom(): '+map.getZoom()+', MaxZoomResult.zoom: ' + MaxZoomResult.zoom)
}else{
alert('Error: in google.maps.MaxZoomService().getMaxZoomAtLatLng()')
}
})
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=&callback=initMap"
async defer></script>
</body>
</html>
Это была ошибка с API Javascript Google Maps и была разрешена Google, согласно https://issuetracker.google.com/issues/71715009
Да, правда, это была ошибка раньше, теперь она работает нормально. Некоторые изменения были внесены Google. на тот момент, когда он нарушен, тот же вопрос, с которым я столкнулся, теперь разрешен. еще одна вещь, которую я заметил, когда я установил свойство карты
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.SATELLITE,
tilt: 0,
center: latlng,
zoom: 20 // look I set it 20
});
он все еще не достигает максимальной глубины. https://jsfiddle.net/Negirox/3qojzt76/8/ см. выше JSfiddle, заданный @python1981
Но когда я установил его 21, то он достигнет максимальной глубины уровня, но MaxZoomResult.zoom все еще показывает 20.
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.SATELLITE,
tilt: 0,
center: latlng,
zoom: 21 // look I set it 21
});
Исправьте меня, если я ошибаюсь.