【问题标题】:Leaflet polyline performance issue传单折线性能问题
【发布时间】:2017-02-03 20:15:07
【问题描述】:

我目前正在使用 Leaflet 1.0.3,这是我的问题。 我的地图上显示了很多 GPS 位置。

我有一个for 循环,我在每个位置创建一个圆形标记:

var position = new L.latLng(lat, lng);
coordinates.push(position);

L.circle([lat, lng], 50, {
    color: 'red',
    fillColor: '#f03',
    fillOpacity: 0.5
    }).addTo(map).bindPopup(date.replace('T',' '));

千位,没有性能问题,速度很快。 但是当我像这样在两个圆圈之间使用折线进入同一个循环时:

var polyline = new L.Polyline(coordinates, {
    color: 'red',
    weight: 3,
    opacity: 0.5,
    smoothFactor: 5
    });
polyline.addTo(map);

性能下降,而且真的很慢。主要的问题是,有时时间范围之间没有位置,所以我需要画一条折线来更直观,而且没有间隙。

有什么办法可以解决这个问题吗?谢谢!

【问题讨论】:

    标签: javascript leaflet


    【解决方案1】:

    绘制折线不应在循环中,而应在循环之后。我理解这个问题的方式是,您在展开时一次又一次地绘制折线。

    如果你想在循环中使用它,你必须只在(数组的)最后两个位置之间绘制。

    【讨论】:

    • 感谢您的及时回复,我不知道为什么我以前没有这样做过...祝您有美好的一天,再次感谢!
    猜你喜欢
    • 2014-07-19
    • 1970-01-01
    • 2016-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-24
    • 1970-01-01
    • 2020-06-08
    相关资源
    最近更新 更多