谷歌地图FitBounds()函数中的缓动函数

15

当调用map.fitBounds()时,是否有可能使用缓动函数来确保地图视图平滑变化?

3个回答

2

不容易。"动画化"缩放级别/地图中心的过渡并不是很容易,而fitBounds函数也没有提供任何选项来启用此功能。

如果您想自己实现这个功能,最好的方法是计算出最佳的中心和缩放级别,然后编写一些jQuery代码来动画化设置中心点。缩放级别的调整会比较棘手,因为它们是相当离散的变化。jQuery无法平滑地从1到3缩放,因为只有在2时才会提供瓷砖。


5
希望 Google 添加 map.fitBounds(bounds, speed) // 当前行为是0。 - yazanpro

1
考虑到当缩放和平移的程度不太重要时,map.fitBounds 过渡似乎相当平滑,因此可以编写一个函数,通过一些中间的 LatLngBounds 逐步进行动画。Map 类有一个 idle 事件,它会告诉何时开始下一步。

1

8
当视窗已经包含边界时,panToBounds不会起到作用。它不会将边界居中,也不会缩放以使边界适合视窗。 - Sjeiti
就像Sjeiti所说,这只是将当前视图(在当前缩放级别下)移动(平移)以包含边界框。它不会适应(缩放和居中)到边界框。 - ZephDavies

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接