他们有没有办法获得折线的经纬度?

var firstpolyline = new L.Polyline(pointList, {
    color: 'black',
    opacity: 5,
    smoothFactor: 1,
    weight: 3,
})

map.addLayer(firstpolyline);
firstpolyline.getLatLng();


此处firstpolyline给出了“ getLatLng()不是函数”的错误。我想检查折线是否在地图范围内或不这样

var bounds = map.getBounds();
if(bounds.contains(firstpolyline.getLatLng())){
    ......
}

最佳答案

您必须使用getLatLngs()函数。所以试试这个:

var firstpolyline = new L.Polyline(pointList, {
    color: 'black',
    opacity: 5,
    smoothFactor: 1,
    weight: 3,
})
map.addLayer(firstpolyline);
var arrayOfPoints = firstpolyline.getLatLngs();


然后,您可以轻松地对点数组进行迭代并获得纬度和对数,或者检查点是否在多边形的边界内。

for(var i=0; i < arrayOfPoints.length; i++) {
    if(map.getBounds().contains(arrayOfPoints[i])) {
        console.log('is in bounds');
    };
}

关于javascript - 折线的经度和纬度:传单,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43090266/

10-11 06:46