Leaflet: panTo() 不会在请求的坐标处居中地图

创建于 2012-08-19  ·  4评论  ·  资料来源: Leaflet/Leaflet

让我们尝试在格林威治天文台上居中和缩放地图......

  • 转到传单地图(例如 http://leaflet.cloudmade.com/ 上的那个)
  • map.setZoom(0); map.panTo(0,0); (从已知坐标/缩放级别开始)
  • map.panTo([51.4768, 0.0006])以格林威治天文台的地图为中心(理论上)
  • map.setZoom(16)放大
  • 注意地图离天文台很远。 事实上,我们在它以北约 10 英里处

这由map.getCenter().toString() => LatLng(51.61802, 0)证实

最有用的评论

抱歉,在这里发表评论,但这似乎是对我所看到的非常准确的描述。

我做了这个 jsbin: https ://jsbin.com/putezoyido/edit

当您单击“转到新位置”时,我们会调用

map.panTo([41.142937, -8.534538]);

然而, moveend被触发,如果我们检查地图的中心,我们会得到

41.14293584388727
-8.534536957740785

这是预期的还是错误的?

所有4条评论

#426 的重复。 panTo工作正常,问题在于它在缩放 0 上平移并四舍五入到像素,然后缩放 16 个缩放级别。 所以这是一个舍入问题。

抱歉,在这里发表评论,但这似乎是对我所看到的非常准确的描述。

我做了这个 jsbin: https ://jsbin.com/putezoyido/edit

当您单击“转到新位置”时,我们会调用

map.panTo([41.142937, -8.534538]);

然而, moveend被触发,如果我们检查地图的中心,我们会得到

41.14293584388727
-8.534536957740785

这是预期的还是错误的?

那么有什么解决办法呢? :S 我正在尝试平移,但它在我给它的坐标附近没有平移我.. 一直试图找到最后一个小时的解决方案,但没有一个有效。 为什么 panTo 不能像它应该的那样工作?

@chrillewoodz ,很

不要评论旧的和已关闭的票证,如果您_真的_确定这是 Leaflet 中的错误,请打开一个新问题。

请提供有效的错误报告,尤其是问题模板中要求的所有信息(在您创建新问题时提供),以便我们进行有效调查。

此页面是否有帮助?
0 / 5 - 0 等级