Javascript 在传单中的移动标记后面绘制多段线

Javascript 在传单中的移动标记后面绘制多段线,javascript,html,css,leaflet,Javascript,Html,Css,Leaflet,我有一个问题,我正在使用传单,每2秒有一个GPS坐标,与地图上的移动物体有关,我成功地根据GPS坐标每2秒创建一个移动标记,但我没有在标记后面绘制多段线 你知道吗?谢谢 var redraw = function(p3DMessage){ lat = parseFloat(p3DMessage.lat); lng = parseFloat(p3DMessage.lon); console.log(lat)

我有一个问题,我正在使用传单,每2秒有一个GPS坐标,与地图上的移动物体有关,我成功地根据GPS坐标每2秒创建一个移动标记,但我没有在标记后面绘制多段线

你知道吗?谢谢

     var redraw = function(p3DMessage){

            lat = parseFloat(p3DMessage.lat);
            lng = parseFloat(p3DMessage.lon);
            console.log(lat)
            console.log(lng)


            if (theMarker != undefined) {
                  mymap.removeLayer(theMarker);
            };


            var polylinePoints = [[lat, lng]];

            //failed to draw polyline...
            //L.polyline([[lat, lng]]).addTo(mymap);      

            theMarker = L.marker([lat,lng]).addTo(mymap);  
        };
用于向现有多段线添加点

因此,构建地图,添加一条多段线,并在绘图函数的每个刻度处添加一个点。请注意,您还可以重用标记。差不多

var map = L.map(document.getElementById('map')).setView([48.8583736, 2.2922926], 15);

L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);

var marker = null;
var line = L.polyline([]).addTo(map);

function redraw (p3DMessage) {
    var lat = parseFloat(p3DMessage.lat),
        lng = parseFloat(p3DMessage.lon),
        point = {lat: lat, lng: lng};

    if (!marker) {
        marker = L.marker(point).addTo(map)
    }

    line.addLatLng(point);
    marker.setLatLng(point);
}


非常感谢您的帮助,我现在有了这个想法,但是我只有一个问题,因为我没有出发坐标(在您的示例中是p0),当程序开始时,我得到了第一个坐标,从中我画出了界限。所以我必须在重画函数中重新初始化标记和多段线?谢谢你advanced@bluewonder可以从空多段线和空标记开始。我已经修改了我的答案以显示可能的实现。谢谢你的帮助。我将查看并更改我的代码。