【发布时间】:2017-10-20 08:05:57
【问题描述】:
我正在开发 google maps 和 openlayers 4 之间的集成。我的工作基于this example from documentation for openlayers 3。
我的问题是 change:resolution 事件的 ol 3 和 ol 4.4.2 之间的某处行为已更改。以前这段代码
view.on('change:resolution', () => {
console.log(view.getZoom())
})
每次鼠标滚轮旋转仅调用一次并记录(例如):
5
现在它产生了这样的东西:
4.017277252772164
4.08563754449778
4.152661471658049
4.522609511830051
4.691606503462093
4.793368457643155
4.891103916717288
4.980192777999678
4.999621855713164
5
因此,当我尝试在 google map 和 openlayers 之间同步缩放时(如示例中所示),它会导致 google map 在每次缩放时闪烁。谷歌地图似乎不支持缩放的小数值。
我可以将 openlayer 缩放值限制为整数还是做一些变通?
我在调用 googleMap.setZoom 时尝试使用 openlayers 缩放的 ceil/floor 值,但因为缩放还涉及中心位置的变化,它会导致生涩、不愉快的行为。
【问题讨论】: