当调用map.fitBounds()
时,是否有可能使用缓动函数来确保地图视图平滑变化?
不容易。"动画化"缩放级别/地图中心的过渡并不是很容易,而fitBounds
函数也没有提供任何选项来启用此功能。
如果您想自己实现这个功能,最好的方法是计算出最佳的中心和缩放级别,然后编写一些jQuery代码来动画化设置中心点。缩放级别的调整会比较棘手,因为它们是相当离散的变化。jQuery无法平滑地从1到3缩放,因为只有在2时才会提供瓷砖。
map.fitBounds
过渡似乎相当平滑,因此可以编写一个函数,通过一些中间的 LatLngBounds 逐步进行动画。Map 类有一个 idle
事件,它会告诉何时开始下一步。那么map.panToBounds(latLngBounds:LatLngBounds)
呢? https://developers.google.com/maps/documentation/javascript/3.exp/reference#Map