Javascript 传单测量转换的精确性
导致 {拉丁美洲:40.686886382151116,液化天然气:-73.90228271484375} 不舒适度似乎过高,尤其是经度Javascript 传单测量转换的精确性,javascript,leaflet,Javascript,Leaflet,导致 {拉丁美洲:40.686886382151116,液化天然气:-73.90228271484375} 不舒适度似乎过高,尤其是经度 map.layerPointToLatLng(map.latLngToLayerPoint(L.latLng(40.687, -73.9035))) 导致 九, 导致 {x:1335,y:430} 有没有提高精确度的方法?如果我理解正确,请首先将板条转换为当前地图视图上的像素位置(缩放9,无论视图端口尺寸如何) 然后将该像素位置转换回LatLng,并注意到与
map.layerPointToLatLng(map.latLngToLayerPoint(L.latLng(40.687, -73.9035)))
导致
九,
导致
{x:1335,y:430}
有没有提高精确度的方法?如果我理解正确,请首先将板条转换为当前地图视图上的像素位置(缩放9,无论视图端口尺寸如何) 然后将该像素位置转换回LatLng,并注意到与原始LatLng的差异 在我看来,你只是观察了像素舍入的效果:它会给你整数像素坐标,因此你的精度不会比一个像素覆盖的实际距离更好 在zoom 9和纽约纬度(40.687),86px的刻度约为20公里,因此每像素约为230米 您报告的两个板条坐标之间的距离约为103m。因此,它很好地位于单个像素内 现场演示:(结果在控制台中打印) 您可以使用“地图缩放”来查看精度的提高,因为每个像素将覆盖更小的距离(实际上是面积)
map.getZoom()
map.getSize()