Ich habe eine OpenLayers 3 Karte erstellt. Ich liebe es, aber ich fühle, dass das Zoomen zu schnell ist. Ich kann keinen Weg finden, es zu verlangsamen. Eine längere Animationsdauer und/oder ein fraktionierter Zoom-Ansatz (Zoomen um weniger als 1 für jedes Ereignis) würde helfen. Wie kann ich diese Änderungen umsetzen?Wie kann ich das Zoomen in OpenLayers 3 verlangsamen?
0
A
Antwort
1
können Sie passen die duration
Eigenschaft auf ol.control.Zoom
, ol.interaction.MouseWheelZoom
, ol.interaction.DoubleClickZoom
und ol.interaction.KeyboardZoom
:
var duration = 1000; // 1 second
map.addControl(new ol.control.Zoom({
duration: duration
}));
map.addInteraction(new ol.interaction.MouseWheelZoom({
duration: duration
}));
map.addInteraction(new ol.interaction.DoubleClickZoom({
duration: duration
}));
map.addInteraction(new ol.interaction.KeyboardZoom({
duration: duration
}));
Dank! Das funktioniert gut, wenn Sie eine Ebene nach der anderen zoomen, aber es wird sehr abgehackt, wenn Sie schnell durch ein paar Ebenen zoomen. – sbleon
Sie können Ihr 'ol.View' auch mit einem anderen' zoomFactor' konfigurieren. Der Standardwert ist 2. Mit einem Faktor von 1,5 erhalten Sie doppelt so viele Zoomschritte, was zu einem langsameren Zoomen führt. – ahocevar
@sbleon Haben Sie '@ ahocevar' versucht? –