【问题标题】:Leaflet convert meters to pixels传单将米转换为像素
【发布时间】:2021-02-08 01:06:15
【问题描述】:

我正在使用传单创建应用程序

我已经启动并运行了传单地图,并且有一个 Geoserver 服务可以返回地图上显示的点。

我有一个附加字段,即我在地图上的点之间的距离,以米为单位?

我的问题是如何将其转换为像素?是否有任何传单功能或任何东西?

【问题讨论】:

    标签: leaflet leaflet.draw


    【解决方案1】:

    您可以将此函数与L.GeometryUtil 库一起使用。

    L.GeometryUtil CDN

    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)
    }
    

    但想想每次缩放时像素距离都在变化

    【讨论】:

    • 非常感谢您的回答 :) 当缩放发生变化时我有什么办法可以处理?
    • 收听zoomend 事件:map.on('zoomend',function recalcDistance(){ //... your code with the disToPixeldistance() call })。如果可行,请接受答案
    • 明天会检查,已接受,谢谢您的回答
    猜你喜欢
    • 2017-11-20
    • 2015-08-22
    • 1970-01-01
    • 2023-02-04
    • 2023-01-31
    • 2014-10-12
    • 1970-01-01
    • 2018-04-10
    • 1970-01-01
    相关资源
    最近更新 更多