Javascript 使用传单地图上比例尺的值

Javascript 使用传单地图上比例尺的值,javascript,leaflet,Javascript,Leaflet,如何使用以下方法从添加的比例尺中获取值: L.control.scale({position:'bottomleft'}).addTo(map); 无论显示什么比例,如何将其分配给JavaScript中的变量?如果我理解正确,您希望能够检索传单比例控件上显示的值,以便可以在其他地方(通过JavaScript页面)重复使用它 最可能的情况是,您需要将屏幕上的已知像素距离转换为表示给定纬度上的地理距离 您可以轻松实现这一点,而无需使用:您可以使用,通常是(对于由已知像素距离分隔的2个点)和(在找到

如何使用以下方法从添加的比例尺中获取值:

L.control.scale({position:'bottomleft'}).addTo(map);

无论显示什么比例,如何将其分配给JavaScript中的变量?

如果我理解正确,您希望能够检索传单比例控件上显示的值,以便可以在其他地方(通过JavaScript页面)重复使用它

最可能的情况是,您需要将屏幕上的已知像素距离转换为表示给定纬度上的地理距离

您可以轻松实现这一点,而无需使用:您可以使用,通常是(对于由已知像素距离分隔的2个点)和(在找到的2个板条坐标之间)的序列,如传单比例控制的内部方法中所做和实现的:

\u更新:函数(){
var map=此。_map,
y=map.getSize().y/2;
var最大值=映射距离(
map.containerPointToLatLng([0,y]),
map.containerPointToLatLng([this.options.maxWidth,y]);
这是最新的销售额(最大值);
}
实例:

var-map=L.map('map').setView([48.86,2.35],11);
map.on('moveend',computeScale);//缩放更改时也会激发。
计算尺度();
函数computeScale(){
var mapZoom=map.getZoom(),
纬度=GetContainerMighttlatude(),
距离=像素测量距离(100).toFixed(2);
警觉的(
“在缩放时”+贴图缩放
+“和纬度”+纬度
+,100像素表示大约“+距离+”米”
);
}
函数像素距离(像素距离){
var containerMidHeight=map.getSize().y/2,
point1=map.containerPointToLatLng([0,ContainerHearth]),
point2=map.containerPointToLatLng([pixelsDistance,ContainerHight]);
返回点1.距离(点2);
}
函数getContainerMiddheightlatude(){
var containerMidHeight=map.getSize().y/2,
point=map.containerPointToLatLng([0,ContainerHight]);
返回点。横向固定(6);
}
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'{
属性:“©;贡献者”
}).addTo(地图)


第二个是我们正在寻找的,谢谢您的精彩,谢谢您的反馈!请注意,感谢别人的方式也是接受回答你问题的帖子。一旦你有了足够的声誉,你也将有能力提升投票权。即使解析后无法作为浮点处理,event.distance*2显示为NaN,我如何在javascript
pixels
distance
中的每个位置分配值都是上述代码段中的字符串。如果您需要进一步的帮助,您可以通过打开一个新问题将其转换为float。谢谢您的快速回复,先生,parseFload(event.distance)给出了错误NaN,我如何使用该号码。在这里提问仅仅是因为,如何使用这个数字也是一个问题