Как добавить базовую карту с максимальным и минимальным масштабом HereMaps JS Api

Я только начал использовать HereMaps и свое приключение по смешиванию JavaScript и Typescript с Angular. Мои карты отображаются правильно с другими настройками, но я не могу установить максимальный и минимальный уровень масштабирования. Я читал, что могу установить максимальный и минимальный уровни слоя, но где свойства для установки максимального и минимального масштаба карты?

let defaultLayers = this.platform.createDefaultLayers();
let map = new H.Map(
    this.mapElement.nativeElement,
    defaultLayers.vector.normal.map,
    {
        zoom: 10,
        center: { lat: this.lat, lng: this.lng },
        renderBaseBackground: {lower: 2, higher: 2}
    }
);
map.getViewModel().setLookAtData({
    tilt: 30
});        
var behavior = new H.mapevents.Behavior(new H.mapevents.MapEvents(map));
var ui = H.ui.UI.createDefault(map, defaultLayers);
map.addLayer(new H.map.layer.Layer({
    min: 3,
    max: 7
}));

Любые идеи о том, как установить его?


person Adriano    schedule 18.10.2020    source источник


Ответы (1)


Вы можете добиться этого (например, с 8-кратного увеличения до 10-кратного увеличения) с помощью этого кода этот код:

map.getBaseLayer()
    .setMin(8)
    .setMax(10);

or

map.addEventListener("mapviewchange", e => {
    if (!e.oldValue.lookAt) return;
  let newZoom = e.newValue.lookAt.zoom;
    //console.log("zoom:", e.modifiers, e.oldValue, e.newValue);
  if(newZoom > 10){
    map.setZoom(10);
  }
  if(newZoom < 8){
    map.setZoom(8);
  }

});
person HERE Developer Support    schedule 25.11.2020