Я використовую fitBounds () для встановлення рівня масштабування на моїй карті, включаючи всі маркери, що відображаються на даний момент. Однак, коли у мене видно лише один маркер, рівень масштабування становить 100% (... який рівень масштабування 20, я думаю ...). Однак я не хочу, щоб воно було настільки масштабованим, щоб користувач міг регулювати положення маркера без зменшення масштабу.
У мене є такий код:
var marker = this.map.createMarker(view.latlng, this.markerNumber);
this.map.bounds.extend(view.latlng);
this.map.map.setCenter(this.map.bounds.getCenter());
this.map.map.fitBounds(this.map.bounds);
if (this.markerNumber === 1) {
this.map.map.setZoom(16);
}
this.markerNumber++;
де this.map.bounds раніше визначався як:
this.map.bounds = new google.maps.LatLngBounds();
Однак у мене проблема полягає в тому, що рядок this.map.map.setZoom(16);
не працює, якщо я використовую this.map.map.fitBounds(this.map.bounds);
, однак, я знаю, що рядок коду правильний, тому що коли я коментую рядок fitBound (), setZoom () магічно починає функціонувати.
Будь-які ідеї, як я можу це вирішити? Я думаю встановити рівень maxZoom як альтернативу, якщо мені не вдається це зробити.