Vin*_*owe 9 javascript leaflet
我正在努力清除地图上的所有折线,我只清楚最新的.
var polylines;
// add map polylines
function addPolyline(polyArray, colour) {
polylines = L.polyline(polyArray, {color: colour});
polylines.addTo(map);
}
// clear polylines
function clearPolylines() {
map.removeLayer(polylines);
}
Run Code Online (Sandbox Code Playgroud)
其中addPolylines被多次调用,而clear Polylines被调用一次.如何清除地图上的所有折线?
flu*_*lup 23
你必须记住它们或者作弊并偷看map._layers才能找到它们.
编辑@Ben添加示例代码:
function clearMap() {
for(i in m._layers) {
if(m._layers[i]._path != undefined) {
try {
m.removeLayer(m._layers[i]);
}
catch(e) {
console.log("problem with " + e + m._layers[i]);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可以将折线添加到图层组中,并轻松地将其添加到地图中或从地图中删除。像这样的东西:
pLineGroup = L.layerGroup()
var latlngs = [
[45.51, -122.68],
[37.77, -122.43],
[34.04, -118.2]
];
this.pLineGroup.addLayer(L.polyline(latlngs, {color: 'red'}))
pLineGroup.addTo(map)
pLineGroup.removeFrom(map)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20585 次 |
| 最近记录: |