Leaflet 每个缩放级别的传单米到像素
我正在使用传单库创建应用程序 我有一个字段Leaflet 每个缩放级别的传单米到像素,leaflet,Leaflet,我正在使用传单库创建应用程序 我有一个字段半径,其中包含以米(m)为单位的距离 我需要将此字段转换为像素,但缩放级别不同 对于缩放级别,我从8到18 我有这个函数,可以在当前的缩放级别上成功转换 function disToPixeldistance(distance){ var l2 = L.GeometryUtil.destination(map.getCenter(),90,distance); var p1 = map.latLngToContainerPoint(map.get
半径
,其中包含以米(m)为单位的距离
我需要将此字段转换为像素,但缩放级别不同
对于缩放级别,我从8
到18
我有这个函数,可以在当前的缩放级别上成功转换
function disToPixeldistance(distance){
var l2 = L.GeometryUtil.destination(map.getCenter(),90,distance);
var p1 = map.latLngToContainerPoint(map.getCenter())
var p2 = map.latLngToContainerPoint(l2)
return p1.distanceTo(p2)
}
但我需要传递不同的缩放级别作为附加参数,然后将它们从米转换为像素
比如:
有人知道我怎样才能做到这一点吗?提前感谢:)将
map.latlngToContainerPoint(latlng)
更改为map.project(latlng,zoom)
function disToPixeldistance(distance){
var l2 = L.GeometryUtil.destination(map.getCenter(),90,distance);
var p1 = map.latLngToContainerPoint(map.getCenter())
var p2 = map.latLngToContainerPoint(l2)
return p1.distanceTo(p2)
}
function disToPixeldistance(distance, zoomLevel)
function disToPixeldistance(distance, zoom){
zoom = zoom || map.getZoom();
var l2 = L.GeometryUtil.destination(map.getCenter(),90,distance);
var p1 = map.project(map.getCenter(), zoom)
var p2 = map.project(l2,zoom)
return p1.distanceTo(p2)
}